2016-08-22 4 views
1

Ich arbeite an der Migration einer Anwendung von Wicket 1.4 zu Wicket 6. Eine Seite reagiert nicht so, wie es soll und ich vermute, dass dies durch eine fehlende JavaScript-Datei verursacht wird.Wicket 6 JavaScript-Referenz nicht in Kopf

Die Datei ist in einem Java-Paket vorhanden. In der ursprünglichen Anwendung wird die Datei in einem Assistentenschritt in demselben Paket hinzugefügt. Für Debug-Zwecke (Ich bin nicht sicher, dass die fehlende Datei das Problem verursacht) Ich zog um die abstrakte Seite der Anwendung aufzurufen, die in einem anderen Paket ist.

Der folgende Aufruf wird zu einem Überschreiben von renderHead hinzugefügt. Das enthält bereits Dateien, die korrekt hinzugefügt werden und super.renderHead enthalten.

response.render(
    JavascriptHeaderItem.forReference(
     new PackageResourceReference(ClassInSamePackage.class, "jsName.js") 
    ) 
); 

Das Script-Tag ist im HTML-Body statt im Kopf vorhanden.

Ich habe überprüft, dass das Skript an der Position im Skript-Tag vorhanden ist. Aber es scheint unmöglich, es im HTML-Kopf zu rendern.

Antwort

1

Es stellte sich heraus, dass es sich um eine Kombination aus einem verwendeten JavaScriptFilteredIntoFooterHeaderResponse und einem Fehler im Wicket-Ausgang handelte, weil Wicket im DEVELOPMENT-Modus statt DEPLOYMENT-Modus war. Wenn das Wicket im DEPLOYMENT Modus war, wurde der Code der Fußzeile korrekt hinzugefügt und es funktionierte auch korrekt.