4 votes

JSF2 et PrettyFaces... comment obtenir l'URL original ou la chaîne de requête ?

PrettyFaces est un moteur de réécriture d'URL très simple. Toutes sortes de SEO sont possibles et c'est vraiment très facile . J'ai cependant un petit problème :(

En utilisant les jolis visages, j'ai cette règle de réécriture :

<url-mapping id="blogEntry">
    <pattern value="/blog/#{shortUrl}" />
    <view-id value="/blogEntry.jsf" />
</url-mapping>

La barre d'URL ressemble donc à ça :

http://host.com/blog/first-post

Et la règle de réécriture fait correspondre la demande en interne à :

http://host.com/blogEntry?shortUrl=first-post

J'implémente OpenID, ce qui signifie que je dois donner au fournisseur OpenID une URL de retour. Cependant, lorsque je fais ce qui suit :

originalUrl = Faces.getRequest().getRequestURL().toString()

J'ai compris :

http://host.com/blogEntry.jsf

getQueryString() renvoie une chaîne vide

Quelqu'un connaît-il un moyen d'obtenir l'URL pur : http://host.com/blog/first-post ou au moins la chaîne de requête shortUrl=first-post

7voto

Lincoln Points 2201

Vous pouvez utiliser : PrettyContext.getCurrentInstance().getRequestUrl().toURL() y PrettyContext.getCurrentInstance().getRequestQueryString().toQueryString()

Poste de forum similaire : http://ocpsoft.org/support/topic/how-get-the-original-request-uri-from-jsf

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X