[OmniFaces utilities] The
getRequestHostname()
method returns the HTTP request hostname. This is the entire domain, without any scheme and slashes. Noted should be that this value is extracted from the request URL, not from HttpServletRequest#getServerName()
as its outcome can be influenced by proxies.Method:
Usage:
·
inside a servlet filter or even a plain
vanilla servlet (basically,
when FacesContext is not
available):
import
org.omnifaces.util.Servlets;
...
@WebServlet("/MyServlet")
public class MyServlet extends HttpServlet {
protected
void processRequest(HttpServletRequest request, HttpServletResponse response) throws
ServletException, IOException {
// e.g. localhost, 89.38.156.5
String
hostname = Servlets.getRequestHostname(request);
}
...
}
·
in JSF, when FacesContext is
available use, Faces#getRequestHostname(), or more clumsy (not recommended):
import
org.omnifaces.util.Servlets;
...
// or simply
use, Faces#getRequest()
FacesContext
context = FacesContext.getCurrentInstance();
ExternalContext
externalContext = context.getExternalContext();
HttpServletRequest
request = (HttpServletRequest) externalContext.getRequest();
// e.g. localhost, 89.38.156.5
String hostname =
Servlets.getRequestHostname(request);
Niciun comentariu :
Trimiteți un comentariu