jsp:
%Vor%Servlet:
%Vor%Filter
%Vor%Listener
%Vor% Mein web.xml
:
Wenn ich das Formular abschicke, erhalte ich die Ausgabe "ES FUNKTIONIERT NICHT!" in der ersten Zeile der Antwort. Wenn ich den angeforderten Pfad von /{insert your context here}/p/hello
zu /{insert your context here}/hello
ändere, funktioniert es, warum?
Verwendung:
JBoss EAP 6.1
Ich konnte das Problem mit Tomcat 7.0.30 reproduzieren. Das gleiche Problem war vorhanden, ob ich das "HelloServlet" dynamisch oder statisch mit einer @MultipartConfig
Annotation konfiguriert habe.
Ich habe auch auf Jetty Version 8.1.13.v20130916 getestet, und es hat in beiden Fällen gut funktioniert; /{context}/p/hello
und /{context}/hello
, ohne Änderungen.
Wenn Sie Ihre HelloListener
wie folgt ändern würden:
Es würde funktionieren, aber ich vermute, dass das den Zweck dessen zunichte macht, was Sie versuchen zu tun. Eine andere Option wäre, Ihren Filter so zu modifizieren, dass er dynamisch neue Zuordnungen hinzufügt:
%Vor%Tomcat / jboss scheint nur die mehrteilige Unterstützung für die Anfrage zu aktivieren, basierend darauf, ob der ursprüngliche Anfragepfad mit einem der für mehrteilige Unterstützung konfigurierten Servlets übereinstimmt oder nicht auf dem Pfad der Anfrage, die sie gerade bearbeitet (die möglicherweise vom RequestDispatcher "enthalten" wurde).
Es scheint wie ein tomcat / jboss-Bug, aber Sie müssten die Servlet-Spezifikation sorgfältig lesen, um das herauszufinden, andernfalls könnten Sie stattdessen Jetty verwenden.
Ich stieß zufällig auf diese und was könnte die Antwort auf Ihr Dilemma zur gleichen Zeit sein. Angesichts der angegebenen Anmerkungen würde die Seite mit {hier einfügen} / hallo und nicht {hier Kontext einfügen} / p / hallo aufgerufen werden. Sehen Sie sich mehrere Ordner auf Java EE 6-Webseiten an . Es ist sehr ähnlich und BalusC bietet einige großartige Informationen. Hoffe das hilft.