<?xml version="1.0" encoding="UTF-8" ?>

  <!DOCTYPE web-app PUBLIC
    "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
    "http://java.sun.com/dtd/web-app_2_3.dtd" >

<!-- The web.xml file is a configuration file used to control the behavior of WebLogic server.
In most cases, you will not need to modify this file. For more information on web.xml, please
consult the Web.xml Deployment Descriptor Elements chapter of the "Developing WebLogic Server
Applications" documentation on edocs.bea.com. -->


<web-app>
    <display-name>Workshop Application</display-name>

<!-- Start Flex Config -->
    <context-param>
       <param-name>flex.class.path</param-name>
       <param-value>./WEB-INF/flex/jars</param-value>
    </context-param>

    <context-param>
      <param-name>flex.configuration.file</param-name>
      <param-value>/WEB-INF/flex/flex-config.xml</param-value>
      <description>configuration file</description>
    </context-param>

    <context-param>
        <param-name>flex.listener.class</param-name>
        <param-value>flex.cache.DependencyCheckerService</param-value>
    </context-param>
<!-- END Flex Config -->

<!-- Start FLEX Filters -->
    <filter>
      <filter-name>FlexDetectionFilter</filter-name>
      <filter-class>flex.bootstrap.BootstrapFilter</filter-class>
      <init-param>
        <param-name>filter.class</param-name>
        <param-value>flex.detection.DetectionFilter</param-value>
      </init-param>
    </filter>

    <filter>
      <filter-name>FlexCacheFilter</filter-name>
      <filter-class>flex.bootstrap.BootstrapFilter</filter-class>
      <init-param>
          <param-name>filter.class</param-name>
          <param-value>flex.cache.CacheFilter</param-value>
      </init-param>
    </filter>
<!-- END Flex Filters -->    
    
    <filter>
        <filter-name>PageFlowJspFilter</filter-name>
        <filter-class>com.bea.wlw.netui.pageflow.PageFlowJspFilter</filter-class>
    </filter>

<!-- Start Flex Filter Mapping -->
    <filter-mapping>
      <filter-name>FlexDetectionFilter</filter-name>
      <servlet-name>FlexMxmlServlet</servlet-name>
    </filter-mapping>

    <filter-mapping>
      <filter-name>FlexCacheFilter</filter-name>
      <servlet-name>FlexMxmlServlet</servlet-name>
    </filter-mapping>

    <filter-mapping>
      <filter-name>FlexCacheFilter</filter-name>
      <servlet-name>FlexSwfServlet</servlet-name>
    </filter-mapping>
<!-- End Flex Filter Mapping -->

    <filter-mapping>
        <filter-name>PageFlowJspFilter</filter-name>
        <url-pattern>*.jsp</url-pattern>
    </filter-mapping>


    <listener>
        <listener-class>
            com.bea.wlw.runtime.core.servlet.WebappContextListener
        </listener-class>
    </listener>
        
<!-- Start Flex Listener -->        
    <listener>
        <listener-class>flex.bootstrap.BootstrapListener</listener-class>
    </listener>
<!-- End Flex Listener -->        


<!-- Start Flex servlets -->
    <servlet>
        <servlet-name>FlexProxyServlet</servlet-name>
        <display-name>Flex Web Services Proxy Servlet</display-name>
        <description>Optional proxy for relaying web services messages</description>
        <servlet-class>flex.bootstrap.BootstrapServlet</servlet-class>
        <init-param>
            <param-name>servlet.class</param-name>
            <param-value>flex.flashproxy.ProxyServlet</param-value>
        </init-param>
        <load-on-startup>3</load-on-startup>
    </servlet>

    <servlet>
        <servlet-name>FlexSwfServlet</servlet-name>
        <display-name>SWF Retreiver</display-name>
        <servlet-class>flex.bootstrap.BootstrapServlet</servlet-class>
        <init-param>
            <param-name>servlet.class</param-name>
            <param-value>flex.swfmanager.SwfServlet</param-value>
        </init-param>
        <!-- SwfServlet must be initialized after MxmlServlet -->
        <load-on-startup>4</load-on-startup>
    </servlet>

    <servlet>
        <servlet-name>FlexMxmlServlet</servlet-name>
        <display-name>MXML Processor</display-name>
        <description>Servlet wrapper for the Mxml Compiler</description>
        <servlet-class>flex.bootstrap.BootstrapServlet</servlet-class>
        <init-param>
            <param-name>servlet.class</param-name>
            <param-value>flex.mxml2.MxmlServlet</param-value>
        </init-param>
        <load-on-startup>3</load-on-startup>
    </servlet>

    <servlet>
        <servlet-name>FlexErrorServlet</servlet-name>
        <servlet-class>flex.bootstrap.BootstrapServlet</servlet-class>
        <init-param>
            <param-name>servlet.class</param-name>
            <param-value>flex.mxml2.ErrorPageServlet</param-value>
        </init-param>
    </servlet>
    
    <servlet>
        <servlet-name>FlexInternalServlet</servlet-name>
        <servlet-class>flex.bootstrap.BootstrapServlet</servlet-class>
        <init-param>
            <param-name>servlet.class</param-name>
            <param-value>flex.filemanager.FileManagerServlet</param-value>
        </init-param>
        <load-on-startup>10</load-on-startup>
    </servlet>

    <servlet>
        <servlet-name>FlexForbiddenServlet</servlet-name>
        <display-name>Prevents access to *.as files</display-name>
        <servlet-class>flex.bootstrap.BootstrapServlet</servlet-class>
        <init-param>
            <param-name>servlet.class</param-name>
            <param-value>flex.util.ForbiddenServlet</param-value>
        </init-param>
    </servlet>    
    
