Gelöst Connectorprobleme 1.8

Batman777

Aktives Mitglied
17. August 2017
34
0
Hallo,

nach etlichen Stunden Recherche muss ich nun doch mal im Forum nachhacken.

Nach einem Upgrade von 1.6 nach 2.0.x.x (finale Version) will mit dem WaWi kein Abgleich mehr funktionieren.

Die letzte Fehermeldung vom WaWi ist.

###
Fehler:
Exception: DeserializeObject-Error: Newtonsoft.Json.JsonReaderException: Unexpected character encountered while parsing value: <. Path '', line 0, position 0.
bei Newtonsoft.Json.JsonTextReader.ParseValue()
bei Newtonsoft.Json.JsonTextReader.ReadInternal()
bei Newtonsoft.Json.JsonTextReader.Read()
bei Newtonsoft.Json.Serialization.JsonSerializerInternalReader.ReadForType(JsonReader reader, JsonContract contract, Boolean hasConverter)
bei Newtonsoft.Json.Serialization.JsonSerializerInternalReader.Deserialize(JsonReader reader, Type objectType, Boolean checkAdditionalContent)
bei Newtonsoft.Json.JsonSerializer.DeserializeInternal(JsonReader reader, Type objectType)
bei Newtonsoft.Json.JsonConvert.DeserializeObject(String value, Type type, JsonSerializerSettings settings)
bei Newtonsoft.Json.JsonConvert.DeserializeObject[T](String value, JsonSerializerSettings settings)
bei jtlCore.ControllerClasses. Connector.Core.Json.DeserializeObject[T](String json)

###

Keine Idee mehr was ich noch probieren könnte.
Vor dem Upgrade hat alles prima funktioniert.

Hat evtl. jmd eine Idee??
 

Rico Giesler

Offizieller Servicepartner
SPBanner
10. Mai 2017
13.243
1.508
Ist dann denn die vollständige Fehlermeldung?
Wenn ja, klingt es sehr nach einem Encoding-Problem durch UTF-8 Themes oder Hacks.
Falls noch so etwas in die Richtung in der Fehlermeldung auftaucht:
Code:
Json:Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 4096
bytes) in
phar:///mnt/XXXX/c1/XX/XXXXXX/htdocs/XXXX/jtlconnector/index.php/vendor/jtl/connector/src/jtl/C
onnector/Model/DataModel.php
on line 74

Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 32768
bytes) in
phar:///mnt/XXXX/c1/XX/XXXXXX/htdocs/XXXX/jtlconnector/index.php/vendor/composer/ClassLoader.ph
p
on line 412
Dann liegt es an zu wenig Speicher. Dies kann nur der Hoster klären.
 

Batman777

Aktives Mitglied
17. August 2017
34
0
u.a. habe ich noch folgendes vom Kunden zugesandt bekommen:

###

Abgleich-Protokoll:
Prüfe Endpointkonfiguration.
Abgleich gestartet für 'SHOPNAME'.
Empfangen: Hersteller (10 Stück)
Onlineshop-Abgleich beendet für 'SHOPNAME'.

Fehler:
Exception: category.pull hat keine Daten zurückgegeben.
Kategorien-Empfangen-Fehler: Bitte beachten Sie, dass zur Fehler-Diagnose ebenfalls die Log-Datei des Servers und das Abgleich-Log der JTL-Wawi notwendig sind!
category.pull hat keine Daten zurückgegeben.
Exception bei category.pull:

category.pull hat keine Daten zurückgegeben.

Response: <Empty>
bei jtlCore.ControllerClasses. Connector.Abgleich.Connector.vikS4xp0B25(String , Object , Boolean , NetworkCredential )

Warnungen:
Abgleich darf nicht weiterlaufen.Abgleich darf nicht weiterlaufen.

###

SOWIE

###

Abgleich-Protokoll:
Prüfe Endpointkonfiguration.
Abgleich gestartet für 'SHOPNAME'.
Gesendet: Kategorien (10 Stück)
Gesendet: GlobalData (1 Stück)
Onlineshop-Abgleich beendet für 'SHOPNAME'.


Fehler:
Exception: customer_order.pull hat keine Daten zurückgegeben.

Warnungen:
Abgleich darf nicht weiterlaufen.Abgleich darf nicht weiterlaufen.Abgleich darf nicht weiterlaufen.Abgleich darf nicht weiterlaufen.Abgleich darf nicht weiterlaufen.Abgleich darf nicht weiterlaufen.

###

Memory Size gab es keine Fehlermeldungen. Aktuell wurden alle Artikel und Kategorien aus dem OnlineShop vom Kunden komplett gelöscht.
Kurioserweise werden aber noch immer Artikel gefunden. Alle Caches mehrfach gelöscht und Browser gewechselt.
 

