Buenas,
Cita: He probado lo que adjunto a continuación pero no funciona.
HttpServletRequest origRequest = (HttpServletRequest)FacesContext.getCurrentInstanc e().getExternalContext().getRequest();
Eso te debería devolver un objeto request (si es que realmente estás utilizando JSF y no es simplemente algo que has copiado y pegado al azar).
Con el objeto request tienes numerosos métodos que te permiten reconstruir la url como:
getRequestUrl()
getServerName()
getServerPort()
getPathInfo()
...
http://docs.oracle.com/javaee/7/api/...etRequest.html
Un saludo