"Unexpected Token" in Backend Application

Moin :slight_smile:

Ich bin kurz davor, mir endgültig die Karten zu legen :frowning:

Ich taste mich gerade an meine erste Backend-Application heran, hangele mich dazu an der Doku entlang (auf Basis des darin gezeigten SwagProductBasic) und lande am Ende bei einem "Unexpected Token

Alles, was ich dazu im Netz finden konnte war, dass diese Meldung relativ häufig an Unstimmigkeiten bei Namensgebungen liegt … und kann die ausschließen (ich habe die Namen der Controller und Models schon von innen auf der Netzhaut gebrannt, sooft, wie ich jetzt auf den Quellcode gestarrt habe).

Eingebunden ist die ext-all-debug.js … aussagekräftige Fehlermeldungen bekomme ich dennoch nicht. Genau genommen bekomme ich bis auf das Fehlerfenster im Backend gar keine Fehler auf der Console … und (und da habe ich das größte Fragezeichen) auch nicht auf der Console, obwohl in der app.js folgender Code steht:

 

launch: function() {
		console.log('hier');
		return this.getController('Main').mainWindow;
    }

Wie geht man jetzt am besten vor? Wonach suche ich jetzt (noch)?

Eventuell interessant: mache ich ein Reload des gesamten Backends, kommt o.g. Fehlermeldung im Fehlerfenster des Backends. Mache ich ein Reinstall des Plugins (nebst Caches löschen, etc.), erscheint lediglich das Overlay „Theme Switcher wird geladen“ („Theme Switcher“ heißt das Plugin) - das Fehlerfenster kommt dann nicht.

Die Meldung auf der Console kommt aber in beiden Fällen nicht :frowning:

Ich wäre für jeden Hinweis echt dankbar … 

Ich hatte mal so einen Fehler. Der Grund war hier ein “Fehler” in einem Snippet Text. Dort dürfen keine Aprostrophs stehen, wenn die Texte im Backend verwendet werden. 

Ansonsten könntest Du Dir auch die “debug-all-ext.js” aktivieren. Damit kann man evtl. aus dem Stack Trace zumindest die Richtung erahnen wo das Problem herkommen könnte.

 

Die debug-all-ext.js ist aktiv … aus dem Trace werde ich leider überhaupt nicht schlau:

 

SyntaxError: Unexpected token <
    at http://shopware.local/engine/Library/ExtJs/ext-all-debug.js?201806131541:528:18
    at Object.Ext.globalEval (http://shopware.local/engine/Library/ExtJs/ext-all-debug.js?201806131541:529:10)
    at Object.success (http://shopware.local/backend/base?file=bootstrap&loggedIn=1531943924:530:5)
    at Object.callback (http://shopware.local/engine/Library/ExtJs/ext-all-debug.js?201806131541:6455:26)
    at constructor.onComplete (http://shopware.local/engine/Library/ExtJs/ext-all-debug.js?201806131541:38086:17)
    at constructor.onStateChange (http://shopware.local/engine/Library/ExtJs/ext-all-debug.js?201806131541:38047:18)
    at XMLHttpRequest. (http://shopware.local/engine/Library/ExtJs/ext-all-debug.js?201806131541:1816:27)

Die Developerconsole schweigt sich beharrlich aus :frowning:

Du musst im Network-Tab nachsehen, welcher Fehler via Ajax übertragen wird.

Siehe hier: https://forum.shopware.com/discussion/comment/106944/#Comment_106944

Es passiert nämlich folgendes: Es gibt wahrscheinlich einen Smarty-Fehler und ExtJS versucht dies dann als Javascript zu interpretieren. Dann tritt dieser Fehler auf. => du musst nachsehen, was genau an Ext.JS übertragen wurde.

Viele Grüße

1 „Gefällt mir“

5 Arbeitstage für’n Popo wegen … Smarty/Shopware kannte das Resourcenverzeichnis des Plugins nicht :frowning:

Die app.js konnte (gar) nicht geladen werden …

Darauf soll einer bei so einer kryptischen Meldung kommen?!

 

Ich danke dir!!

Hallo zusammen,

auch ich stand soeben vor dem gleichen Problem. Der Beitrag war ein guter Hinweis doch erschließt es sich für den einen oder anderen sicher nicht direkt wie man denn jetzt genau ans Ziel kommt. Daher habe ich mal den ganzen Prozess in einem Beitrag verpackt, den hier aufrufen könnt:

https://great2gether.com/2018/10/fehler-im-shopware-plugin-manager-syntaxerror-unexpected-token-loesung/

Beste Grüße! 

Hallo,

ich konnte das Problem eingrenzen indem ich den letzten Response kopiert und mal bei https://www.jslint.com/ eingefügt habe, dann bei den Tolerate Optionen ‘long lines’ & ‘single quote string’ erlauben. Bei mir lag der Fehler in nicht erlaubten Zeichen in der s_core_snippet für den namespace ‘backend/index/controller/main’ 

@CarstenHarnisch schrieb:

Ich hatte mal so einen Fehler. Der Grund war hier ein „Fehler“ in einem Snippet Text. Dort dürfen keine Aprostrophs stehen, wenn die Texte im Backend verwendet werden. 

Ansonsten könntest Du Dir auch die „debug-all-ext.js“ aktivieren. Damit kann man evtl. aus dem Stack Trace zumindest die Richtung erahnen wo das Problem herkommen könnte.

 

Danke für den Tipp! Ich hatte jetzt auch das Problem… 900 Zeilen Code am Stück geschrieben und dann erst gespeichert. Ich kam partout nicht drauf und musste Stück für Stück den Code wieder rausnehmen um zu gucken ab wann der Fehler kommt. Natürlich in Zeile 860 (Wo sonst?) - Jetzt hab ich auf jeden Fall das böse Apostroph gefunden und den Fehler ausgemerzt.