Neu Connector Überarbeitung für PHP8.0

svenyo

Gut bekanntes Mitglied
18. Februar 2016
111
3
Ich versuche gerade übergangsweise den Connector für modified PHP8.0 tauglich zu bekommen. Getestet wurden bislang normale Produkte sowie Kategorien. Diese werden bereits übertragen, aktualisiert und auch gelöscht. Sobald jedoch etwas gelöscht wurde, wird weder das gleiche Produkt/Kategorie noch irgendwelche neuen Produkte/Kategorien in den Shop geladen bzw. aktualisiert.
Beim Connectorabgleich kommt untenstehende Fehlermeldung.
In den Modulen Identity.php bzw. MySql.php habe ich schon nachgeschaut, konnte aber keinen Fehler finden. Sobald ich in meiner Xampp-Testumgebung einmal die PHP-Version auf 7.45 zurückstelle und einen Abgleich vornehme funktioniert alles problemlos. Auch wenn ich nun die PHP Version wieder auf 8.0.25 hochstelle funktioniert der Abgleich tadellos - Aber nur solange bis einmal etwas gelöscht wird?!

Weiß jemand einen Rat?



Abgleich-Protokoll:
Bitte beachten Sie, dass JTL-Wawi federführend ist!
Im Shop-Backend vorgenommene Änderungen können nicht mehr automatisiert abgeglichen werden und führen somit zu Datenverlust.
Prüfe Endpointkonfiguration.
Abgleich gestartet für 'TestXampp2060'.
Onlineshop-Abgleich beendet für 'TestXampp2060'.


Fehler:
Exception: strlen(): Argument #1 ($string) must be of type string, jtl\Connector\Model\Identity given
strlen(): Argument #1 ($string) must be of type string, jtl\Connector\Model\Identity given
Kategorien-Senden-Fehler: Bitte beachten Sie, dass zur Fehler-Diagnose ebenfalls die Log-Datei des Servers und das Abgleich-Log der JTL-Wawi notwendig sind!
Exception bei category.push: strlen(): Argument #1 ($string) must be of type string, jtl\Connector\Model\Identity given

strlen(): Argument #1 ($string) must be of type string, jtl\Connector\Model\Identity given

Response: {"result":null,"error":{"code":0,"message":"strlen(): Argument #1 ($string) must be of type string, jtl\\Connector\\Model\\Identity given","data":"Exception 'TypeError' (Code: 0) with message 'strlen(): Argument #1 ($string) must be of type string, jtl\\Connector\\Model\\Identity given' in C:\\xampp\\htdocs\\mod2060\\jtlconnector\\vendor\\jtl\\connector\\src\\Core\\Database\\Mysql.php:567"},"jtlrpc":"2.0","id":"unknown"}
Exception bei category.push: strlen(): Argument #1 ($string) must be of type string, jtl\Connector\Model\Identity given

strlen(): Argument #1 ($string) must be of type string, jtl\Connector\Model\Identity given

Response: {"result":null,"error":{"code":0,"message":"strlen(): Argument #1 ($string) must be of type string, jtl\\Connector\\Model\\Identity given","data":"Exception 'TypeError' (Code: 0) with message 'strlen(): Argument #1 ($string) must be of type string, jtl\\Connector\\Model\\Identity given' in C:\\xampp\\htdocs\\mod2060\\jtlconnector\\vendor\\jtl\\connector\\src\\Core\\Database\\Mysql.php:567"},"jtlrpc":"2.0","id":"unknown"}
bei jtlCore.ControllerClasses.Connector.Abgleich.Connector.TfkZCNi6gkN(String , Object , Boolean , NetworkCredential )
bei jtlCore.ControllerClasses.Connector.Abgleich.Connector.bxuZCvBQsrt(String , Object , Boolean , NetworkCredential )
bei jtlCore.ControllerClasses.Connector.Abgleich.Connector.TfkZCNi6gkN(String , Object , Boolean , NetworkCredential )
 

svenyo

Gut bekanntes Mitglied
18. Februar 2016
111
3
Also soweit es meine begrenzten PHP-Fähigkeiten zulassen liegt es anscheinend
anfolgendem Ausdruck in der Datei \\jtlconnector\\vendor\\jtl\\ connector\\src\\Core\\Database\\Mysql.php (Zeile 567):

