Comment obtenir l'URL de demande réelle dans Struts with Tiles?
Lorsque vous êtes en utilisant des Tuiles avec Struts et faire...
request.getRequestURL()
...vous obtenez l'URL, par exemple /WEB-INF/jsp/layout/newLayout.jsp
au lieu de l'URL réelle qui a été entré/cliqué par l'utilisateur, quelque chose comme /context/action.do
.
Dans de nouveaux Struts versions 1.3.x et après, vous pouvez utiliser le solution mentionnée sur javaranch et obtenir les URL à l'aide de l'attribut de la requête ORIGINAL_URI_KEY
.
Mais comment faire dans Struts 1.2.x?
source d'informationauteur
Vous devez vous connecter pour publier un commentaire.
- Je utiliser ce qui fonctionne aussi sur le Printemps:
Si vous avez aussi besoin de la chaîne de requête (contribué par matchew):
Lorsque vous demande de requête.getRequestURL() à partir de votre point de vue/jsp/carreaux de couche, c'est déjà un autre requête réécrite.
Comme Mwanji Ezana mentionne, de la façon la plus appropriée est de l'enregistrer à des biens distincts de l'action phase d'exécution. Vous pouvez automatiser ce processus avec l'aide des intercepteurs Struts2.
Je ne sais pas si Struts 1.2.x a un semblable Globals constante, mais vous pouvez créer votre propre dans au moins deux façons:
Cela fonctionne dans Struts 1.2