[OmniFaces utilities] The
getRequestURLWithQueryString()
method returns the HTTP request URL with query string. This is the full request URL with query string as the enduser sees in browser address bar.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.
http://localhost:8080/MyApp/ MyServlet?tech=JSF&lib=OmniFaces
String requestURL = Servlets.getRequestURLWithQueryString(request);
}
...
}
·
in JSF, when FacesContext is
available use, Faces#getRequestURLWithQueryString(), or
more clumsy (not recommended):
import
org.omnifaces.util.Servlets;
...
// or simply
use, Faces#getRequest()
Faces
Context context = FacesContext.getCurrentInstance();
ExternalContext
externalContext = context.getExternalContext();
HttpServletRequest
request = (HttpServletRequest) externalContext.getRequest();
// e.g. http://localhost:8080/MyApp/faces/index.xhtml?tech=JSF&lib=OmniFaces
// Note: in
order to preserve the query parameters over a JSF POST you may need, <o:form includeRequestParams="true">
String requestURL =
Servlets.getRequestURLWithQueryString(request);
Niciun comentariu :
Trimiteți un comentariu