if ((is_array($key) && is_array($value)) || (strlen($key) > 0 && strlen($value) > 0)) {

Wenn ich es richtig verstanden habe wird diese Variable als Objekt gespeichert, soll aber als String gespeichert werden.
 
Zuletzt bearbeitet:

svenyo

Gut bekanntes Mitglied
18. Februar 2016
111
3
Ich habe jetzt testweise in der Datei \\jtlconnector\\vendor\\jtl\\ connector\\src\\Core\\Database\\Mysql.php die Zeile 567 abgeändert von:

PHP-Code:
if ((is_array($key) && is_array($value)) || (strlen($key) > 0 && strlen($value) > 0)) {
zu

PHP-Code:
if ((is_array($key) && is_array($value))) {
Nun erscheint keine Fehlermeldung mehr und alles funktioniert. Kann mir jemand sagen wofür der gelöschte Teil

PHP-Code:
(strlen($key) > 0 && strlen($value) > 0)
eigentlich gedacht sein könnte? Da unter PHP7.4 dieser ja nicht stört.

Jetzt habe ich allerdings das Problem, dass Artikel bzw. Varkombis nicht mehr gelöscht werden können, da sonst diese Fehlermeldung erscheint:

Exception: Attempt to assign property "deleteUnusedVariations" on null
Attempt to assign property "deleteUnusedVariations" on null
Artikel-Löschen-Fehler: Bitte beachten Sie, dass zur Fehler-Diagnose ebenfalls die Log-Datei des Servers und das Abgleich-Log der JTL-Wawi notwendig sind!
Exception bei product.delete: Attempt to assign property "deleteUnusedVariations" on null

Attempt to assign property "deleteUnusedVariations" on null

Response: {"result":null,"error":{"code":0,"message":"Attempt to assign property \"deleteUnusedVariations\" on null","data":"Exception 'Error' (Code: 0) with message 'Attempt to assign property \"deleteUnusedVariations\" on null' in C:\\xampp\\htdocs\\mod2060\\jtlconnector\\src\\jtl\\Connector\\ Modified\\Mapper\\Product.php:278"},"jtlrpc":"2.0","id":"unknown"}
Exception bei product.delete: Attempt to assign property "deleteUnusedVariations" on null

Attempt to assign property "deleteUnusedVariations" on null

Response: {"result":null,"error":{"code":0,"message":"Attempt to assign property \"deleteUnusedVariations\" on null","data":"Exception 'Error' (Code: 0) with message 'Attempt to assign property \"deleteUnusedVariations\" on null' in C:\\xampp\\htdocs\\mod2060\\jtlconnector\\src\\jtl\\Connector\\Modified\\Mapper\\Product.php:278"},"jtlrpc":"2.0","id":"unknown"}
bei jtlCore.ControllerClasses.Connector.Abgleich.Connector.TfkZCNi6gkN(String , Object , Boolean , NetworkCredential )
bei jtlCore.ControllerClasses.Connector.Abgleich.Connector.bxuZCvBQsrt(String , Object , Boolean , NetworkCredential )
bei jtlCore.ControllerClasses.Connector.Abgleich.Connector.TfkZCNi6gkN(String , Object , Boolean , NetworkCredential )
Kann hier jemand kurz weiterhelfen oder einen Denkanstoss geben?
 

svenyo

Gut bekanntes Mitglied
18. Februar 2016
111
3
Code:
Fehler:
Exception: Declaration of jtl\Connector\Modified\Mapper\StatusChange::push(jtl\Connector\Model\StatusChange $status) must be compatible with Jtl\Connector\XtcComponents\AbstractMapper::push(jtl\Connector\Model\DataModel $model, ?stdClass $dbObj = null)
Declaration of jtl\Connector\Modified\Mapper\StatusChange::push(jtl\Connector\Model\StatusChange $status) must be compatible with Jtl\Connector\XtcComponents\AbstractMapper::push(jtl\Connector\Model\DataModel $model, ?stdClass $dbObj = null)
Versand/Zahlung-Senden-Fehler: Bitte beachten Sie, dass zur Fehler-Diagnose ebenfalls die Log-Datei des Servers und das Abgleich-Log der JTL-Wawi notwendig sind!
Exception bei status_change.push: Declaration of jtl\Connector\Modified\Mapper\StatusChange::push(jtl\Connector\Model\StatusChange $status) must be compatible with Jtl\Connector\XtcComponents\AbstractMapper::push(jtl\Connector\Model\DataModel $model, ?stdClass $dbObj = null)

Declaration of jtl\Connector\Modified\Mapper\StatusChange::push(jtl\Connector\Model\StatusChange $status) must be compatible with Jtl\Connector\XtcComponents\AbstractMapper::push(jtl\Connector\Model\DataModel $model, ?stdClass $dbObj = null)

Response: {"result":null,"error":{"code":64,"message":"Declaration of jtl\\Connector\\Modified\\Mapper\\StatusChange::push(jtl\\Connector\\Model\\StatusChange $status) must be compatible with Jtl\\Connector\\XtcComponents\\AbstractMapper::push(jtl\\Connector\\Model\\DataModel $model, ?stdClass $dbObj = null)","data":"Shutdown! File: C:\\Xampp\\htdocs\\mod2072\\jtlconnector\\src\\jtl\\Connector\\Modified\\Mapper\\StatusChange.php - Line: 9"},"jtlrpc":"2.0","id":"unknown"}
Exception bei status_change.push: Declaration of jtl\Connector\Modified\Mapper\StatusChange::push(jtl\Connector\Model\StatusChange $status) must be compatible with Jtl\Connector\XtcComponents\AbstractMapper::push(jtl\Connector\Model\DataModel $model, ?stdClass $dbObj = null)

Declaration of jtl\Connector\Modified\Mapper\StatusChange::push(jtl\Connector\Model\StatusChange $status) must be compatible with Jtl\Connector\XtcComponents\AbstractMapper::push(jtl\Connector\Model\DataModel $model, ?stdClass $dbObj = null)

Response: {"result":null,"error":{"code":64,"message":"Declaration of jtl\\Connector\\Modified\\Mapper\\StatusChange::push(jtl\\Connector\\Model\\StatusChange $status) must be compatible with Jtl\\Connector\\XtcComponents\\AbstractMapper::push(jtl\\Connector\\Model\\DataModel $model, ?stdClass $dbObj = null)","data":"Shutdown! File: C:\\Xampp\\htdocs\\mod2072\\jtlconnector\\src\\jtl\\Connector\\Modified\\Mapper\\StatusChange.php - Line: 9"},"jtlrpc":"2.0","id":"unknown"}
   bei jtlCore.ControllerClasses.Connector.Abgleich.Connector.TfkZCNi6gkN(String  , Object  , Boolean  , NetworkCredential  )
   bei jtlCore.ControllerClasses.Connector.Abgleich.Connector.bxuZCvBQsrt(String  , Object  , Boolean  , NetworkCredential  )
   bei jtlCore.ControllerClasses.Connector.Abgleich.Connector.TfkZCNi6gkN(String  , Object  , Boolean  , NetworkCredential  )
Kann jemand weiterhelfen, auf was ich bei der folgenden Fehlermeldung achten muss, um den Fehler zu finden?
 

bork

Sehr aktives Mitglied
26. Januar 2007
848
103
Also für PHP 8.1 musst du ohnehin den kompletten Connector Core migrieren. Ob das nachhaltig ist, da selbst noch dran zu werkeln in der Hoffnung dass es noch lange hält? Irgendwann ist es vorbei. Aber es gibt ja auch einen fast fertigen Connector für Modified unter PHP 8.1 - der ist nichts?
 

shishaguru

Aktives Mitglied
2. April 2022
10
0
Hat es schon jemand geschafft den Connector mit Modified 3.0.2 php 8.1 zum laufen zu bringen ? Wäre sehr daran interessiert. Lg
 
Ähnliche Themen
Titel Forum Antworten Datum
Einzelartikel als Kindartikel zu einem neuen Vaterartikel zusammenführen (JTL-Wawi + Shopware Connector) JTL-Wawi 1.8 0
Neu Probleme bei WooCommerce JTL-Connector, keine Aktivierung möglich, Bestands-Shop lahmgelegt Onlineshop-Anbindung 0
Neu Wawi zu Shopify connector Funktionseinstellungen ändern Allgemeines zu den JTL-Connectoren 0
Neu Connector extrem langsam Shopify-Connector 17
Neu JTL Connector Shopware-Connector 10
Neu Probleme beim Abgleich mit dem WooCommerce-Connector WooCommerce-Connector 0
Neu Abgleich WooCommerce / JTL mit dem Connector – Fehlermeldung WooCommerce-Connector 0
Neu Connector - benötigte Berechtigungen Shopware-Connector 4
Neu Connector schickt jede Nacht Category Bilder neu an Woocommerce WooCommerce-Connector 2
Fehlermeldung im Connector JTL-Wawi 1.10 2
Neu Wann ist JTL WaWi / Connector mit Shopware 6.7 kompatibel? Shopware-Connector 6
Neu Shopify Connector SaaS - Keine Plattform trotz Lizenz Shopify-Connector 4
Neu JTL Connector Allgemeines zu den JTL-Connectoren 1
Shopify-Connector Down? Shopware-Connector 0
Neu Shopware6 Connector + Funktionsattribute Shopware-Connector 0
Neu Workflow für voraussichtlichen Liefertag erstellen JTL-Workflows - Ideen, Lob und Kritik 5
Neu Workflow für voraussichtlichen Liefertag erstellen User helfen Usern - Fragen zu JTL-Wawi 0
Neu CustomWorkflow für Pattenkonto JTL-Workflows - Ideen, Lob und Kritik 1
Neu Adressetiketten für Briefe mit Etikettendrucker erstellen / Formatierungsproblem Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 2
Neu 🚀 Pilotkunden gesucht: HS Dynamic Pricing Plugin für JTL-Shop Plugins für JTL-Shop 0
Wichtig 💡Die Retourenplattform für Webshops – Expertise von unserem neuen Partner Returnless News, Events und Umfragen 0
Neu Kapazitäten frei für Routineaufgaben JTL Wawi Dienstleistung, Jobs und Ähnliches 0
Neu Trainingsmodus für JTL-POS gewünscht JTL-POS - Ideen, Lob und Kritik 0
Artikel teilweise nicht für Verkaufskanäle aktivierbar JTL-Wawi 1.10 0
Neu VCS lite: Arithmetischer Überlauffehler für tinyint-Datentyp, Wert = -1. Amazon-Anbindung - Fehler und Bugs 0
Monatsweise Warenbewegungen für alle Artikel exportieren JTL-Wawi 1.10 1
WF - automatisches Aktivieren / Deaktivieren für Verkaufskanal Shop JTL-Wawi 1.9 6
Artikel nicht automatisch für Verkaufskanal aktivieren JTL-Wawi 1.10 2
Neu Welcher Hoster ist für JTL-Shop 5 empfehlenswert? User helfen Usern 12
Buchhaltung vollautomatisiert für die Schweiz JTL-Wawi 1.10 9
Vote für debugging des Mobile Server Fehlers JTL-Wawi 1.11 1
Massenänderung "Lagerplatz" für Artikel bei WMS Lager JTL-Wawi 1.10 2
Neu Bestellobergrenze (999€) für Schweizer Kunden im Shop hinterlegen Betrieb / Pflege von JTL-Shop 1
Alternativtext für Artikelbilder per Ameise pro Plattform setzen JTL-Wawi 1.10 0
Neu Staffelpreise für Verpackungseinheiten Einrichtung von JTL-Shop4 4
Neu Kunden einen Retouren QR Code beim ausliefern mitschicken für Warenankauf ??? JTL-ShippingLabels - Fehler und Bugs 0
Neu Suche Freelancer für Aufsetzen JTL B2B Shop Dienstleistung, Jobs und Ähnliches 3
Gelöst Kartenleser für RKSV JTL-POS - Fragen zu Hardware 2
Neu Artikel nur für Admin sichtbar Allgemeine Fragen zu JTL-Shop 2
Neu Zusätzlicher Kundendisplay für Kassensystem iMin D4 Pro Einrichtung / Updates von JTL-POS 1
Neu Besteht Interesse an einer Versandschnittstelle für GEL-Express? Schnittstellen Import / Export 0
Neu Tailwind als Basis für JTL Shop 6 ? Templates für JTL-Shop 2
Neu Variablen für Kassenbon Einrichtung / Updates von JTL-POS 1
Neu Feature Requests für das News System Refactoring JTL-Shop - Ideen, Lob und Kritik 7
Neu Neues Plugin: JTL Closed Shop – Zugangsbeschränkung, Pre-Sale & Wartungsmodus für deinen JTL-Shop Plugins für JTL-Shop 1
Neu Falsche Währung in VCS-Lite Rechnungsvorlage bei anderem Land für Rechnung als Lieferung, HUF statt EUR Amazon-Anbindung - Fehler und Bugs 0
Gelöst Workflow-Trigger für Selbstabholung / FFN-Versand JTL-Workflows - Fehler und Bugs 2
Ameisenimport ignoriert Feld "Ist Standardlieferant für Dropshipping" JTL-Wawi 1.10 2
In Diskussion Workflow für bezahlte Aufträge eines bestimmten Lagers → Pickliste zu bestimmter Uhrzeit JTL-Workflows - Ideen, Lob und Kritik 2
Neu Bekomme ich hier im Forum für mein Projekt Support? User helfen Usern 8

Ähnliche Themen