<!--- End Flex Servlets -->

    <!-- Standard Action Servlet Configuration (with debugging) -->
    <servlet>
        <servlet-name>action</servlet-name>
        <servlet-class>com.bea.wlw.netui.pageflow.PageFlowActionServlet</servlet-class>
            <init-param>
            <param-name>config</param-name>
            <param-value>/WEB-INF/.pageflow-struts-generated/jpf-struts-config.xml</param-value>
        </init-param>
        <init-param>
            <param-name>config/-global</param-name>
            <param-value>/WEB-INF/.pageflow-struts-generated/jpf-struts-config--global.xml</param-value>
        </init-param>
        <init-param>
            <param-name>debug</param-name>
            <param-value>2</param-value>
        </init-param>
        <init-param>
            <param-name>detail</param-name>
            <param-value>2</param-value>
        </init-param>
        <load-on-startup>2</load-on-startup>
    </servlet>

    <!-- Struts Action Servlet Mappings -->
    <!-- Note that because Struts takes the *last* mapping here as the extension to add to
         actions posted from forms, we must have *.do come after *.jpf. -->
    <servlet-mapping>
        <servlet-name>action</servlet-name>
        <url-pattern>*.jpf</url-pattern>
    </servlet-mapping>

    <servlet-mapping>
        <servlet-name>action</servlet-name>
        <url-pattern>*.do</url-pattern>
    </servlet-mapping>

<!-- Start Flex Mappings -->
    <servlet-mapping>
        <servlet-name>FlexMxmlServlet</servlet-name>
        <url-pattern>*.mxml</url-pattern>
    </servlet-mapping>

    <servlet-mapping>
        <servlet-name>FlexSwfServlet</servlet-name>
        <url-pattern>*.swf</url-pattern>
    </servlet-mapping>
    
    <servlet-mapping>
        <servlet-name>FlexSwfServlet</servlet-name>
        <url-pattern>*.swd</url-pattern>
    </servlet-mapping>

    <servlet-mapping>
        <servlet-name>FlexForbiddenServlet</servlet-name>
        <url-pattern>*.as</url-pattern>
    </servlet-mapping>

    <servlet-mapping>
        <servlet-name>FlexForbiddenServlet</servlet-name>
        <url-pattern>*.swc</url-pattern>
    </servlet-mapping>
    
    <servlet-mapping>
        <servlet-name>FlexErrorServlet</servlet-name>
        <url-pattern>/flex-error</url-pattern>
    </servlet-mapping>
    
    <servlet-mapping>
        <servlet-name>FlexInternalServlet</servlet-name>
        <url-pattern>/flex-internal/*</url-pattern>
    </servlet-mapping>
    
    <servlet-mapping>
        <servlet-name>FlexProxyServlet</servlet-name>
        <url-pattern>/flashproxy/*</url-pattern>
    </servlet-mapping>    
        
<!-- End Flex Mappings -->    

    <welcome-file-list>
        <welcome-file>index.jsp</welcome-file>
    </welcome-file-list>

    <error-page>
        <error-code>500</error-code>
        <location>/error.jsp</location>
    </error-page>


    <!-- Define the NetUI tag library TLDs -->
    <taglib>
        <taglib-uri>netui-tags-html.tld</taglib-uri>
        <taglib-location>/WEB-INF/netui-tags-html.tld</taglib-location>
    </taglib>

    <taglib>
        <taglib-uri>netui-tags-databinding.tld</taglib-uri>
        <taglib-location>/WEB-INF/netui-tags-databinding.tld</taglib-location>
    </taglib>

    <taglib>
        <taglib-uri>netui-tags-template.tld</taglib-uri>
        <taglib-location>/WEB-INF/netui-tags-template.tld</taglib-location>
    </taglib>

<!-- Start Flex Tag Lib -->
    <taglib>
        <taglib-uri>FlexTagLib</taglib-uri>
        <taglib-location>/WEB-INF/lib/flex-bootstrap.jar</taglib-location>
    </taglib>    
<!-- End Flex Tag Lib -->    
    

</web-app>
