Come si ottiene l'URL della richiesta in un bean che supporta una pagina JSF? Ho cercato attraverso la documentazione FacesContext e il modo migliore che ho trovato sembra terribilmente lunga:Ottieni l'URL della richiesta in un bean JSF?
public String getRequestURL()
{
Object request = FacesContext.getCurrentInstance().getExternalContext().getRequest();
if(request instanceof HttpServletRequest)
{
return ((HttpServletRequest) request).getRequestURL().toString();
}else
{
return "";
}
}
Edit: Requisiti funzionali Il requisito è che abbiamo bisogno l'URL completo per un terzo javascript utilità. L'uso o l'architettura dell'utilità non si adatta bene a JSF, ma tutto ciò non corrisponde a questa chiamata. Il metodo che ho trovato funzionerà, ma è stato sbagliato scavare così in profondità nel FacesContext. Inoltre speravo che ci sarebbe stato un modo per poter essere chiamato con JSF Expression Language poiché questo sarà usato in un modo "vista" correlato.
Grazie per aver chiarito tutti i vari metodi per estrarlo! – Adam
Prego. Quale ha finalmente aiutato? :) – BalusC
Alla fine ho potuto aggirarlo, ma avrei usato window.location – Adam