Debugmeldungen für org.apache.wicket.util.resource aktivieren

Aktivieren Sie Debug-Meldungen für org.apache.wicket.util.resource

Problem

Wenn in Wicket eine HTML-Seite nicht gefunden wird, wird "Enable debug messages for org.apache.wicket.util.resource to get a list of all filenames tried" ausgelöst. Fragen Sie sich, wie Sie die Debug-Meldung für die Wicket-Ressource aktivieren können?

Root cause:
org.apache.wicket.markup.MarkupNotFoundException:
Markup of type 'html' for component 'com.example.hello.Hello' not found.

Enable debug messages for org.apache.wicket.util.resource to get a list of all filenames tried.:
[Page class = com.example.hello.Hello, id = 0, version = 0]
at org.apache.wicket.markup.MarkupCache.getMarkupStream(MarkupCache.java:227)
...

Lösung

Ich habe keine Ahnung, wie das Debuggen auch für "org.apache.wicket.util.resource" aktiviert werden soll. Die Wicket-Fehlermeldung sollte klarer sein!

Alternativ können Sie die Protokollierung im Debug-Modus aktivieren und nachverfolgen, wie Wicket Ressourcen über eine Protokolldatei findet. Zum Beispielintegrate log4j with Wicket.

Beispiel für eine log4j-Ausgabe…

DEBUG MarkupCache:300 - Load markup: cacheKey=com.example.hello.Helloen_US.html
DEBUG ResourceStreamLocator:216 - Attempting to locate resource
'com/example/hello/Hello_en_US.html' on path [folders = [], webapppaths: [/pages/]]

DEBUG ResourceStreamLocator:186 - Attempting to locate resource
'com/example/hello/Hello_en_US.html' using classloader WebappClassLoader
  delegate: false
  repositories:
    /WEB-INF/classes/
...
DEBUG ResourceStreamLocator:216 - Attempting to locate resource
'com/example/hello/Hello.html' on path [folders = [], webapppaths: [/pages/]]
DEBUG ResourceStreamLocator:186 - Attempting to locate resource
'com/example/hello/Hello.html' using classloader WebappClassLoader
  delegate: false
  repositories:
    /WEB-INF/classes/
...