Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
kleines Problem(chen). Ich möchte in meinem Servlet in der Methode doPost die url ermitteln, aus welcher doPost aufgerufen wurde. Sprich ich brauche den namen meiner Jsp, damit ich am Ende der Verarbeitung aus doPost heraus wieder auf meine ursprüngliche jsp redirecten kann. Wo finde ich das im request?
Versucht habe ich schon
Siehe da der letzte Punkt ist die Adresse von der aus das Servlet aufgerufen wurde.
Der sogenannte referer. Diesen findet man genauergesagt mit request.getHeader("referer");.
Sofern er vom aufrufenden Browser mitgeschickt wird und von keiner Firewall entfernt wird. Oder die URL in den Browser eingetippt wird.
Das Header "beschnitten" werden ist halt so! Denn wen geht es an welchen Browser ich benutze oder welches Betriebssystem mit welchen eklatanten Sicherheitslücken.
Das passt aber nicht mit dem MVC/Model 2 Konzept zusammen, da linkt man nie direkt auf die JSP sondern geht immer über ein Servlet (Controller), daher würde der Referer nur auf die Servlet URL zeigen
Viele Beispiele zeigen diese Thematik auf, indem sie das Servlet-Mapping einfach auf "alles" legen, sprich "*"
Wenn nun im Root nach "xyz.jsp" gefragt wird, steht dies auch in req.getRequestURI() drin und das Servlet kann entsprechend weiterleiten
Das passt aber nicht mit dem MVC/Model 2 Konzept zusammen, da linkt man nie direkt auf die JSP sondern geht immer über ein Servlet (Controller), daher würde der Referer nur auf die Servlet URL zeigen
Die Referer URL ist nix weiter als das was im Browser in der URL Leiste steht, wenn das itrgendetwas mit .JSP steht, nutzt man kein MVC/Model 2
MiDniGG hatte schon die richtige Idee, obwohl ich nicht den Namen der JSP reinschreiben würde, sondern ein command Parameter anhand dessen dann entschieden wird wohin der Request geforwarded wird.
Die Referer URL ist nix weiter als das was im Browser in der URL Leiste steht, wenn das itrgendetwas mit .JSP steht, nutzt man kein MVC/Model 2
MiDniGG hatte schon die richtige Idee, obwohl ich nicht den Namen der JSP reinschreiben würde, sondern ein command Parameter anhand dessen dann entschieden wird wohin der Request geforwarded wird.
ja, wenn man zb über struts actions (.do) geforwarded wird sieht man da ja auch nix, das stimmt schon. aber man ist ja nicht gezwungen nach dem modell 2 zu designen, nichtmal simples mvc wird in vielen anwendungen eingehalten. habs ja nur erwähnt, weils möglich wäre!