- Rich Faces 4.0 With jsf2.0
- </p><p> `<?xml version="1.0" encoding="UTF-8"?>
- <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
- xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
- id="WebApp_ID" version="3.0">
- <display-name>MyApp</display-name>
- <context-param>
- <param-name>org.richfaces.skin</param-name>
- <param-value>classic</param-value>
- </context-param>
- <context-param>
- <param-name>org.richfaces.enableControlSkinning</param-name>
- <param-value>true</param-value>
- </context-param>
- <context-param>
- <param-name>org.richfaces.enableControlSkinningClasses</param-name>
- <param-value>false</param-value>
- </context-param>
- <servlet>
- <servlet-name>Faces Servlet</servlet-name>
- <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
- <load-on-startup>1</load-on-startup>
- </servlet>
- <servlet-mapping>
- <servlet-name>Faces Servlet</servlet-name>
- <url-pattern>/faces/*</url-pattern>
- </servlet-mapping>
- <context-param>
- <param-name>javax.faces.PROJECT_STAGE</param-name>
- <param-value>Development</param-value>
- </context-param>
- <servlet-mapping>
- <servlet-name>Faces Servlet</servlet-name>
- <url-pattern>/faces/*</url-pattern>
- </servlet-mapping>
- <servlet-mapping>
- <servlet-name>Faces Servlet</servlet-name>
- <url-pattern>*.jsf</url-pattern>
- </servlet-mapping>
- <servlet-mapping>
- <servlet-name>Faces Servlet</servlet-name>
- <url-pattern>*.faces</url-pattern>
- </servlet-mapping>
- <servlet-mapping>
- <servlet-name>Faces Servlet</servlet-name>
- <url-pattern>*.xhtml</url-pattern>
- </servlet-mapping>
- <filter>
- <filter-name>SecurityFilter</filter-name>
- <filter-class>com.my.SecurityFilter</filter-class>
- </filter>
- <filter-mapping>
- <filter-name>SecurityFilter</filter-name>
- <url-pattern>*.jsf</url-pattern>
- <dispatcher>REQUEST</dispatcher>
- </filter-mapping>
- </web-app>` </p><p> Security Filter </p> <p> `import java.io.IOException;
- import javax.servlet.Filter;
- import javax.servlet.FilterChain;
- import javax.servlet.FilterConfig;
- import javax.servlet.ServletException;
- import javax.servlet.ServletRequest;
- import javax.servlet.ServletResponse;
- import javax.servlet.http.HttpServletRequest;
- import javax.servlet.http.HttpServletResponse;
- import com.ils.core.util.IlsUtil;
- /**
- * @author --FILTER implementing class; Checks the authentication of every
- * request
- */
- public class SecurityFilter implements Filter {
- public void init(FilterConfig config) throws ServletException {
- }
- public void doFilter(ServletRequest request, ServletResponse resp,
- FilterChain chain) throws IOException, ServletException {
- System.out.println("--------SecurityFilter.doFilter()--------");
- boolean redirToLoginPage = false;
- HttpServletRequest httpRequest = (HttpServletRequest) request;
- InputParamDto parameter = null;
- Object user = null;
- try {
- parameter = (InputParamDto) httpRequest.getSession().getAttribute(
- "inputParameter");
- } catch (Exception e) {
- e.printStackTrace();
- }
- if (parameter == null || IlsUtil.ifEmpty(parameter.getConsumer_id())) {
- redirToLoginPage = true;
- }
- if (httpRequest.getRequestURI().indexOf("login") == -1
- && redirToLoginPage) {
- HttpServletResponse httpResponse = (HttpServletResponse) resp;
- httpResponse.setContentType("text/plain");
- httpResponse.setStatus(HttpServletResponse.SC_MOVED_TEMPORARILY);
- String redirTo = httpRequest.getScheme() + "://"
- + httpRequest.getServerName() + ":"
- + httpRequest.getServerPort()
- + httpRequest.getContextPath() + "/";
- httpResponse.setHeader("Location", redirTo);
- } else {
- chain.doFilter(request, resp);
- }
- }
- public void destroy() {
- }
- }`</p>