daniel.jtl

Moderator
12. März 2014
1.277
28
Aktuell wurden alle Artikel und Kategorien aus dem OnlineShop vom Kunden komplett gelöscht.
Kurioserweise werden aber noch immer Artikel gefunden. Alle Caches mehrfach gelöscht und Browser gewechselt.
Hier scheint aber dann ja schon ganz massiv etwas mit dem Shop an sich nicht zu stimmen? Denn wenn trotz gelöschter Artikel diese immer noch gefunden werden, hat das ja definitiv zunächst mal absolut nichts mit dem Connector zu tun...
 

Batman777

Aktives Mitglied
17. August 2017
34
0
> Denn wenn trotz gelöschter Artikel diese immer noch gefunden werden, hat das ja definitiv zunächst mal absolut nichts mit dem Connector zu tun...
Richtig.

Dennoch wollte ich mal nachfragen ob Du denn mit den übersandten Fehlermeldungen etwas anfangen kannst bzw. mich in die richtige Richtung zur löscung schupsen kannst?
Evtl. könnte ich noch die LOGS raussuchen und übersenden?
 

daniel.jtl

Moderator
12. März 2014
1.277
28
Die Fehlermeldung sagt so leider nichts aus. Da müsste man schon das Developer-Logging einschalten (siehe Anleitung) oder direkt in die Server-Logs gucken.

Nur wenn der Shop an sich schon nicht ordnungsgemäß funktioniert, macht es absolut keinen Sinn den Connector zu debuggen. Da müsste dann erstmal die Basis hundertprozentig in Ordnung gebracht werden, bevor man sich an sowas begibt...
 

Batman777

Aktives Mitglied
17. August 2017
34
0
Hallo,
wenn ich nach Rücksicherung der Datenbank eine Synchronisierung vom Online Shop zum WaWi machen steht im globalxxxx. log folgendes drin.

