<?xml version="1.0"?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
        version="2.5">
    <display-name>JViews TGO Faces: Facelets and Trinidad Sample</display-name>
    <description>This application shows how to use JViews TGO with facelets and trinidad.</description>
          <!-- strings put before each "script" element. Since facelets already add "CDATA", this is not useful -->
    <context-param>
        <param-name>ilog.views.faces.START_SCRIPT_SECTION</param-name>
        <param-value></param-value>
    </context-param>
          <!-- strings put after each "script" element. Since facelets already close the "CDATA", this is not useful -->
    <context-param>
        <param-name>ilog.views.faces.END_SCRIPT_SECTION</param-name>
        <param-value></param-value>
    </context-param>
    <!-- Use client-side state saving.  In Trinidad, it is an
         optimized, token-based mechanism that is almost always a
         better choice than the standard JSF server-side state saving. -->
    <context-param>
        <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
        <param-value>client</param-value>
    </context-param>
    <!-- URL towards JViews "image" servlet -->
    <context-param>
        <param-name>ilog.views.faces.CONTROLLER_PATH</param-name>
        <param-value>/_contr</param-value>
    </context-param>
          <!-- Optional JSF-RI Parameters to Help Debug -->
    <context-param>
        <param-name>com.sun.faces.validateXml</param-name>
        <param-value>false</param-value>
    </context-param>
    <!-- URL towards JViews "image" servlet -->
    <context-param>
                    <param-name>com.sun.faces.verifyObjects</param-name>
                    <param-value>true</param-value>
    </context-param>
    <!-- Trinidad:Use documents saved as *.xhtml for Facelets -->
    <context-param>
        <param-name>facelets.VIEW_MAPPINGS</param-name>
        <param-value>*.xhtml</param-value>
    </context-param> 
    <!-- Trinidad:Trinidad also supports an optimized strategy for caching some
              view state at an application level, which significantly improves
              scalability.  However, it makes it harder to develop (updates to
              pages will not be noticed until the server is restarted), and in
              some rare cases cannot be used for some pages (see Trinidad
              documentation for more information) -->
    <context-param>
              <param-name>org.apache.myfaces.trinidad.USE_APPLICATION_VIEW_CACHE</param-name>
              <param-value>false</param-value>
    </context-param>
  
    <!-- Trinidad:Enables Change Persistence at a session scope.  By default,
               Change Persistence is entirely disabled. The ChangeManager is
               an API, which can persist component modifications (like,
               is a showDetail or tree expanded or collapsed). For providing
               a custom Change Persistence implementation inherit from the 
               Trinidad API's ChangeManager class. As the value you have 
               to use the fullqualified class name. -->
          <context-param>
                    <param-name>org.apache.myfaces.trinidad.CHANGE_PERSISTENCE</param-name>
                    <param-value>session</param-value>
                </context-param>
    
    <!-- Trinidad:If this parameter is enabled, Trinidad will automatically
               check the modification date of your JSPs, and discard saved
               state when they change;  this makes development easier,
               but adds overhead that should be avoided when your application
               is deployed -->
          <context-param>
                    <param-name>org.apache.myfaces.trinidad.CHECK_FILE_MODIFICATION</param-name>
                    <param-value>true</param-value>
                </context-param>

    <!-- Trinidad: FaceletViewHandler configuration -->
    <context-param>
                    <param-name>org.apache.myfaces.trinidad.ALTERNATE_VIEW_HANDLER</param-name>
                    <param-value>com.sun.facelets.FaceletViewHandler</param-value>
                </context-param>

    <!-- Special Debug Output for Development -->
    <context-param>
        <param-name>facelets.DEVELOPMENT</param-name>
        <param-value>true</param-value>
    </context-param>

    <!-- This Web application uses JViews TGO features. When you deploy
         an application that includes this code, you need to be in possession
         of a Rogue Wave JViews TGO Deployment license. -->
          <listener>
              <listener-class>ilog.views.util.servlet.DeploymentLicenseRequired_for_JViews_TGO_Deployment</listener-class>
          </listener>
          
          <filter>
                    <filter-name>trinidad</filter-name>
                    <filter-class>org.apache.myfaces.trinidad.webapp.TrinidadFilter</filter-class>
          </filter>
          <filter-mapping>
                    <filter-name>trinidad</filter-name>
                    <servlet-name>Faces Servlet</servlet-name>
          </filter-mapping>
  
    <!-- Faces Servlet -->
    <servlet>
        <servlet-name>Faces Servlet</servlet-name>
        <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>
    <!-- Trinidad Resource loader servlet -->
    <servlet>
        <servlet-name>resources</servlet-name>
        <servlet-class>org.apache.myfaces.trinidad.webapp.ResourceServlet</servlet-class>
    </servlet>
    <!-- JViews Images Servlet -->
    <servlet>
        <servlet-name>Controller</servlet-name>
        <servlet-class>ilog.views.faces.IlvFacesController</servlet-class>
        <load-on-startup> 1 </load-on-startup>
    </servlet>
    <!-- Faces Servlet Mapping -->
    <servlet-mapping>
        <servlet-name>Faces Servlet</servlet-name>
        <url-pattern>/faces/*</url-pattern>
    </servlet-mapping>
    <!-- Trinidad Resource Servlet Mapping -->
    <servlet-mapping>
                    <servlet-name>resources</servlet-name>
                    <url-pattern>/adf/*</url-pattern>
    </servlet-mapping>

    <!-- JViews Images Servlet Mapping -->
    <servlet-mapping>
        <servlet-name>Controller</servlet-name>
        <url-pattern>/_contr/*</url-pattern>
    </servlet-mapping>
    
    <!-- Session cleanup time out -->
    <session-config>
        <session-timeout>60</session-timeout>
    </session-config>
    <!-- Welcome File List -->
    <welcome-file-list>
        <welcome-file>faces/index.xhtml</welcome-file>
    </welcome-file-list>
</web-app>