[2017-08-29 15:07:47] global.ERROR: (E_RECOVERABLE_ERROR) File (phar:///mnt/web211/d2/24/53471324/htdocs/jtlconnector/index.php/vendor/jtl/ connector/src/jtl/Connector/Application/Error/ErrorHandler.php, 56): Argument 1 passed to jtl\Connector\Application\Error\ErrorHandler::jtl\Connector\Application\Error\{closure}() must be an instance of Throwable, instance of jtl\Connector\Core\Exception\SessionException given [] []
[2017-08-29 15:07:47] global.ERROR: (E_RECOVERABLE_ERROR) File (phar:///mnt/web211/d2/24/53471324/htdocs/jtlconnector/index.php/vendor/jtl/connector/src/jtl/Connector/Formatter/ExceptionFormatter.php, 16): Argument 1 passed to jtl\Connector\Formatter\ExceptionFormatter::format() must be an instance of Throwable, instance of jtl\Connector\Core\Exception\SessionException given, called in phar:///mnt/web211/d2/24/53471324/htdocs/jtlconnector/index.php/vendor/jtl/connector/src/jtl/Connector/Application/Error/ErrorHandler.php on line 64 and defined [] []
[2017-08-29 15:07:47] global.ERROR: Exception 'jtl\Connector\Core\Exception\SessionException' (Code: 0) with message 'No session' in phar:///mnt/web211/d2/24/53471324/htdocs/jtlconnector/index.php/vendor/jtl/connector/src/jtl/Connector/Application/Application.php:587 [] []
[2017-08-29 15:07:53] global.NOTICE: (E_NOTICE) File (/mnt/web211/d2/24/53471324/htdocs/lang/german/modules/ shipping/dp.php, 50): Use of undefined constant MODULE_SHIPPING_DP_NUMBER_ZONES - assumed 'MODULE_SHIPPING_DP_NUMBER_ZONES' [] []
[2017-08-29 15:07:53] global.NOTICE: (E_NOTICE) File (/mnt/web211/d2/24/53471324/htdocs/lang/german/modules/shipping/ap.php, 47): Use of undefined constant MODULE_SHIPPING_AP_NUMBER_ZONES - assumed 'MODULE_SHIPPING_AP_NUMBER_ZONES' [] []
[2017-08-29 15:07:54] global.NOTICE: (E_NOTICE) File (/mnt/web211/d2/24/53471324/htdocs/lang/german/modules/shipping/dp.php, 50): Use of undefined constant MODULE_SHIPPING_DP_NUMBER_ZONES - assumed 'MODULE_SHIPPING_DP_NUMBER_ZONES' [] []
[2017-08-29 15:07:54] global.NOTICE: (E_NOTICE) File (/mnt/web211/d2/24/53471324/htdocs/lang/german/modules/shipping/ap.php, 47): Use of undefined constant MODULE_SHIPPING_AP_NUMBER_ZONES - assumed 'MODULE_SHIPPING_AP_NUMBER_ZONES' [] []
[2017-08-29 15:08:50] global.NOTICE: (E_NOTICE) File (/mnt/web211/d2/24/53471324/htdocs/lang/german/modules/shipping/dp.php, 50): Use of undefined constant MODULE_SHIPPING_DP_NUMBER_ZONES - assumed 'MODULE_SHIPPING_DP_NUMBER_ZONES' [] []
[2017-08-29 15:08:50] global.NOTICE: (E_NOTICE) File (/mnt/web211/d2/24/53471324/htdocs/lang/german/modules/shipping/ap.php, 47): Use of undefined constant MODULE_SHIPPING_AP_NUMBER_ZONES - assumed 'MODULE_SHIPPING_AP_NUMBER_ZONES' [] []
[2017-08-29 15:08:50] global.NOTICE: (E_NOTICE) File (/mnt/web211/d2/24/53471324/htdocs/lang/german/modules/shipping/dp.php, 50): Use of undefined constant MODULE_SHIPPING_DP_NUMBER_ZONES - assumed 'MODULE_SHIPPING_DP_NUMBER_ZONES' [] []
[2017-08-29 15:08:50] global.NOTICE: (E_NOTICE) File (/mnt/web211/d2/24/53471324/htdocs/lang/german/modules/shipping/ap.php, 47): Use of undefined constant MODULE_SHIPPING_AP_NUMBER_ZONES - assumed 'MODULE_SHIPPING_AP_NUMBER_ZONES' [] []
[2017-08-29 15:12:40] global.NOTICE: (E_NOTICE) File (/mnt/web211/d2/24/53471324/htdocs/lang/german/modules/shipping/dp.php, 50): Use of undefined constant MODULE_SHIPPING_DP_NUMBER_ZONES - assumed 'MODULE_SHIPPING_DP_NUMBER_ZONES' [] []
[2017-08-29 15:12:40] global.NOTICE: (E_NOTICE) File (/mnt/web211/d2/24/53471324/htdocs/lang/german/modules/shipping/ap.php, 47): Use of undefined constant MODULE_SHIPPING_AP_NUMBER_ZONES - assumed 'MODULE_SHIPPING_AP_NUMBER_ZONES' [] []
[2017-08-29 15:12:48] global.NOTICE: (E_NOTICE) File (/mnt/web211/d2/24/53471324/htdocs/lang/german/modules/shipping/dp.php, 50): Use of undefined constant MODULE_SHIPPING_DP_NUMBER_ZONES - assumed 'MODULE_SHIPPING_DP_NUMBER_ZONES' [] []
[2017-08-29 15:12:48] global.NOTICE: (E_NOTICE) File (/mnt/web211/d2/24/53471324/htdocs/lang/german/modules/shipping/ap.php, 47): Use of undefined constant MODULE_SHIPPING_AP_NUMBER_ZONES - assumed 'MODULE_SHIPPING_AP_NUMBER_ZONES' [] []
[2017-08-29 15:13:22] global.NOTICE: (E_NOTICE) File (/mnt/web211/d2/24/53471324/htdocs/lang/german/modules/shipping/dp.php, 50): Use of undefined constant MODULE_SHIPPING_DP_NUMBER_ZONES - assumed 'MODULE_SHIPPING_DP_NUMBER_ZONES' [] []
[2017-08-29 15:13:22] global.NOTICE: (E_NOTICE) File (/mnt/web211/d2/24/53471324/htdocs/lang/german/modules/shipping/ap.php, 47): Use of undefined constant MODULE_SHIPPING_AP_NUMBER_ZONES - assumed 'MODULE_SHIPPING_AP_NUMBER_ZONES' [] []
[2017-08-29 15:13:29] global.NOTICE: (E_NOTICE) File (/mnt/web211/d2/24/53471324/htdocs/lang/german/modules/shipping/dp.php, 50): Use of undefined constant MODULE_SHIPPING_DP_NUMBER_ZONES - assumed 'MODULE_SHIPPING_DP_NUMBER_ZONES' [] []
[2017-08-29 15:13:29] global.NOTICE: (E_NOTICE) File (/mnt/web211/d2/24/53471324/htdocs/lang/german/modules/shipping/ap.php, 47): Use of undefined constant MODULE_SHIPPING_AP_NUMBER_ZONES - assumed 'MODULE_SHIPPING_AP_NUMBER_ZONES' [] []
 

Batman777

Aktives Mitglied
17. August 2017
34
0
Nun habe ich die alten Bilder wieder restauriert weil die Bilder im Online Shop alle plötzlich neue Dateinamen hatten! Soweit alles gefixt aber dennoch.....
Könnte ich das an euch als Auftrag vergeben?
 

gre000

Sehr aktives Mitglied
28. Juli 2015
911
92
Moin,
bei JTL direkt leider nicht.
Warum vom Shop zur WaWi?
Welches Backup hast du wiederherstellt? 1.60 oder 2.0?
Hast du noch ein Backup von vor dem Upgrade auf 2.0? Shop & WaWi

Hast du im modified externe Module eingebaut?

Gruß Marco
 

Batman777

Aktives Mitglied
17. August 2017
34
0
Gmoin :),

> Warum vom Shop zur WaWi?
Ich habe den Kunden via Fernwartung immer vom WaWi zum Shop machen lassen.

> Welches Backup hast du wiederherstellt? 1.60 oder 2.0?
2.0.3.0 er und WaWi Backup vor ersten Synchronisation mit neuem Shop.

> Hast du noch ein Backup von vor dem Upgrade auf 2.0? Shop & WaWi
Logisch :) .. 1.6er liegt auf dem Server in einem Unterordner drin. Auch das Wawi könnte gerollbackt werden.
Allerdings scheitert es wahrscheinlich am Passwort des Connectors das eingegeben werden muss bei der WaWi.
Dieses Passwort musste ich für den 1.8er Connector überschreiben. Das hat der Kunde nicht mehr!
Aber eine Rückführung auf 1.6 ist eigentlich nicht das Ziel nachdem der Shop komplett hochgehieft auf 2.0.3.0

> Hast du im modified externe Module eingebaut?
Ampelsystem ist neu. Aber das ist eigentlich nicht der Rede wert.
https://www.modified-shop.org/forum/index.php?topic=37371
Das nächste wäre jetzt wieder mal einen Abglich zu starten.
Evtl. werde ich den Connector erneut installieren.
Aber ich befürchte ich werde wieder mit Errors überhäuft!
 

Batman777

Aktives Mitglied
17. August 2017
34
0
So dalla ..nach einer längeren Verschnaufpause und ein paar Tagen Urlaub und dem Einschalten eines JTL-Vertrieblers konnten wir das Problem innerhalb 30 Minuten lösen!
Da ich nicht viel von Try-und-Error halte wäre ich nie und nimmer darauf gekommen das ich auf diesen Button drücken muss -> Siehe Screenshot.
Denn laut Beschreibung macht er komplett was anderes was er dann in der Praxis gemacht hat. Nämlich die Daten vom WAWI in den (zuvor von allen Artikeln und Kategorien geleerten) Shop
hochgeladen. Stehe ich wirklich so extrem auf dem Schlauch oder ist es tatsächlich eigentlich falsch?
 

Anhänge

  • Screenshot_7.jpg
    Screenshot_7.jpg
    69,7 KB · Aufrufe: 53

daniel.jtl

Moderator
12. März 2014
1.277
28
Der Button sollte immer die letzte Lösung sein.
Dadurch werden die Link-Tabellen des Connectors geleert bzw. die Relationen aller Datensätze. Der Connector weiß dadurch anschließend nicht mehr welcher Wawi-Datensatz zu welchem Shop-Datensatz gehört.
Es wird dadurch wieder die Situation hergestellt bevor jemals ein Connector angeschlossen wurde.
Daher sollte das nur im Notfall durchgeführt werden, und auch nur wenn man eine der beiden Seiten leeren kann und Backups hat.
 

Batman777

Aktives Mitglied
17. August 2017
34
0
Das dachte ich mir schon das dies die letzte Lösung wäre. Nur wenn ich bei mir immer bei der gleichen Ausgangsbasis unterschiedliche Ergebnisse bekam war dies für mich definitiv der letzte Weg.
Was meinst Du zu meiner Frage bzgl. der Beschreibung des Buttons. Diese ist doch verkehrt?
 

daniel.jtl

Moderator
12. März 2014
1.277
28
Naja, "verkehrt" ist es ja nicht. Ich gebe dir aber Recht dass die Beschreibung nicht vollständig ist, da das ganze eben in beide Richtungen funktioniert.
Daten aus dem Shop werden importiert, parallel werden aber auch die Daten aus der Wawi in den Shop gesendet (sofern denn beides in den Einstellungen auch aktiv ist).
Genau aus dem Grund sollte man das ja auch nur dann machen wenn eine der beiden Seiten leer ist, da man nach dem Zurücksetzen der Relationen sonst unzählige Duplikate in beiden Systemen haben kann.