Installing ATG 2007.1 on Microsoft Windows

These instructions are also available for these Operating Systems:

    Command Prompt
    mkdir C:\setup\downloads

     

  1. Installing Java 1.5.0 Update 14
  2. In the "JDK/JRE - 5.0" dropdown, select: 5.0 Update 14
    Click [ Go ]
    Click "Download JDK"
    Check "Accept"
    Platform: windows
    Language: Multi-language
    Check "I agree to the Software License Agreement"
    Save the download in this folder: C:\setup\downloads
    Click [ Continue >> ]
    Command Prompt
    C:\setup\downloads\jdk-1_5_0_14-windows-i586-p.exe

     
    Select "I accept the terms in the license agreement"
    Click [ Next ]
    Click [ Change... ]
    Click [ OK ]
    Click [ Next ]
    Click [ Change... ]
    Click [ OK ]
    Click [ Next ]
    Click [ Next ]
    Click [ Finish ]
    C:\Java\jdk1.5.0_14 \jre\lib\security\java.policy - Notepad
    // Standard extensions get all permissions by default
    
    grant codeBase "file:${{java.ext.dirs}}/*" {
    	permission java.security.AllPermission;
    };
    
    // default permissions granted to all domains
    
    grant { 
    	// Allows any thread to stop itself using the java.lang.Thread.stop()
    	// method that takes no argument.
    	// Note that this permission is granted by default only to remain
    	// backwards compatible.
    	// It is strongly recommended that you either remove this permission
    	// from this policy file or further restrict it to code sources
    	// that you specify, because Thread.stop() is potentially unsafe.
    	// See "http://java.sun.com/notes" for more information.
    	permission java.lang.RuntimePermission "stopThread";
    
    	// allows anyone to listen on un-privileged ports
    	permission java.net.SocketPermission "localhost:1024-", "listen";
    
    	// "standard" properies that can be read by anyone
    
    	permission java.util.PropertyPermission "java.version", "read";
    	permission java.util.PropertyPermission "java.vendor", "read";
    	permission java.util.PropertyPermission "java.vendor.url", "read";
    	permission java.util.PropertyPermission "java.class.version", "read";
    	permission java.util.PropertyPermission "os.name", "read";
    	permission java.util.PropertyPermission "os.version", "read";
    	permission java.util.PropertyPermission "os.arch", "read";
    	permission java.util.PropertyPermission "file.separator", "read";
    	permission java.util.PropertyPermission "path.separator", "read";
    	permission java.util.PropertyPermission "line.separator", "read";
    
    	permission java.util.PropertyPermission "java.specification.version", "read";
    	permission java.util.PropertyPermission "java.specification.vendor", "read";
    	permission java.util.PropertyPermission "java.specification.name", "read";
    
    	permission java.util.PropertyPermission "java.vm.specification.version", "read";
    	permission java.util.PropertyPermission "java.vm.specification.vendor", "read";
    	permission java.util.PropertyPermission "java.vm.specification.name", "read";
    	permission java.util.PropertyPermission "java.vm.version", "read";
    	permission java.util.PropertyPermission "java.vm.vendor", "read";
    	permission java.util.PropertyPermission "java.vm.name", "read";
    	permission javax.management.MBeanTrustPermission "register";
    };
    
    

    Edit Environment Variables

    Open System Properties by pressing: [ windows Key ] + [ Pause ] or by opening the windows Start menu -> Control Panel -> System
    Click "Advanced" tab
    Click [ Environment Variables ]
    Click [ New ]
    Variable name: CLASSPATH
    Click [ OK ]
    Click [ New ]
    Variable name: JAVA_HOME
    Variable value: C:\Java\jdk1.5.0_14
    Click [ OK ]
    Click [ New ]
    Variable name: JBOSS_CLASSPATH
    Click [ OK ]
    Click [ New ]
    Variable name: JBOSS_HOME
    Variable value: C:\jboss
    Click [ OK ]
    Click [ New ]
    Variable name: DYNAMO_HOME
    Variable value: C:\ATG\ATG2007.1\home
    Click [ OK ]
    PATH= C:\Java\jdk1.5.0_14 \bin;%PATH%
    Click [ OK ]
    Click [ OK ]

    Please note: setting these environment variables may confuse your ATG 2006.3 build processes in Eclipse if you are also building ear files for the ATG 2006.3 environments. If you need to run both, you will need to modify the environment configuration of your ATG 2006.3 projects to use different variables when building those projects.

  3. Installing JBoss 4.2.0 GA
  4. Select "Accept"
    Click "ojdbc14.jar"
    Save the download in this folder: C:\setup\downloads
    In the list of "JBoss Application Server Downloads" under the column "Name" find "4.2.0.GA" and click on it's "Download" link
    Save the download in this folder: C:\setup\downloads
    Command Prompt
    mkdir C:\jboss
    unzip C:\setup\downloads\jboss-4.2.0.GA.zip -d C:\jboss
    move C:\jboss\jboss-4.2.0.GA\* C:\jboss
    del /S /Q C:\jboss\jboss-4.2.0.GA
    copy C:\jboss\server\default C:\jboss\server/atg

     
    C:\jboss\bin\run.bat - Notepad
    @echo off
    rem -------------------------------------------------------------------------
    rem JBoss Bootstrap Script for Win32
    rem -------------------------------------------------------------------------
    
    rem $Id: run.bat 60996 2007-02-28 13:44:01Z dimitris@jboss.org $
    
    @if not "%ECHO%" == ""  echo %ECHO%
    @if "%OS%" == "Windows_NT"  setlocal
    
    set DIRNAME=.\
    if "%OS%" == "Windows_NT" set DIRNAME=%~dp0%
    set PROGNAME=run.bat
    if "%OS%" == "Windows_NT" set PROGNAME=%~nx0%
    
    pushd %DIRNAME%..
    set JBOSS_HOME=%CD%
    popd
    
    REM Add bin/native to the PATH if present
    if exist "%JBOSS_HOME%\bin\native" set PATH=%JBOSS_HOME%\bin\native;%PATH%
    if exist "%JBOSS_HOME%\bin\native" set JAVA_OPTS=%JAVA_OPTS% -Djava.library.path=%JBOSS_HOME%\bin\native
    
    rem Read all command line arguments
    
    REM
    REM The %ARGS% env variable commented out in favor of using %* to include
    REM all args in java command line. See bug #840239. [jpl]
    REM
    REM set ARGS=
    REM :loop
    REM if [%1] == [] goto endloop
    REM         set ARGS=%ARGS% %1
    REM         shift
    REM         goto loop
    REM :endloop
    
    rem Find run.jar, or we can't continue
    
    set RUNJAR=%JBOSS_HOME%\bin\run.jar
    if exist "%RUNJAR%" goto FOUND_RUN_JAR
    echo Could not locate %RUNJAR%. Please check that you are in the
    echo bin directory when running this script.
    goto END
    
    :FOUND_RUN_JAR
    
    if not "%JAVA_HOME%" == "" goto ADD_TOOLS
    
    set JAVA=java
    
    echo JAVA_HOME is not set.  Unexpected results may occur.
    echo Set JAVA_HOME to the directory of your local JDK to avoid this message.
    goto SKIP_TOOLS
    
    :ADD_TOOLS
    
    set JAVA=%JAVA_HOME%\bin\java
    
    rem A full JDK with toos.jar is not required anymore since jboss web packages
    rem the eclipse jdt compiler and javassist has its own internal compiler.
    if not exist "%JAVA_HOME%\lib\tools.jar" goto SKIP_TOOLS
    
    rem If exists, point to the JDK javac compiler in case the user wants to
    rem later override the eclipse jdt compiler for compiling JSP pages.
    set JAVAC_JAR=%JAVA_HOME%\lib\tools.jar
    
    :SKIP_TOOLS
    
    rem If JBOSS_CLASSPATH or JAVAC_JAR is empty, don't include it, as this will 
    rem result in including the local directory in the classpath, which makes
    rem error tracking harder.
    if not "%JAVAC_JAR%" == "" set RUNJAR=%JAVAC_JAR%;%RUNJAR%
    if "%JBOSS_CLASSPATH%" == "" set RUN_CLASSPATH=%RUNJAR%
    if "%RUN_CLASSPATH%" == "" set RUN_CLASSPATH=%JBOSS_CLASSPATH%;%RUNJAR%
    
    set JBOSS_CLASSPATH=%RUN_CLASSPATH%
    
    rem Setup JBoss specific properties
    set JAVA_OPTS=%JAVA_OPTS% -Dprogram.name=%PROGNAME%
    
    rem Add -server to the JVM options, if supported
    "%JAVA%" -version 2>&1 | findstr /I hotspot > nul
    if not errorlevel == 1 (set JAVA_OPTS=%JAVA_OPTS% -server)
    
    rem JVM memory allocation pool parameters. Modify as appropriate.
    set JAVA_OPTS=%JAVA_OPTS% -Xms1024m -Xmx1024m -XX:MaxPermSize=128m -XX:MaxNewSize=128m
    
    rem With Sun JVMs reduce the RMI GCs to once per hour
    set JAVA_OPTS=%JAVA_OPTS% -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000
    
    rem JPDA options. Uncomment and modify as appropriate to enable remote debugging.
    rem set JAVA_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=y %JAVA_OPTS%
    
    rem Setup the java endorsed dirs
    set JBOSS_ENDORSED_DIRS=%JBOSS_HOME%\lib\endorsed
    
    echo ===============================================================================
    echo.
    echo   JBoss Bootstrap Environment
    echo.
    echo   JBOSS_HOME: %JBOSS_HOME%
    echo.
    echo   JAVA: %JAVA%
    echo.
    echo   JAVA_OPTS: %JAVA_OPTS%
    echo.
    echo   CLASSPATH: %JBOSS_CLASSPATH%
    echo.
    echo ===============================================================================
    echo.
    
    :RESTART
    "%JAVA%" %JAVA_OPTS% "-Djava.endorsed.dirs=%JBOSS_ENDORSED_DIRS%" -classpath "%JBOSS_CLASSPATH%" org.jboss.Main %*
    if ERRORLEVEL 10 goto RESTART
    
    :END
    if "%NOPAUSE%" == "" pause
    
    :END_NO_PAUSE
    

    Copy Database Driver

    Command Prompt
    copy C:\setup\downloads\ojdbc14.jar C:\jboss\server\atg\lib

     

  5. Installing ATG 2007.1
  6. Command Prompt
    unzip C:\setup\downloads\ATG2007_1.exe -d C:\setup\downloads
    chmod u+x C:/setup/downloads/ATG2007.1.bin
    C:\setup\downloads\ATG2007.1.bin

     
    Press [ Enter ] until you've finished reading the license, then enter: y
    Enter an absolute path: C:\ATG
    To accept the path, enter: y
    Press [ Enter ] to install all products
    To accept JBoss as the application server, enter: 1
    Full path to JBoss home directory: C:\jboss
    Full path to JDK home directory: C:\Java\jdk1.5.0_14
    To leave the default JBoss listen port press [ Enter ]
    To leave the default ATG RMI port press [ Enter]
    To skip deploying the Quincy Funds demo, enter : n
    Press [ Enter] to continue
    To skip downloading evaluation licenses from ATG, enter: n
    Press [ Enter] to exit
    Copy the licenses below from the email you received from license@atg.com to C:\ATG\ATG2007.1\home\localconfig
    DPSLicense.properties, DSSLicense.properties, KnowledgeLicense.properties, PublishingLicense.properties, SelfServiceLicense.properties, SearchAdminLicense.properties

    Edit individual files

    C:\ATG\ATG2007.1\home\bin\j2eeEnv.bat - Notepad
    REM
    REM If we are running on Websphere or Weblogic, we need to explicitly
    REM add their jarfile with J2EEAPI classes to the classpath.
    REM
    if DEFINED WL_HOME set CLASSPATH=%CLASSPATH%;%WL_HOME%\server\lib\weblogic.jar
    if DEFINED WAS_HOME set CLASSPATH=%CLASSPATH%;%WAS_HOME%\lib\j2ee.jar
    REM if DEFINED JBOSS_HOME set CLASSPATH=%CLASSPATH%;%JBOSS_HOME%\server\all\lib\jboss-j2ee.jar
    C:\ATG\ATG2007.1\home\localconfig\postEnvironment.bat - Notepad
    REM postEnvironment.bat
    REM Modify your CLASSPATH, CONFIGPATH, and JAVA_ARGS 
    REM settings in the this file.
    REM See the Dynamo documentation for more information.
    
    REM CLASSPATH variable
    set CLASSPATH=%CLASSPATH%;%JBOSS_HOME%\server\all\lib\jboss-j2ee.jar
    REM PATH variable
    set PATH=%PATH%
    REM CONFIGPATH variable
    set CONFIGPATH=%CONFIGPATH%
    REM JAVA_ARGS variable
    REM set JAVA_ARGS=-classic %JAVA_ARGS%
    
    REM Recommended heap settings for deployment(required for Portals App. 
    REM Framework)
    REM -XX:NewSize and -XX:MaxNewSize must be at least 25% of heapsize - 
    REM examples are for 512MB heap 
    
    REM  uncomment and adjust for your heap:
    REM set JAVA_ARGS=%JAVA_ARGS% -XX:NewSize=128m -XX:MaxNewSize=128m -XX:SurvivorRatio=40 -Xmx512m -Xms512m
    
    REM Decrease RMI garbage collection frequency
    set JAVA_ARGS=%JAVA_ARGS% -Dsun.rmi.dgc.server.gcInterval=3600000
    
    REM enable debugging Dynamo over JDWP
    if "%DEBUG_ENABLED%" == "true" (
     set JAVA_ARGS=%JAVA_ARGS% -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=%JAVA_DEBUG_PORT%
    )
    mkdir C:\ATG\ATG2007.1\home\localconfig\atg\dynamo\service\jdbc
    C:\ATG\ATG2007.1\home\localconfig\atg\dynamo\service\jdbc\FakeXADataSource.properties - Notepad
    $class=atg.service.jdbc.FakeXADataSource
    driver=oracle.jdbc.driver.OracleDriver
    URL=jdbc:oracle:thin:@localhost:1521:orcl
    user=svcagent
    password=svcagent
    C:\ATG\ATG2007.1\home\localconfig\atg\dynamo\service\jdbc\FakeXADataSource_production.properties - Notepad
    $class=atg.service.jdbc.FakeXADataSource
    driver=oracle.jdbc.driver.OracleDriver
    URL=jdbc:oracle:thin:@localhost:1521:orcl
    user=svcadmin
    password=svcadmin

  7. Installing ATGService 2007.1
  8. Command Prompt
    unzip ATG-Service2007_1.exe -d C:\setup\downloads
    chmod u+x ATG-Service2007.1-.bin
    ATG-Service2007.1-.bin

     
    Press [ Enter ] until you've finished reading the license, then enter: y
    To continue, press : [ Enter ]
    To install all ATG Service applications, press: [ Enter ]
    Enter an absolute path: C:\ATG
    To accept the path, enter: y
    Enter ATG Search host: localhost
    Press [ Enter] to continue
    Press [ Enter] to continue
    Press [ Enter] to exit
    C:\ATG\ATG2007.1\Service2007.1\Service\install\oracle\create-service-all.bat - Notepad
    @echo off
    setlocal
    
    if not "%1" == "/h" goto :agentuser
    :help
    echo Creates the tables for the agent and production databases.
    echo Set the following environment variables:
    echo   DB_USER_AGENT: the agent user account name
    echo   DB_PWD_AGENT:  the agent user account password
    echo   ORA_TNS_AGENT: the agent user tnsnames entry
    echo   DB_USER_PRODUCTION: the production user account name
    echo   DB_PWD_PRODUCTION:  the production user account password
    echo   ORA_TNS_PRODUCTION: the production user tnsnames entry
    goto end
    
    :agentuser
    if not "%DB_USER_AGENT%" == "" goto :agentpwd
    set DB_USER_AGENT=svcagent
    
    :agentpwd
    if not "%DB_PWD_AGENT%" == "" goto :agenttns
    set DB_PWD_AGENT=svcagent
    
    :agenttns
    if not "%ORA_TNS_AGENT%" == "" goto :produser
    set ORA_TNS_AGENT=
    
    :produser
    if not "%DB_USER_PRODUCTION%" == "" goto :prodpwd
    set DB_USER_PRODUCTION=svcadmin
    
    :prodpwd
    if not "%DB_PWD_PRODUCTION%" == "" goto :prodtns
    set DB_PWD_PRODUCTION=svcadmin
    
    :prodtns
    if not "%ORA_TNS_PRODUCTION%" == "" goto :dotables
    set ORA_TNS_PRODUCTION=
    
    :dotables
    sqlplus %DB_USER_AGENT%/%DB_PWD_AGENT%@%ORA_TNS_AGENT% @./create-service-agent-all.sql
    sqlplus %DB_USER_PRODUCTION%/%DB_PWD_PRODUCTION%@%ORA_TNS_PRODUCTION% @./create-service-production-all.sql
    
    :end
    

  9. Installing ATGSearch 2007.1
  10. Command Prompt
    unzip ATGSearch2007_1-windows.exe -d C:\setup\downloads
    chmod u+x ATGSearch2007.1-.bin
    ATGSearch2007.1-.bin

     
    Press [ Enter ] until you've finished reading the license, then enter: y
    You are installing the SearchAdmin, so to accept 1 as the default, press: [ Enter ]
    If you include Chinese, Japanese or Korean languages enter: 2 otherwise press [ Enter ] to accept the default
    Enter an absolute path: C:\ATG
    To accept the path, enter: y
    Press [ Enter] to continue
    Enter the deploy share folder: C:\ATG\ATG2007.1\Search2007.1\DeployShare
    Press [ Enter] to exit

    Configure the DeployShare folder

    Command Prompt
    mkdir C:\ATG\ATG2007.1\Search2007.1\DeployShare

     
    In Windows Explorer, right click on this folder: C:\ATG\ATG2007.1\Search2007.1\DeployShare
    Select "Properties"
    Open the "Sharing" tab
    Select "Share this folder"
    Click [ Permissions ]
    Check "Allow" for Change permissions for Everyone
    Click [ OK ]
    Click [ OK ]
    C:\ATG\ATG2007.1\Search2007.1\SearchAdmin\install\search-env.bat - Notepad
    rem ********* Defines variables needed by the scripts that create the search schema
    rem ********* Set the following environment variables to override the default values defined here.
    
    REM 
    REM Convert forward slashes to backslashes in DYNAMO_HOME before trying to
    REM cd there, just in case the user is running Cygwin or something like it 
    REM and using Unix-style paths on a Windows machine.
    REM 
    set DYNAMO_HOME=%DYNAMO_HOME:/=\%
    
    rem ********* Check DYNAMO_HOME Environment variable
    if EXIST %DYNAMO_HOME%\META-INF\MANIFEST.MF goto :homeok
      echo ** Invalid setting of DYNAMO_HOME: %DYNAMO_HOME%
      exit
    :homeok
    
    rem ********* Search version
    if "%SEARCH_VERSION%" == "" set SEARCH_VERSION=2007.1
    
    rem ********* Possible values for DB_TYPE are: "db2", "mssql", "mysql", "oracle" or "solid"
    if "%SEARCH_DB_TYPE%" == "" set SEARCH_DB_TYPE=oracle
    echo SEARCH_DB_TYPE is %SEARCH_DB_TYPE%
    
    rem ********* Common parameters
    if "%SEARCH_DB_USER%" == "" set SEARCH_DB_USER=svcadmin
    if "%SEARCH_DB_PWD%" == "" set SEARCH_DB_PWD=svcadmin
    
    rem ********* MS SQL specific parameters
    if "%SEARCH_MSSQL_DB_NAME%" == "" set SEARCH_MSSQL_DB_NAME=svcadmin
    if "%SEARCH_MSSQL_DB_HOST%" == "" set SEARCH_MSSQL_DB_HOST=localhost
    
    rem ********* Oracle specific parameters
    if "%SEARCH_ORACLE_TNS%" == "" set SEARCH_ORACLE_TNS=
    
    rem ********* Solid specific parameters
    if "%SEARCH_SOLID_DB_HOST%" == "" set SEARCH_SOLID_DB_HOST=localhost
    if "%SEARCH_SOLID_DB_PORT%" == "" set SEARCH_SOLID_DB_PORT=1313
    
    rem ********* MySQL specific parameters
    if "%SEARCH_MYSQL_DB_NAME%" == "" set SEARCH_MYSQL_DB_NAME=svcadmin
    if "%SEARCH_MYSQL_DB_HOST%" == "" set SEARCH_MYSQL_DB_HOST=localhost
    
    rem ********* DB2 specific parameters
    if "%SEARCH_DB2_DB_NAME%" == "" set SEARCH_DB2_DB_NAME=svcadmin
    
    
    C:\ATG\ATG2007.1\Search2007.1\SearchAdmin\datawarehouse\install\create-atgservice-searchproject.bat - Notepad

  11. Installing ATGSearchPdfExtract 2007.1
  12. Command Prompt
    C:\setup\downloads\ATGSearchPdfExtract7_0_7-windows.exe

     
    Click [ Next ]
    Select "I accept the terms of the License Agreement"
    Click [ Next ]
    Where Would You Like to Install?: C:\ATG\ATG2007.1\Search2007.1
    Click [ Next ]
    Click [ Install ]
    Click [ Done ]

  13. Installing ATGSearchHtmlExtract 2007.1
  14. Command Prompt
    C:\setup\downloads\ATGSearchHtmlFilter8_1_9-windows.exe

     
    Click [ Next ]
    Select "I accept the terms of the License Agreement"
    Click [ Next ]
    Where Would You Like to Install?: C:\ATG\ATG2007.1\Search2007.1
    Click [ Next ]
    Click [ Install ]
    Click [ Done ]

  15. Installing ATGWebServerExtensions 2007.1
  16. Command Prompt
    unzip ATGWebServerExtensions2007_1.exe -d C:\setup\downloads
    chmod u+x ATGWebServerExtensions2007.1.bin
    ATGWebServerExtensions2007.1.bin

     
    Press [ Enter ] once
    Enter an absolute path: C:\ATG\ATG2007.1\ATGWeb2007.1
    To accept the path, enter: y
    Accept the default 'Complete' installation, press: [ Enter ]
    Accept the default 'DistributorServer' port, press: [ Enter ]
    Accept the default 'cache directory (document root directory)' (C:\ATG\ATG2007.1\ATGWeb2007.1\home\doc), press: [ Enter ]
    ATG Publishing Web Agent RMI Port: 10460
    Accept the default 'local directory (document root directory)' (C:\ATG\ATG2007.1\ATGWeb2007.1\home\doc), press: [ Enter ]
    Enter ATG Search host: localhost
    Press [ Enter] to continue
    Press [ Enter] to exit

  17. Configuring JBoss 4.2.0 GA for the selfservice1 server
  18. Create all the JBoss servers

    copy C:\jboss\server\atg C:\jboss\server/selfservice1

    Edit individual files

    C:\jboss\server\selfservice1\conf\jboss-minimal.xml - Notepad
    <?xml version="1.0" encoding="UTF-8"?>
    
    <!-- $Id: jboss-minimal.xml 60298 2007-02-05 16:01:55Z dimitris@jboss.org $ -->
    
    <!-- ===================================================================== -->
    <!--                                                                       -->
    <!--  A minimal JBoss Server Configuration                                 -->
    <!--                                                                       -->
    <!-- ===================================================================== -->
    
    <server>
    
       <!-- Load all jars from the JBOSS_DIST/server/<config>/lib directory. This
         can be restricted to specific jars by specifying them in the archives
         attribute.
        -->
       <classpath codebase="${jboss.server.lib.url:lib}" archives="*"/>
    
       <!-- ==================================================================== -->
       <!-- Log4j Initialization                                                 -->
       <!-- ==================================================================== -->
       <mbean code="org.jboss.logging.Log4jService"
          name="jboss.system:type=Log4jService,service=Logging">
          <attribute name="ConfigurationURL">resource:jboss-log4j.xml</attribute>
       </mbean>
    
       <!-- ==================================================================== -->
       <!-- Thread Pool                                                          -->
       <!-- ==================================================================== -->
       
       <!-- A Thread pool service -->
       <mbean code="org.jboss.util.threadpool.BasicThreadPool"
          name="jboss.system:service=ThreadPool">
          <attribute name="Name">JBoss System Threads</attribute>
          <attribute name="ThreadGroupName">System Threads</attribute>
          <!-- How long a thread will live without any tasks in MS -->
          <attribute name="KeepAliveTime">60000</attribute>
          <!-- The max number of threads in the pool -->
          <attribute name="MaximumPoolSize">10</attribute>
          <!-- The max number of tasks before the queue is full -->
          <attribute name="MaximumQueueSize">1000</attribute>
          <!-- The behavior of the pool when a task is added and the queue is full.
          abort - a RuntimeException is thrown
          run - the calling thread executes the task
          wait - the calling thread blocks until the queue has room
          discard - the task is silently discarded without being run
          discardOldest - check to see if a task is about to complete and enque
             the new task if possible, else run the task in the calling thread
          -->
          <attribute name="BlockingMode">run</attribute>
       </mbean>
    
       <!-- ==================================================================== -->
       <!-- JNDI                                                                 -->
       <!-- ==================================================================== -->
       
       <!-- A simple mbean wrapper around the jndi Naming object. This
       only handles an in memory instance. The NamingService uses this
       as the JNDI store and exposes it remotely.
       -->
       <mbean code="org.jnp.server.NamingBeanImpl"
          name="jboss:service=NamingBeanImpl"
          xmbean-dd="resource:xmdesc/NamingBean-xmbean.xml">
       </mbean>
       
       <mbean code="org.jboss.naming.NamingService"
          name="jboss:service=Naming"
          xmbean-dd="resource:xmdesc/NamingService-xmbean.xml">
          <!-- The call by value mode. true if all lookups are unmarshalled using
             the caller's TCL, false if in VM lookups return the value by reference.
          -->
          <attribute name="CallByValue">false</attribute>
          <!-- The listening port for the bootstrap JNP service. Set this to -1
             to run the NamingService without the JNP invoker listening port.
          -->
          <attribute name="Port">10199</attribute>
          <!-- The bootstrap JNP server bind address. This also sets the default
             RMI service bind address. Empty == all addresses
          -->
          <attribute name="BindAddress">${jboss.bind.address}</attribute>
          <!-- The port of the RMI naming service, 0 == anonymous -->
          <attribute name="RmiPort">10198</attribute>
          <!-- The RMI service bind address. Empty == all addresses
          -->
          <attribute name="RmiBindAddress">${jboss.bind.address}</attribute>
          <!-- The thread pool service used to control the bootstrap lookups -->
          <depends optional-attribute-name="LookupPool"
             proxy-type="attribute">jboss.system:service=ThreadPool</depends>
          <!-- An example of using the unifed invoker as the transport.
             <depends optional-attribute-name="InvokerProxyFactory"
             proxy-type="attribute">jboss:service=proxyFactory,type=unified,target=Naming</depends>
          -->
          <depends optional-attribute-name="Naming"
             proxy-type="attribute">jboss:service=NamingBeanImpl</depends>
       </mbean>
    
       <!-- ==================================================================== -->
       <!-- Deployment Scanning                                                  -->
       <!-- ==================================================================== -->
    
       <!-- An mbean for hot deployment/undeployment of archives.
       -->
       <mbean code="org.jboss.deployment.scanner.URLDeploymentScanner"
          name="jboss.deployment:type=DeploymentScanner,flavor=URL">
    
          <depends optional-attribute-name="Deployer">jboss.system:service=MainDeployer</depends>
    
          <!-- The URLComparator can be used to specify a deployment ordering
               for deployments found in a scanned directory.  The class specified
               must be an implementation of java.util.Comparator, it must be able
               to compare two URL objects, and it must have a no-arg constructor.
               Two deployment comparators are shipped with JBoss:
                 - org.jboss.deployment.DeploymentSorter 
                   Sorts by file extension, as follows:
                     "sar", "service.xml", "rar", "jar", "war", "wsr", "ear", "zip", 
                     "*"
                 - org.jboss.deployment.scanner.PrefixDeploymentSorter
                   If the name portion of the url begins with 1 or more digits, those 
                   digits are converted to an int (ignoring leading zeroes), and 
                   files are deployed in that order.  Files that do not start with 
                   any digits will be deployed last, and they will be sorted by
                   extension as above with DeploymentSorter.
          -->
          <attribute name="URLComparator">org.jboss.deployment.DeploymentSorter</attribute>
          
          <!-- The Filter specifies a java.io.FileFilter for scanned
               directories.  Any file not accepted by this filter will not be
               deployed.  The org.jboss.deployment.scanner.DeploymentFilter 
               rejects the following patterns:
                   "#*", "%*", ",*", ".*", "_$*", "*#", "*$", "*%", "*.BAK", 
                   "*.old", "*.orig", "*.rej", "*.bak", "*,v", "*~", ".make.state", 
                   ".nse_depinfo", "CVS", "CVS.admin", "RCS", "RCSLOG", "SCCS", 
                   "TAGS", "core", "tags"
          -->
          <attribute name="Filter">org.jboss.deployment.scanner.DeploymentFilter</attribute>
    
          <attribute name="ScanPeriod">5000</attribute>
    
          <!-- URLs are comma seperated and unprefixed arguments are considered
             file URLs and resolve relative to server home(JBOSS_DIST/server/default)
             unless the given path is absolute. Any referenced directories cannot
             be unpackaged archives, use the parent directory of the unpacked
             archive.
           -->
          <attribute name="URLs">
           deploy/
          </attribute>
          
       </mbean>
    
    </server>
    
    C:\jboss\server\selfservice1\conf\jboss-service.xml - Notepad
    <?xml version="1.0" encoding="UTF-8"?>
    
    <!-- $Id: jboss-service.xml 62434 2007-04-19 21:22:50Z dimitris@jboss.org $ -->
    
    <!-- ===================================================================== -->
    <!--  JBoss Server Configuration                                           -->
    <!-- ===================================================================== -->
    
    <server>
    
       <!-- Load all jars from the JBOSS_DIST/server/<config>/lib directory. This
         can be restricted to specific jars by specifying them in the archives
         attribute.
        -->
       <classpath codebase="${jboss.server.lib.url:lib}" archives="*"/>
    
       <!-- ==================================================================== -->
       <!-- JSR-77 Single JBoss Server Management Domain                         -->
       <!-- ==================================================================== -->
       <mbean code="org.jboss.management.j2ee.LocalJBossServerDomain"
          name="jboss.management.local:j2eeType=J2EEDomain,name=Manager">
          <attribute name="MainDeployer">jboss.system:service=MainDeployer</attribute>
          <attribute name="SARDeployer">jboss.system:service=ServiceDeployer</attribute>
          <attribute name="EARDeployer">jboss.j2ee:service=EARDeployer</attribute>
          <attribute name="EJBDeployer">jboss.ejb:service=EJBDeployer</attribute>
          <attribute name="RARDeployer">jboss.jca:service=RARDeployer</attribute>
          <attribute name="CMDeployer">jboss.jca:service=ConnectionFactoryDeployer</attribute>
          <attribute name="WARDeployer">jboss.web:service=WebServer</attribute>
          <attribute name="CARDeployer">jboss.j2ee:service=ClientDeployer</attribute>
          <attribute name="MailService">jboss:service=Mail</attribute>
          <attribute name="JMSService">jboss.mq:service=DestinationManager</attribute>
          <attribute name="JNDIService">jboss:service=Naming</attribute>
          <attribute name="JTAService">jboss:service=TransactionManager</attribute>
          <attribute name="UserTransactionService">jboss:service=ClientUserTransaction</attribute>
          <attribute name="RMI_IIOPService">jboss:service=CorbaORB</attribute>
       </mbean>
    
       <!-- ==================================================================== -->
       <!-- XMBean Persistence                                                   -->
       <!-- ==================================================================== -->
       <mbean code="org.jboss.system.pm.AttributePersistenceService"
          name="jboss:service=AttributePersistenceService"
          xmbean-dd="resource:xmdesc/AttributePersistenceService-xmbean.xml">
          <!-- the AttributePersistenceService is persistent, itself -->
    
          <!--
          <attribute name="AttributePersistenceManagerClass">org.jboss.system.pm.XMLAttributePersistenceManager</attribute>
          <attribute name="AttributePersistenceManagerConfig">
             <data-directory>data/xmbean-attrs</data-directory>
          </attribute>
          <attribute name="ApmDestroyOnServiceStop">false</attribute>
          <attribute name="VersionTag"></attribute>
          -->
       </mbean>
    
       <!-- ==================================================================== -->
       <!-- Thread Pool                                                          -->
       <!-- ==================================================================== -->
       
       <!-- A Thread pool service -->
       <mbean code="org.jboss.util.threadpool.BasicThreadPool"
          name="jboss.system:service=ThreadPool">
          <attribute name="Name">JBoss System Threads</attribute>
          <attribute name="ThreadGroupName">System Threads</attribute>
          <!-- How long a thread will live without any tasks in MS -->
          <attribute name="KeepAliveTime">60000</attribute>
          <!-- The max number of threads in the pool -->
          <attribute name="MaximumPoolSize">10</attribute>
          <!-- The max number of tasks before the queue is full -->
          <attribute name="MaximumQueueSize">1000</attribute>
          <!-- The behavior of the pool when a task is added and the queue is full.
          abort - a RuntimeException is thrown
          run - the calling thread executes the task
          wait - the calling thread blocks until the queue has room
          discard - the task is silently discarded without being run
          discardOldest - check to see if a task is about to complete and enque
             the new task if possible, else run the task in the calling thread
          -->
          <attribute name="BlockingMode">run</attribute>
       </mbean>
    
       <!-- Preload all custom editors for VMs that don't use the thread
            context class loader when searching for PropertyEditors. Uncomment
            if your JDK 1.3.0 VM fails to find JBoss PropertyEditors.
       <mbean code="org.jboss.varia.property.PropertyEditorManagerService"
         name="jboss:type=Service,name=BootstrapEditors">
         <attribute name="BootstrapEditors">
           java.math.BigDecimal=org.jboss.util.propertyeditor.BigDecimalEditor
           java.lang.Boolean=org.jboss.util.propertyeditor.BooleanEditor
           java.lang.Class=org.jboss.util.propertyeditor.ClassEditor
           java.util.Date=org.jboss.util.propertyeditor.DateEditor
           java.io.File=org.jboss.util.propertyeditor.FileEditor
           java.net.InetAddress=org.jboss.util.propertyeditor.InetAddressEditor
           java.lang.Integer=org.jboss.util.propertyeditor.IntegerEditor
           javax.management.ObjectName=org.jboss.mx.util.propertyeditor.ObjectNameEditor
           java.util.Properties=org.jboss.util.propertyeditor.PropertiesEditor
           [Ljava.lang.String;=org.jboss.util.propertyeditor.StringArrayEditor
           java.net.URL=org.jboss.util.propertyeditor.URLEditor
         </attribute>
       </mbean>
       -->
    
       <!-- ==================================================================== -->
       <!-- Log4j Initialization                                                 -->
       <!-- ==================================================================== -->
    
       <mbean code="org.jboss.logging.Log4jService"
          name="jboss.system:type=Log4jService,service=Logging"
    	  xmbean-dd="resource:xmdesc/Log4jService-xmbean.xml">
          <attribute name="ConfigurationURL">resource:jboss-log4j.xml</attribute>
          <!-- Set the org.apache.log4j.helpers.LogLog.setQuiteMode. As of log4j1.2.8
          this needs to be set to avoid a possible deadlock on exception at the
          appender level. See bug#696819.
          -->
          <attribute name="Log4jQuietMode">true</attribute>
          <!-- How frequently in seconds the ConfigurationURL is checked for changes -->
          <attribute name="RefreshPeriod">60</attribute>
       </mbean>
    
       <!-- ==================================================================== -->
       <!-- Active Alarm Table                                                   -->
       <!-- ==================================================================== -->
    
       <!--
          | The ActiveAlarmTable service is a simple JMX notification listener
          | that maintains a table with the received notifications (alarms).
          | The alarms can be acknowledged through the jmx or the web console.
          | Modify the SubscriptionList below to subscribe for any notification
          | in the system and treat it as an alarm.
          | The JMXNotificationAppender is a log4j Appender that can be configured
          | in log4j.xml, that trasforms logging events to JMX notification so they
          | can be fed back into the table. By storing the WARN or higher level logging
          | events you can have a quick view of important system faults.
          |
          | The following attributes may be set:
          |
          | MaxTableSize (default 1000)
          |  - set an upper limit to the number of stored alarms
          | LogLevel (default DEBUG)
          |  - the log level to use for received notification, can be set to NONE
          | ServerId (default jboss)
          |  - used to construct unique alarm ids
          | SubscriptionList
          |  - subscribe for the notifications to be stored in the table
    
       <mbean code="org.jboss.monitor.services.ActiveAlarmTable"
              name="jboss.monitor:service=ActiveAlarmTable">
          <attribute name="SubscriptionList">
             <subscription-list>
                <mbean name="jboss.monitor:*">
                   <notification type="jboss.alarm"/>
                   <notification type="JBOSS_MONITOR_NOTIFICATION"/>
                </mbean>
                <mbean name="jboss.system:service=Logging,type=JMXNotificationAppender"/>
             </subscription-list>
          </attribute>
       </mbean>
       -->
    
       <!-- ==================================================================== -->
       <!-- JBoss RMI Classloader - only install when available                  -->
       <!-- ==================================================================== -->
       <mbean code="org.jboss.util.property.jmx.SystemPropertyClassValue"
          name="jboss.rmi:type=RMIClassLoader">
          <attribute name="Property">java.rmi.server.RMIClassLoaderSpi</attribute>
          <attribute name="ClassName">org.jboss.system.JBossRMIClassLoader</attribute>
       </mbean>
    
       <!-- ==================================================================== -->
       <!-- Service Binding                                                      -->
       <!-- ==================================================================== -->
    
       <!-- Automatically activated when generatting the clustering environment -->
       <!-- @TESTSUITE_CLUSTER_CONFIG@ -->
    
       <!--
          | Binding service manager for port/host mapping. This is a sample
          | config that demonstrates a JBoss instances with a server name 'ports-01'
          | loading its bindings from an XML file using the ServicesStoreFactory
          | implementation returned by the XMLServicesStoreFactory.
          |
          | ServerName: The unique name assigned to a JBoss server instance for
          | lookup purposes. This allows a single ServicesStore to handle mulitiple
          | JBoss servers.
          |
          | StoreURL: The URL string passed to org.jboss.services.binding.ServicesStore
          | during initialization that specifies how to connect to the bindings store.
          | StoreFactory: The org.jboss.services.binding.ServicesStoreFactory interface
          | implementation to create to obtain the ServicesStore instance.
    
       <mbean code="org.jboss.services.binding.ServiceBindingManager"
         name="jboss.system:service=ServiceBindingManager">
         <attribute name="ServerName">ports-01</attribute>
         <attribute name="StoreURL">${jboss.home.url}/docs/examples/binding-manager/sample-bindings.xml</attribute>
         <attribute name="StoreFactoryClassName">
           org.jboss.services.binding.XMLServicesStoreFactory
         </attribute>
       </mbean>
       -->
    
       <!-- ==================================================================== -->
       <!-- Class Loading                                                        -->
       <!-- ==================================================================== -->
    
       <!-- A mini webserver used for dynamic and class and resource loading --> 
       <mbean code="org.jboss.web.WebService"
          name="jboss:service=WebService">
          <!-- The Bind address and Port -->
          <attribute name="BindAddress">${jboss.bind.address}</attribute>      
          <attribute name="Port">10183</attribute>
          <!--  The address to use for the host portion of the RMI codebase URL -->
          <attribute name="Host">${java.rmi.server.hostname}</attribute>
          <!-- Should non-EJB .class files be downloadable -->
          <attribute name="DownloadServerClasses">true</attribute>
          <!-- Should resources other than .class files be downloadable. Both
             DownloadServerClasses and DownloadResources must be true for resources
             to be downloadable. This is false by default because its generally a
             bad idea as server configuration files that container security
             information can be accessed.
           -->
          <attribute name="DownloadResources">false</attribute>
    
          <!-- Use the default thread pool for dynamic class loading -->
          <depends optional-attribute-name="ThreadPool"
             proxy-type="attribute">jboss.system:service=ThreadPool</depends>
       </mbean>
    
       <!-- ==================================================================== -->
       <!-- JNDI                                                                 -->
       <!-- ==================================================================== -->
    
       <!-- A simple mbean wrapper around the jndi Naming object. This
       only handles an in memory instance. The NamingService uses this
       as the JNDI store and exposes it remotely.
       -->
       <mbean code="org.jnp.server.NamingBeanImpl"
          name="jboss:service=NamingBeanImpl"
          xmbean-dd="resource:xmdesc/NamingBean-xmbean.xml">
       </mbean>
       
       <mbean code="org.jboss.naming.NamingService"
          name="jboss:service=Naming"
          xmbean-dd="resource:xmdesc/NamingService-xmbean.xml">
          <!-- The call by value mode. true if all lookups are unmarshalled using
             the caller's TCL, false if in VM lookups return the value by reference.
          -->
          <attribute name="CallByValue">false</attribute>
          <!-- The listening port for the bootstrap JNP service. Set this to -1
             to run the NamingService without the JNP invoker listening port.
          -->
          <attribute name="Port">10199</attribute>
          <!-- The bootstrap JNP server bind address. This also sets the default
             RMI service bind address. Empty == all addresses
          -->
          <attribute name="BindAddress">${jboss.bind.address}</attribute>
          <!-- The port of the RMI naming service, 0 == anonymous -->
          <attribute name="RmiPort">10198</attribute>
          <!-- The RMI service bind address. Empty == all addresses
          -->
          <attribute name="RmiBindAddress">${jboss.bind.address}</attribute>
          <!-- The thread pool service used to control the bootstrap lookups -->
          <depends optional-attribute-name="LookupPool"
             proxy-type="attribute">jboss.system:service=ThreadPool</depends>
          <!-- An example of using the unifed invoker as the transport.
             <depends optional-attribute-name="InvokerProxyFactory"
             proxy-type="attribute">jboss:service=proxyFactory,type=unified,target=Naming</depends>
          -->
          <depends optional-attribute-name="Naming"
             proxy-type="attribute">jboss:service=NamingBeanImpl</depends>
       </mbean>
       
       <mbean code="org.jboss.naming.JNDIView"
       	name="jboss:service=JNDIView"
       	xmbean-dd="resource:xmdesc/JNDIView-xmbean.xml">
       	<!-- The HANamingService service name -->
       	<attribute name="HANamingService">jboss:service=HAJNDI</attribute>
       </mbean>
    
       <!-- ==================================================================== -->
       <!-- Security                                                             -->
       <!-- ==================================================================== -->
    
       <mbean code="org.jboss.security.plugins.SecurityConfig"
          name="jboss.security:service=SecurityConfig">
          <attribute name="LoginConfig">jboss.security:service=XMLLoginConfig</attribute>
       </mbean>
       <mbean code="org.jboss.security.auth.login.XMLLoginConfig"
          name="jboss.security:service=XMLLoginConfig">
          <attribute name="ConfigResource">login-config.xml</attribute>
       </mbean>
    
       <!-- JAAS security manager and realm mapping -->
       <mbean code="org.jboss.security.plugins.JaasSecurityManagerService"
          name="jboss.security:service=JaasSecurityManager">
          <!-- A flag which indicates whether the SecurityAssociation server mode
          is set on service creation. This is true by default since the
          SecurityAssociation should be thread local for multi-threaded server
          operation.
          -->
          <attribute name="ServerMode">true</attribute>
          <attribute name="SecurityManagerClassName">org.jboss.security.plugins.JaasSecurityManager</attribute>
          <attribute name="DefaultUnauthenticatedPrincipal">anonymous</attribute>
          <!-- DefaultCacheTimeout: Specifies the default timed cache policy timeout
          in seconds.
          If you want to disable caching of security credentials, set this to 0 to
          force authentication to occur every time. This has no affect if the
          AuthenticationCacheJndiName has been changed from the default value.
          -->
          <attribute name="DefaultCacheTimeout">1800</attribute>
          <!-- DefaultCacheResolution: Specifies the default timed cache policy
          resolution in seconds. This controls the interval at which the cache
          current timestamp is updated and should be less than the DefaultCacheTimeout
          in order for the timeout to be meaningful. This has no affect if the
          AuthenticationCacheJndiName has been changed from the default value.
          -->
          <attribute name="DefaultCacheResolution">60</attribute>
          <!-- DeepCopySubjectMode: This set the copy mode of subjects done by the
          security managers to be deep copies that makes copies of the subject
          principals and credentials if they are cloneable. It should be set to
          true if subject include mutable content that can be corrupted when
          multiple threads have the same identity and cache flushes/logout clearing
          the subject in one thread results in subject references affecting other
          threads.
          -->
          <attribute name="DeepCopySubjectMode">false</attribute>
       </mbean>
    
       <!-- ==================================================================== -->
       <!-- Transactions                                                         -->
       <!-- ==================================================================== -->
    
       <!-- The configurable Xid factory.  For use with Oracle, set pad to true -->
       <mbean code="org.jboss.tm.XidFactory"
          name="jboss:service=XidFactory">
          <attribute name="Pad">true</attribute>
       </mbean>
    
       <!--
          | The fast in-memory transaction manager.
          | Deprecated in JBossAS v4.2. Use JBossTS JTA instead.
        - ->
       <mbean code="org.jboss.tm.TransactionManagerService"
          name="jboss:service=TransactionManager"
          xmbean-dd="resource:xmdesc/TransactionManagerService-xmbean.xml">
          <attribute name="TransactionTimeout">300</attribute>
          <!- - set to false to disable transaction demarcation over IIOP - ->
          <attribute name="GlobalIdsEnabled">true</attribute>
          <depends optional-attribute-name="XidFactory">jboss:service=XidFactory</depends>
    
          <!- - Transaction Integrity Checking - ->
          <!- - Force a rollback if another thread is associated with the transaction at commit - ->
          <!- - <depends optional-attribute-name="TransactionIntegrityFactory"
                   proxy-type="org.jboss.tm.integrity.TransactionIntegrityFactory">
             <mbean code="org.jboss.tm.integrity.FailIncompleteTransaction"
                    name="jboss:service=TransactionManager,plugin=TransactionIntegrity"/>
          </depends> - ->
       </mbean>
       -->
    
       <!-- JBoss Transactions JTA -->
       <mbean code="com.arjuna.ats.jbossatx.jta.TransactionManagerService"
          name="jboss:service=TransactionManager">
          <attribute name="TransactionTimeout">300</attribute>
          <attribute name="ObjectStoreDir">${jboss.server.data.dir}/tx-object-store</attribute> 
       </mbean>
    
       <!--
          | UserTransaction support.
        -->
       <mbean code="org.jboss.tm.usertx.server.ClientUserTransactionService"
          name="jboss:service=ClientUserTransaction"
          xmbean-dd="resource:xmdesc/ClientUserTransaction-xmbean.xml">
          <depends>
             <mbean code="org.jboss.invocation.jrmp.server.JRMPProxyFactory"
                name="jboss:service=proxyFactory,target=ClientUserTransactionFactory">
                <attribute name="InvokerName">jboss:service=invoker,type=jrmp</attribute>
                <attribute name="TargetName">jboss:service=ClientUserTransaction</attribute>
                <attribute name="JndiName">UserTransactionSessionFactory</attribute>
                <attribute name="ExportedInterface">org.jboss.tm.usertx.interfaces.UserTransactionSessionFactory</attribute>
                <attribute name="ClientInterceptors">
                   <interceptors>
                      <interceptor>org.jboss.proxy.ClientMethodInterceptor</interceptor>
                      <interceptor>org.jboss.invocation.InvokerInterceptor</interceptor>
                   </interceptors>
                </attribute>
                <depends>jboss:service=invoker,type=jrmp</depends>
             </mbean>
          </depends>
          <depends optional-attribute-name="TxProxyName">
             <mbean code="org.jboss.invocation.jrmp.server.JRMPProxyFactory"
                name="jboss:service=proxyFactory,target=ClientUserTransaction">
                <attribute name="InvokerName">jboss:service=invoker,type=jrmp</attribute>
                <attribute name="TargetName">jboss:service=ClientUserTransaction</attribute>
                <attribute name="JndiName"></attribute>
                <attribute name="ExportedInterface">org.jboss.tm.usertx.interfaces.UserTransactionSession</attribute>
                <attribute name="ClientInterceptors">
                   <interceptors>
                      <interceptor>org.jboss.proxy.ClientMethodInterceptor</interceptor>
                      <interceptor>org.jboss.invocation.InvokerInterceptor</interceptor>
                   </interceptors>
                </attribute>
                <depends>jboss:service=invoker,type=jrmp</depends>
             </mbean>
          </depends>
       </mbean>
    
       <!-- ==================================================================== -->
       <!-- Invokers to the JMX node                                             -->
       <!-- ==================================================================== -->
    
       <!-- Unified invoker (based on remoting) -->
       <mbean code="org.jboss.invocation.unified.server.UnifiedInvoker"
          name="jboss:service=invoker,type=unified">
          <!-- To turn on strict RMI exception propagation uncomment block below -->
          <!-- This will cause the UnifiedInvokerProxy to wrap RemoteExceptions  -->
          <!-- within a ServerException, otherwise will throw root exception     -->
          <!-- (not RemoteException)                                             -->
          <!-- <attribute name="StrictRMIException">true</attribute> -->
          <depends>jboss:service=TransactionManager</depends>
          <depends>jboss.remoting:service=Connector,transport=socket</depends>
       </mbean>
    
       <!-- RMI/JRMP invoker -->
       <mbean code="org.jboss.invocation.jrmp.server.JRMPInvoker"
          name="jboss:service=invoker,type=jrmp">
          <attribute name="RMIObjectPort">10144</attribute>
          <attribute name="ServerAddress">${jboss.bind.address}</attribute>
          <!--
          <attribute name="RMIClientSocketFactory">custom</attribute>
          <attribute name="RMIServerSocketFactory">custom</attribute>
          <attribute name="RMIServerSocketAddr">custom</attribute>
          <attribute name="SecurityDomain">ssl-domain-name</attribute>
          -->
          <depends>jboss:service=TransactionManager</depends>
       </mbean>
    
       <mbean code="org.jboss.invocation.local.LocalInvoker"
          name="jboss:service=invoker,type=local">
    
          <depends>jboss:service=TransactionManager</depends>
       </mbean>
    
       <mbean code="org.jboss.invocation.pooled.server.PooledInvoker"
          name="jboss:service=invoker,type=pooled">
          <attribute name="NumAcceptThreads">1</attribute>
          <attribute name="MaxPoolSize">300</attribute>
          <attribute name="ClientMaxPoolSize">300</attribute>
          <attribute name="SocketTimeout">60000</attribute>
          <attribute name="ServerBindAddress">${jboss.bind.address}</attribute>
          <attribute name="ServerBindPort">10145</attribute>
          <attribute name="ClientConnectAddress">${jboss.bind.address}</attribute>
          <attribute name="ClientConnectPort">0</attribute>
          <attribute name="ClientRetryCount">1</attribute>
          <attribute name="EnableTcpNoDelay">false</attribute>
    
          <!-- Customized socket factory attributes
          <attribute name="ClientSocketFactoryName">custom.client.factory</attribute>
          <attribute name="ServerSocketFactoryName">custom.server.factory</attribute>
          <attribute name="SslDomain">java:/jaas/pooledInvoker</attribute>
          -->
          <depends optional-attribute-name="TransactionManagerService">jboss:service=TransactionManager</depends>
       </mbean>
    
       <!-- ==================================================================== -->
       <!-- Remoting services 						                                   -->
       <!-- ==================================================================== -->
    
       <!-- For detailed description of all these configuration attributes, please see the -->
       <!-- JBoss Remoting User's Guide or wiki (http://labs.jboss.com/portal/jbossremoting/docs/guide/index.html) -->
    
        <!-- The NetworkRegistry contains all the local and remote -->
        <!-- servers that it recognizes.  The remote ones registered -->
        <!-- are dependant on the detectors running and which domains -->
        <!-- they are configured to identify.                         -->
        <mbean code="org.jboss.remoting.network.NetworkRegistry"
               name="jboss.remoting:service=NetworkRegistry"/>
    
       <!-- The Connector is the core component of the remoting server service. -->
       <!-- It binds the remoting invoker (transport protocol, callback configuration, -->
       <!-- data marshalling, etc.) with the invocation handlers.  -->
       <mbean code="org.jboss.remoting.transport.Connector"
              name="jboss.remoting:service=Connector,transport=socket"
              display-name="Socket transport Connector">
    
           <!-- Can either just specify the InvokerLocator attribute and not the invoker element in the -->
           <!-- Configuration attribute, or do the full invoker configuration in the in invoker element -->
           <!-- of the Configuration attribute. -->
    
           <!-- Remember that if you do use more than one param on the uri, will have to include as a CDATA, -->
           <!-- otherwise, parser will complain. -->
           <!-- <attribute name="InvokerLocator"><![CDATA[socket://${jboss.bind.address}:4446/?datatype=invocation]]></attribute> -->
    
          <attribute name="Configuration">
             <!-- Using the following <invoker> element instead of the InvokerLocator above because specific attributes needed. -->
             <!-- If wanted to use any of the parameters below, can just add them as parameters to the url above if wanted use the InvokerLocator attribute. -->
             <config>
                <!-- Other than transport type and handler, none of these configurations are required (will just use defaults). -->
                <invoker transport="socket">
                   <attribute name="dataType" isParam="true">invocation</attribute>
                   <attribute name="marshaller" isParam="true">org.jboss.invocation.unified.marshall.InvocationMarshaller</attribute>
                   <attribute name="unmarshaller" isParam="true">org.jboss.invocation.unified.marshall.InvocationUnMarshaller</attribute>
                   <!-- This will be port on which the marshall loader port runs on.  -->
                   <!-- <attribute name="loaderport" isParam="true">4447</attribute> -->
                   <!-- The following are specific to socket invoker -->
                   <!-- <attribute name="numAcceptThreads">1</attribute>-->
                   <!-- <attribute name="maxPoolSize">303</attribute>-->
                   <!-- <attribute name="clientMaxPoolSize" isParam="true">304</attribute>-->
                   <attribute name="socketTimeout" isParam="true">600000</attribute>
                   <attribute name="serverBindAddress">${jboss.bind.address}</attribute>
                   <attribute name="serverBindPort">4446</attribute>
                   <!-- <attribute name="clientConnectAddress">216.23.33.2</attribute> -->
                   <!-- <attribute name="clientConnectPort">7777</attribute> -->
                   <attribute name="enableTcpNoDelay" isParam="true">true</attribute>
                   <!-- <attribute name="backlog">200</attribute>-->
                   <!-- The following is for callback configuration and is independant of invoker type -->
                   <!-- <attribute name="callbackMemCeiling">30</attribute>-->
                   <!-- indicates callback store by fully qualified class name -->
                   <!-- <attribute name="callbackStore">org.jboss.remoting.CallbackStore</attribute>-->
                   <!-- indicates callback store by object name -->
                   <!-- <attribute name="callbackStore">jboss.remoting:service=CallbackStore,type=Serializable</attribute> -->
                   <!-- config params for callback store.  if were declaring callback store via object name, -->
                   <!-- could have specified these config params there. -->
                   <!-- StoreFilePath indicates to which directory to write the callback objects. -->
                   <!-- The default value is the property value of 'jboss.server.data.dir' and if this is not set, -->
                   <!-- then will be 'data'. Will then append 'remoting' and the callback client's session id. -->
                   <!-- An example would be 'data\remoting\5c4o05l-9jijyx-e5b6xyph-1-e5b6xyph-2'. -->
                   <!-- <attribute name="StoreFilePath">callback</attribute>-->
                   <!-- StoreFileSuffix indicates the file suffix to use for the callback objects written to disk. -->
                   <!-- The default value for file suffix is 'ser'. -->
                   <!-- <attribute name="StoreFileSuffix">cst</attribute>-->
                </invoker>
    
                <!-- At least one handler is required by the connector.  If have more than one, must decalre -->
                <!-- different subsystem values.  Otherwise, all invocations will be routed to the only one -->
                <!-- that is declared. -->
                <handlers>
                   <!-- can also specify handler by fully qualified classname -->
                   <handler subsystem="invoker">jboss:service=invoker,type=unified</handler>
                </handlers>
             </config>
          </attribute>
          <depends>jboss.remoting:service=NetworkRegistry</depends>
       </mbean>
    
    
       <!-- <mbean code="org.jboss.remoting.detection.jndi.JNDIDetector"-->
       <!--      name="jboss.remoting:service=Detector,transport=jndi">-->
       <!-- host to which the detector will connect to for the JNDI server. -->
       <!-- <attribute name="Host">localhost</attribute>-->
       <!-- port to which detector will connect to for the JNDI server. -->
       <!-- <attribute name="Port">5555</attribute>-->
       <!-- context factory string used when connecting to the JNDI server. -->
       <!-- The default is org.jnp.interfaces.NamingContextFactory. -->
       <!-- <attribute name="ContextFactory">org.acme.NamingContextFactory</attribute> -->
       <!-- url package string to use when connecting to the JNDI server. -->
       <!-- The default is org.jboss.naming:org.jnp.interfaces. -->
       <!-- <attribute name="URLPackage">org.acme.naming</attribute> -->
       <!-- Sets the number of detection iterations before manually pinging -->
       <!-- remote server to make sure still alive. This is needed since remote server -->
       <!-- could crash and yet still have an entry in the JNDI server, -->
       <!-- thus making it appear that it is still there. The default value is 5. -->
       <!-- <attribute name="CleanDetectionNumber">20</attribute>-->
    
       <!-- Specifies the domains in which the detector will recognize -->
       <!-- detections.  If servers are not configured to be in these -->
       <!-- domains, they will not be added to NetworkRegistry. -->
       <!--      <attribute name="Configuration">-->
       <!--         <domains>-->
       <!--            <domain>roxanne</domain>-->
       <!--            <domain>sparky</domain>-->
       <!--         </domains>-->
       <!--      </attribute>-->
       <!--   </mbean>-->
    
    
       <!-- ==================================================================== -->
       <!-- Monitoring and Management                                            -->
       <!-- ==================================================================== -->
    
       <!-- Uncomment to enable JMX monitoring of the bean cache
       <mbean code="org.jboss.monitor.BeanCacheMonitor"
              name="jboss.monitor:name=BeanCacheMonitor"/>
       -->
    
       <!-- Uncomment to enable JMX monitoring of the entity bean locking
       <mbean code="org.jboss.monitor.EntityLockMonitor"
              name="jboss.monitor:name=EntityLockMonitor"/>
       -->
    
       <!-- ==================================================================== -->
       <!-- An MBean that is a registry for JDBC type-mapping metadata           -->
       <!-- ==================================================================== -->
    
       <mbean code="org.jboss.ejb.plugins.cmp.jdbc.metadata.MetaDataLibrary"
          name="jboss.jdbc:service=metadata"/>
    
       <!-- ==================================================================== -->
       <!-- Deployment Scanning                                                  -->
       <!-- ==================================================================== -->
    
       <!-- An mbean for hot deployment/undeployment of archives.
       -->
       <mbean code="org.jboss.deployment.scanner.URLDeploymentScanner"
          name="jboss.deployment:type=DeploymentScanner,flavor=URL">
    
          <!-- Uncomment (and comment/remove version below) to enable usage of the
            DeploymentCache
          <depends optional-attribute-name="Deployer">jboss.deployment:type=DeploymentCache</depends>
          -->
          <depends optional-attribute-name="Deployer">jboss.system:service=MainDeployer</depends>
    
          <!-- The URLComparator can be used to specify a deployment ordering
               for deployments found in a scanned directory.  The class specified
               must be an implementation of java.util.Comparator, it must be able
               to compare two URL objects, and it must have a no-arg constructor.
               Two deployment comparators are shipped with JBoss:
                 - org.jboss.deployment.DeploymentSorter
                   Sorts by file extension, as follows:
                     "sar", "service.xml", "rar", "jar", "war", "wsr", "ear", "zip",
                     "*"
                 - org.jboss.deployment.scanner.PrefixDeploymentSorter
                   If the name portion of the url begins with 1 or more digits, those
                   digits are converted to an int (ignoring leading zeroes), and
                   files are deployed in that order.  Files that do not start with
                   any digits will be deployed first, and they will be sorted by
                   extension as above with DeploymentSorter.
          -->
          <attribute name="URLComparator">org.jboss.deployment.DeploymentSorter</attribute>
    
          <!--
          <attribute name="URLComparator">org.jboss.deployment.scanner.PrefixDeploymentSorter</attribute>
          -->
    
          <!-- The FilterInstance specifies a URLLister.URLFilter for scanned
               directories. This DeploymentFilter is initialized with the given
               prefixes, suffixes and matches that define which URLs should be
               ignored.
          -->
          <attribute name="FilterInstance"
             attributeClass="org.jboss.deployment.scanner.DeploymentFilter"
             serialDataType="javaBean">
             <!-- Files starting with theses strings are ignored -->
             <property name="prefixes">#,%,\,,.,_$</property>
             <!-- Files ending with theses strings are ignored -->
             <property name="suffixes">#,$,%,~,\,v,.BAK,.bak,.old,.orig,.tmp,.rej,.sh</property>
             <!-- Files matching with theses strings are ignored -->
             <property name="matches">.make.state,.nse_depinfo,CVS,CVS.admin,RCS,RCSLOG,SCCS,TAGS,core,tags</property>
          </attribute>
    
          <!-- Frequency in milliseconds to rescan the URLs for changes -->
          <attribute name="ScanPeriod">5000</attribute>
    
          <!-- A flag to disable the scans -->
          <attribute name="ScanEnabled">true</attribute>
    
          <!-- URLs are comma separated and resolve relative to the server home URL
             unless the given path is absolute. If the URL ends in "/" it is
             considered a collection and scanned, otherwise it is simply deployed;
             this follows RFC2518 convention and allows discrimination between
             collections and directories that are simply unpacked archives.
    
             URLs may be local (file:) or remote (http:). Scanning is supported
             for remote URLs but unpacked deployment units are not.
    
             Example URLs:
                deploy/
                     scans ${jboss.server.url}/deploy/, which is local or remote
                     depending on the URL used to boot the server
                ${jboss.server.home}/deploy/
                     scans ${jboss.server.home)/deploy, which is always local
                file:/var/opt/myapp.ear
                     deploy myapp.ear from a local location
                file:/var/opt/apps/
                     scans the specified directory
                http://www.test.com/netboot/myapp.ear
                     deploys myapp.ear from a remote location
                http://www.test.com/netboot/apps/
                     scans the specified WebDAV location
           -->
          <attribute name="URLs">
             deploy/
          </attribute>
    
          <!-- Indicates if the scanner should recursively scan directories that
          contain no "." in their names. This can be used to group applications
          and services that must be deployed and that have the same
          logical function in the same directory i.e.
            deploy/JMX/
            deploy/JMS/
            ...
          -->
          <attribute name="RecursiveSearch">True</attribute>
    
       </mbean>
    
    </server>
    
    C:\jboss\server\selfservice1\deploy\jboss-web.deployer\server.xml - Notepad
    <Server>
    
      <!--APR library loader. Documentation at /docs/apr.html -->
      <Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
      <!--Initialize Jasper prior to webapps are loaded. Documentation at /docs/jasper-howto.html -->
      <Listener className="org.apache.catalina.core.JasperListener" />
    
       <!-- Use a custom version of StandardService that allows the
       connectors to be started independent of the normal lifecycle
       start to allow web apps to be deployed before starting the
       connectors.
       -->
       <Service name="jboss.web">
    
        <!-- A "Connector" represents an endpoint by which requests are received
             and responses are returned. Documentation at :
             Java HTTP Connector: /docs/config/http.html (blocking & non-blocking)
             Java AJP  Connector: /docs/config/ajp.html
             APR (HTTP/AJP) Connector: /docs/apr.html
             Define a non-SSL HTTP/1.1 Connector on port 10180
        -->
        <Connector port="10180" address="${jboss.bind.address}"    
             maxThreads="250" maxHttpHeaderSize="8192"
             emptySessionPath="true" protocol="HTTP/1.1"
             enableLookups="false" redirectPort="10143" acceptCount="100"
             connectionTimeout="20000" disableUploadTimeout="true" />
    
        <!-- Define a SSL HTTP/1.1 Connector on port 10143
             This connector uses the JSSE configuration, when using APR, the 
             connector should be using the OpenSSL style configuration
             described in the APR documentation -->
        <!--
        <Connector port="10143" protocol="HTTP/1.1" SSLEnabled="true"
                   maxThreads="150" scheme="https" secure="true"
                   clientAuth="false" sslProtocol="TLS" />
        -->
    
        <!-- Define an AJP 1.3 Connector on port 10109 -->
        <Connector port="10109" address="${jboss.bind.address}" protocol="AJP/1.3"
             emptySessionPath="true" enableLookups="false" redirectPort="10143" />
    
          <Engine name="jboss.web" defaultHost="localhost">
    
             <!-- The JAAS based authentication and authorization realm implementation
             that is compatible with the jboss 3.2.x realm implementation.
             - certificatePrincipal : the class name of the
             org.jboss.security.auth.certs.CertificatePrincipal impl
             used for mapping X509[] cert chains to a Princpal.
             - allRolesMode : how to handle an auth-constraint with a role-name=*,
             one of strict, authOnly, strictAuthOnly
               + strict = Use the strict servlet spec interpretation which requires
               that the user have one of the web-app/security-role/role-name
               + authOnly = Allow any authenticated user
               + strictAuthOnly = Allow any authenticated user only if there are no
               web-app/security-roles
             -->
             <Realm className="org.jboss.web.tomcat.security.JBossSecurityMgrRealm"
                certificatePrincipal="org.jboss.security.auth.certs.SubjectDNMapping"
                allRolesMode="authOnly"
                />
             <!-- A subclass of JBossSecurityMgrRealm that uses the authentication
             behavior of JBossSecurityMgrRealm, but overrides the authorization
             checks to use JACC permissions with the current java.security.Policy
             to determine authorized access.
             - allRolesMode : how to handle an auth-constraint with a role-name=*,
             one of strict, authOnly, strictAuthOnly
               + strict = Use the strict servlet spec interpretation which requires
               that the user have one of the web-app/security-role/role-name
               + authOnly = Allow any authenticated user
               + strictAuthOnly = Allow any authenticated user only if there are no
               web-app/security-roles
             <Realm className="org.jboss.web.tomcat.security.JaccAuthorizationRealm"
                certificatePrincipal="org.jboss.security.auth.certs.SubjectDNMapping"
                allRolesMode="authOnly"
                />
             -->
    
            <Host name="localhost"
               autoDeploy="false" deployOnStartup="false" deployXML="false"
               configClass="org.jboss.web.tomcat.security.config.JBossContextConfig"
               >
    
                <!-- Uncomment to enable request dumper. This Valve "logs interesting 
                     contents from the specified Request (before processing) and the 
                     corresponding Response (after processing). It is especially useful 
                     in debugging problems related to headers and cookies."
                -->
                <!--
                <Valve className="org.apache.catalina.valves.RequestDumperValve" />
                -->
     
                <!-- Access logger -->
                <!--
                <Valve className="org.apache.catalina.valves.AccessLogValve"
                    prefix="localhost_access_log." suffix=".log"
                    pattern="common" directory="${jboss.server.home.dir}/log" 
                    resolveHosts="false" />
                -->
    
                <!-- Uncomment to enable single sign-on across web apps
                    deployed to this host. Does not provide SSO across a cluster.     
                
                    If this valve is used, do not use the JBoss ClusteredSingleSignOn 
                    valve shown below. 
                    
                    A new configuration attribute is available beginning with
                    release 4.0.4:
                    
                    cookieDomain  configures the domain to which the SSO cookie
                                  will be scoped (i.e. the set of hosts to
                                  which the cookie will be presented).  By default
                                  the cookie is scoped to "/", meaning the host
                                  that presented it.  Set cookieDomain to a
                                  wider domain (e.g. "xyz.com") to allow an SSO
                                  to span more than one hostname.
                 -->
                <!--
                <Valve className="org.apache.catalina.authenticator.SingleSignOn" />
                -->
    
                <!-- Uncomment to enable single sign-on across web apps
                   deployed to this host AND to all other hosts in the cluster.
                
                   If this valve is used, do not use the standard Tomcat SingleSignOn
                   valve shown above.
                
                   Valve uses a JBossCache instance to support SSO credential 
                   caching and replication across the cluster.  The JBossCache 
                   instance must be configured separately.  By default, the valve 
                   shares a JBossCache with the service that supports HttpSession 
                   replication.  See the "jboss-web-cluster-service.xml" file in the 
                   server/all/deploy directory for cache configuration details.
                
                   Besides the attributes supported by the standard Tomcat
                   SingleSignOn valve (see the Tomcat docs), this version also 
                   supports the following attributes:
                
                   cookieDomain   see above
                
                   treeCacheName  JMX ObjectName of the JBossCache MBean used to 
                                  support credential caching and replication across
                                  the cluster. If not set, the default value is 
                                  "jboss.cache:service=TomcatClusteringCache", the 
                                  standard ObjectName of the JBossCache MBean used 
                                  to support session replication.
                -->
                <!--
                <Valve className="org.jboss.web.tomcat.service.sso.ClusteredSingleSignOn" />
                -->
             
                <!-- Check for unclosed connections and transaction terminated checks
                     in servlets/jsps.
                     
                     Important: The dependency on the CachedConnectionManager
                     in META-INF/jboss-service.xml must be uncommented, too
                -->
                <Valve className="org.jboss.web.tomcat.service.jca.CachedConnectionValve"
                    cachedConnectionManagerObjectName="jboss.jca:service=CachedConnectionManager"
                    transactionManagerObjectName="jboss:service=TransactionManager" />
    
             </Host>
    
          </Engine>
    
       </Service>
    
    </Server>
    
    C:\jboss\server\selfservice1\deploy\jboss-web.deployer\conf\web.xml - Notepad
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <web-app xmlns="http://java.sun.com/xml/ns/j2ee"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
        version="2.4">
    
      <!-- ======================== Introduction ============================== -->
      <!-- This document defines default values for *all* web applications      -->
      <!-- loaded into this instance of Tomcat.  As each application is         -->
      <!-- deployed, this file is processed, followed by the                    -->
      <!-- "/WEB-INF/web.xml" deployment descriptor from your own               -->
      <!-- applications.                                                        -->
      <!--                                                                      -->
      <!-- WARNING:  Do not configure application-specific resources here!      -->
      <!-- They should go in the "/WEB-INF/web.xml" file in your application.   -->
    
      <!-- =========== Common Context Params ================================== -->
      <!-- JBossInjectionProvider provides resource injection for managed beans. -->
      <!-- See JSF 1.2 spec section 5.4 for details.                             -->
      <context-param>
        <param-name>com.sun.faces.injectionProvider</param-name>
        <param-value>org.jboss.web.jsf.integration.injection.JBossInjectionProvider</param-value>
      </context-param>
    
       <!-- ================== Common filter Configuration ==================== -->
       <filter>
          <filter-name>CommonHeadersFilter</filter-name>
          <filter-class>org.jboss.web.tomcat.filters.ReplyHeaderFilter</filter-class>
          <init-param>
             <param-name>X-Powered-By</param-name>
             <param-value>Servlet 2.4; JBoss-4.2.0.GA (build: SVNTag=JBoss_4_2_0_GA date=200705111440)/Tomcat-5.5</param-value>
          </init-param>
       </filter>
    
       <filter-mapping>
          <filter-name>CommonHeadersFilter</filter-name>
          <url-pattern>/*</url-pattern>
       </filter-mapping>
    
       <!-- ================== Common Listener Configuration ==================== -->
       <listener>
          <listener-class>org.jboss.web.tomcat.security.SecurityFlushSessionListener</listener-class>
       </listener>
    
       <!-- Configures JSF for a web application if the javax.faces.webapp.FacesServlet is declared -->
       <!-- in web.xml.                                                                             -->
       <listener>
         <listener-class>org.jboss.web.jsf.integration.config.JBossJSFConfigureListener</listener-class>
       </listener>
    
       <!-- Listens to all web app lifecycle events so that @PreDestroy can be called on -->
       <!-- JSF managed beans that go out of scope.  You can comment this out if you     -->
       <!-- don't use JSF or you don't use annotations on your managed beans.            -->
       <listener>
         <listener-class>com.sun.faces.application.WebappLifecycleListener</listener-class>
       </listener>
    
    
      <!-- ================== Built In Servlet Definitions ==================== -->
    
    
      <!-- The default servlet for all web applications, that serves static     -->
      <!-- resources.  It processes all requests that are not mapped to other   -->
      <!-- servlets with servlet mappings (defined either here or in your own   -->
      <!-- web.xml file.  This servlet supports the following initialization    -->
      <!-- parameters (default values are in square brackets):                  -->
      <!--                                                                      -->
      <!--   debug               Debugging detail level for messages logged     -->
      <!--                       by this servlet.  [0]                          -->
      <!--                                                                      -->
      <!--   fileEncoding        Encoding to be used to read static resources   -->
      <!--                       [platform default]                             -->
      <!--                                                                      -->
      <!--   input               Input buffer size (in bytes) when reading      -->
      <!--                       resources to be served.  [2048]                -->
      <!--                                                                      -->
      <!--   listings            Should directory listings be produced if there -->
      <!--                       is no welcome file in this directory?  [false] -->
      <!--                       WARNING: Listings for directories with many    -->
      <!--                       entries can be slow and may consume            -->
      <!--                       significant proportions of server resources.   -->
      <!--                                                                      -->
      <!--   output              Output buffer size (in bytes) when writing     -->
      <!--                       resources to be served.  [2048]                -->
      <!--                                                                      -->
      <!--   readonly            Is this context "read only", so HTTP           -->
      <!--                       commands like PUT and DELETE are               -->
      <!--                       rejected?  [true]                              -->
      <!--                                                                      -->
      <!--   readmeFile          File name to display with the directory        -->
      <!--                       contents. [null]                               -->
      <!--                                                                      -->
      <!--   sendfileSize        If the connector used supports sendfile, this  -->
      <!--                       represents the minimal file size in KB for     -->
      <!--                       which sendfile will be used. Use a negative    -->
      <!--                       value to always disable sendfile.  [48]        -->
      <!--                                                                      -->
      <!--  For directory listing customization. Checks localXsltFile, then     -->
      <!--  globalXsltFile, then defaults to original behavior.                 -->
      <!--                                                                      -->
      <!--   localXsltFile       Make directory listings an XML doc and         -->
      <!--                       pass the result to this style sheet residing   -->
      <!--                       in that directory. This overrides              -->
      <!--                        globalXsltFile[null]                          -->
      <!--                                                                      -->
      <!--   globalXsltFile      Site wide configuration version of             -->
      <!--                       localXsltFile This argument is expected        -->
      <!--                       to be a physical file. [null]                  -->
      <!--                                                                      -->
      <!--                                                                      -->
    
        <servlet>
            <servlet-name>default</servlet-name>
            <servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class>
            <init-param>
                <param-name>debug</param-name>
                <param-value>0</param-value>
            </init-param>
            <init-param>
                <param-name>listings</param-name>
                <param-value>false</param-value>
            </init-param>
            <load-on-startup>1</load-on-startup>
        </servlet>
    
    
      <!-- The "invoker" servlet, which executes anonymous servlet classes      -->
      <!-- that have not been defined in a web.xml file.  Traditionally, this   -->
      <!-- servlet is mapped to the URL pattern "/servlet/*", but you can map   -->
      <!-- it to other patterns as well.  The extra path info portion of such a -->
      <!-- request must be the fully qualified class name of a Java class that  -->
      <!-- implements Servlet (or extends HttpServlet), or the servlet name     -->
      <!-- of an existing servlet definition.     This servlet supports the     -->
      <!-- following initialization parameters (default values are in square    -->
      <!-- brackets):                                                           -->
      <!--                                                                      -->
      <!--   debug               Debugging detail level for messages logged     -->
      <!--                       by this servlet.  [0]                          -->
    
    <!--
        <servlet>
            <servlet-name>invoker</servlet-name>
            <servlet-class>
              org.apache.catalina.servlets.InvokerServlet
            </servlet-class>
            <init-param>
                <param-name>debug</param-name>
                <param-value>0</param-value>
            </init-param>
            <load-on-startup>2</load-on-startup>
        </servlet>
    -->
    
    
      <!-- The JSP page compiler and execution servlet, which is the mechanism  -->
      <!-- used by Tomcat to support JSP pages.  Traditionally, this servlet    -->
      <!-- is mapped to the URL pattern "*.jsp".  This servlet supports the     -->
      <!-- following initialization parameters (default values are in square    -->
      <!-- brackets):                                                           -->
      <!--                                                                      -->
      <!--   checkInterval       If development is false and checkInterval is   -->
      <!--                       greater than zero, background compilations are -->
      <!--                       enabled. checkInterval is the time in seconds  -->
      <!--                       between checks to see if a JSP page needs to   -->
      <!--                       be recompiled. [0]                             -->
      <!--                                                                      -->
      <!--   modificationTestInterval                                           -->
      <!--                       Causes a JSP (and its dependent files) to not  -->
      <!--                       be checked for modification during the         -->
      <!--                       specified time interval (in seconds) from the  -->
      <!--                       last time the JSP was checked for              -->
      <!--                       modification. A value of 0 will cause the JSP  -->
      <!--                       to be checked on every access.                 -->
      <!--                       Used in development mode only. [4]             -->
      <!--                                                                      -->
      <!--   compiler            Which compiler Ant should use to compile JSP   -->
      <!--                       pages.  See the Ant documentation for more     -->
      <!--                       information.                                   -->
      <!--                                                                      -->
      <!--   classdebuginfo      Should the class file be compiled with         -->
      <!--                       debugging information?  [true]                 -->
      <!--                                                                      -->
      <!--   classpath           What class path should I use while compiling   -->
      <!--                       generated servlets?  [Created dynamically      -->
      <!--                       based on the current web application]          -->
      <!--                                                                      -->
      <!--   development         Is Jasper used in development mode? If true,   -->
      <!--                       the frequency at which JSPs are checked for    -->
      <!--                       modification may be specified via the          -->
      <!--                       modificationTestInterval parameter. [true]     -->
      <!--                                                                      -->
      <!--   enablePooling       Determines whether tag handler pooling is      -->
      <!--                       enabled  [true]                                -->
      <!--                                                                      -->
      <!--   fork                Tell Ant to fork compiles of JSP pages so that -->
      <!--                       a separate JVM is used for JSP page compiles   -->
      <!--                       from the one Tomcat is running in. [true]      -->
      <!--                                                                      -->
      <!--   ieClassId           The class-id value to be sent to Internet      -->
      <!--                       Explorer when using <jsp:plugin> tags.         -->
      <!--                       [clsid:8AD9C840-044E-11D1-B3E9-00805F499D93]   -->
      <!--                                                                      -->
      <!--   javaEncoding        Java file encoding to use for generating java  -->
      <!--                       source files. [UTF8]                           -->
      <!--                                                                      -->
      <!--   keepgenerated       Should we keep the generated Java source code  -->
      <!--                       for each page instead of deleting it? [true]   -->
      <!--                                                                      -->
      <!--   mappedfile          Should we generate static content with one     -->
      <!--                       print statement per input line, to ease        -->
      <!--                       debugging?  [true]                             -->
      <!--                                                                      -->
      <!--   trimSpaces          Should white spaces in template text between   -->
      <!--                       actions or directives be trimmed?  [false]     -->
      <!--                                                                      -->
      <!--   suppressSmap        Should the generation of SMAP info for JSR45   -->
      <!--                       debugging be suppressed?  [false]              -->
      <!--                                                                      -->
      <!--   dumpSmap            Should the SMAP info for JSR45 debugging be    -->
      <!--                       dumped to a file? [false]                      -->
      <!--                       False if suppressSmap is true                  -->
      <!--                                                                      -->
      <!--   genStrAsCharArray   Should text strings be generated as char       -->
      <!--                       arrays, to improve performance in some cases?  -->
      <!--                       [false]                                        -->
      <!--                                                                      -->
      <!--   errorOnUseBeanInvalidClassAttribute                                -->
      <!--                       Should Jasper issue an error when the value of -->
      <!--                       the class attribute in an useBean action is    -->
      <!--                       not a valid bean class?  [true]                -->
      <!--                                                                      -->
      <!--   scratchdir          What scratch directory should we use when      -->
      <!--                       compiling JSP pages?  [default work directory  -->
      <!--                       for the current web application]               -->
      <!--                                                                      -->
      <!--   xpoweredBy          Determines whether X-Powered-By response       -->
      <!--                       header is added by generated servlet  [false]  -->
      <!--                                                                      -->
      <!--   compilerTargetVM    Compiler target VM                             -->  
      <!--                       default is System.properties                   -->
      <!--                        java.specification.version > 1.4              -->
      <!--                        [1.5] else [1.4]                              -->
      <!--                                                                      -->
      <!--   compilerSourceVM    Compiler source VM                             -->
      <!--                       default is System.properties                   -->
      <!--                        java.specification.version > 1.4              -->
      <!--                        [1.5] else [1.4]                              -->
      <!--                                                                      -->
      <!-- If you wish to use Jikes to compile JSP pages:                       -->
      <!--   Please see the "Using Jikes" section of the Jasper-HowTo           -->
      <!--   page in the Tomcat documentation.                                  -->
    
        <servlet>
            <servlet-name>jsp</servlet-name>
            <servlet-class>org.apache.jasper.servlet.JspServlet</servlet-class>
            <init-param>
                <param-name>fork</param-name>
                <param-value>false</param-value>
            </init-param>
            <init-param>
                <param-name>xpoweredBy</param-name>
                <param-value>false</param-value>
            </init-param>
    
            <!-- Use a custom options class to allow the shared tag lib descriptors
             to be loaded from jars in the tomcat sar conf/tlds directory. The
             standard options implementation can only find taglibs based on the
             class loader classpath.
            -->
            <init-param>
               <param-name>engineOptionsClass</param-name>
               <param-value>org.jboss.web.tomcat.service.jasper.JspServletOptions</param-value>
            </init-param>
            <!-- Specify the jars relative to the jbossweb-tomcat6.sar that should
              be scanned for common tag lib descriptors to include in every war
              deployment.
            -->
            <init-param>
               <description>JSF standard tlds</description>
               <param-name>tagLibJar0</param-name>
               <param-value>jsf-libs/jsf-impl.jar</param-value>
            </init-param>
            <init-param>
               <description>JSTL standard tlds</description>
               <param-name>tagLibJar1</param-name>
               <param-value>jstl.jar</param-value>
            </init-param>
    
            <load-on-startup>3</load-on-startup>
        </servlet>
    
    
      <!-- NOTE: An SSI Filter is also available as an alternative SSI          -->
      <!-- implementation. Use either the Servlet or the Filter but NOT both.   -->
      <!--                                                                      -->
      <!-- Server Side Includes processing servlet, which processes SSI         -->
      <!-- directives in HTML pages consistent with similar support in web      -->
      <!-- servers like Apache.  Traditionally, this servlet is mapped to the   -->
      <!-- URL pattern "*.shtml".  This servlet supports the following          -->
      <!-- initialization parameters (default values are in square brackets):   -->
      <!--                                                                      -->
      <!--   buffered            Should output from this servlet be buffered?   -->
      <!--                       (0=false, 1=true)  [0]                         -->
      <!--                                                                      -->
      <!--   debug               Debugging detail level for messages logged     -->
      <!--                       by this servlet.  [0]                          -->
      <!--                                                                      -->
      <!--   expires             The number of seconds before a page with SSI   -->
      <!--                       directives will expire.  [No default]          -->
      <!--                                                                      -->
      <!--   isVirtualWebappRelative                                            -->
      <!--                       Should "virtual" paths be interpreted as       -->
      <!--                       relative to the context root, instead of       -->
      <!--                       the server root?  (0=false, 1=true) [0]        -->
      <!--                                                                      -->
      <!--   inputEncoding       The encoding to assume for SSI resources if    -->
      <!--                       one is not available from the resource.        -->
      <!--                       [Platform default]                             -->
      <!--                                                                      -->
      <!--   outputEncoding      The encoding to use for the page that results  -->
      <!--                       from the SSI processing. [UTF-8]               -->
      <!--                                                                      -->
      <!--                                                                      -->
      <!-- IMPORTANT: To use the SSI servlet, you also need to rename the       -->
      <!--            $CATALINA_HOME/server/lib/servlets-ssi.renametojar file   -->
      <!--            to $CATALINA_HOME/server/lib/servlets-ssi.jar             -->
    
    <!--
        <servlet>
            <servlet-name>ssi</servlet-name>
            <servlet-class>
              org.apache.catalina.ssi.SSIServlet
            </servlet-class>
            <init-param>
              <param-name>buffered</param-name>
              <param-value>1</param-value>
            </init-param>
            <init-param>
              <param-name>debug</param-name>
              <param-value>0</param-value>
            </init-param>
            <init-param>
              <param-name>expires</param-name>
              <param-value>666</param-value>
            </init-param>
            <init-param>
              <param-name>isVirtualWebappRelative</param-name>
              <param-value>0</param-value>
            </init-param>
            <load-on-startup>4</load-on-startup>
        </servlet>
    -->
    
    
      <!-- Common Gateway Includes (CGI) processing servlet, which supports     -->
      <!-- execution of external applications that conform to the CGI spec      -->
      <!-- requirements.  Typically, this servlet is mapped to the URL pattern  -->
      <!-- "/cgi-bin/*", which means that any CGI applications that are         -->
      <!-- executed must be present within the web application.  This servlet   -->
      <!-- supports the following initialization parameters (default values     -->
      <!-- are in square brackets):                                             -->
      <!--                                                                      -->
      <!--   cgiPathPrefix        The CGI search path will start at             -->
      <!--                        webAppRootDir + File.separator + this prefix. -->
      <!--                        [WEB-INF/cgi]                                 -->
      <!--                                                                      -->
      <!--   debug                Debugging detail level for messages logged    -->
      <!--                        by this servlet.  [0]                         -->
      <!--                                                                      -->
      <!--   executable           Name of the exectuable used to run the        -->
      <!--                        script. [perl]                                -->
      <!--                                                                      -->
      <!--   parameterEncoding    Name of parameter encoding to be used with    -->
      <!--                        CGI servlet.                                  -->
      <!--                        [System.getProperty("file.encoding","UTF-8")] -->
      <!--                                                                      -->
      <!--   passShellEnvironment Should the shell environment variables (if    -->
      <!--                        any) be passed to the CGI script? [false]     -->
      <!--                                                                      -->
      <!-- IMPORTANT: To use the CGI servlet, you also need to rename the       -->
      <!--            $CATALINA_HOME/server/lib/servlets-cgi.renametojar file   -->
      <!--            to $CATALINA_HOME/server/lib/servlets-cgi.jar             -->
    
    <!--
        <servlet>
            <servlet-name>cgi</servlet-name>
            <servlet-class>org.apache.catalina.servlets.CGIServlet</servlet-class>
            <init-param>
              <param-name>debug</param-name>
              <param-value>0</param-value>
            </init-param>
            <init-param>
              <param-name>cgiPathPrefix</param-name>
              <param-value>WEB-INF/cgi</param-value>
            </init-param>
             <load-on-startup>5</load-on-startup>
        </servlet>
    -->
    
    
      <!-- ================ Built In Servlet Mappings ========================= -->
    
    
      <!-- The servlet mappings for the built in servlets defined above.  Note  -->
      <!-- that, by default, the CGI and SSI servlets are *not* mapped.  You    -->
      <!-- must uncomment these mappings (or add them to your application's own -->
      <!-- web.xml deployment descriptor) to enable these services              -->
    
        <!-- The mapping for the default servlet -->
        <servlet-mapping>
            <servlet-name>default</servlet-name>
            <url-pattern>/</url-pattern>
        </servlet-mapping>
    
        <!-- The mapping for the invoker servlet -->
    <!--
        <servlet-mapping>
            <servlet-name>invoker</servlet-name>
            <url-pattern>/servlet/*</url-pattern>
        </servlet-mapping>
    -->
    
        <!-- The mapping for the JSP servlet -->
        <servlet-mapping>
            <servlet-name>jsp</servlet-name>
            <url-pattern>*.jsp</url-pattern>
        </servlet-mapping>
    
        <servlet-mapping>
            <servlet-name>jsp</servlet-name>
            <url-pattern>*.jspx</url-pattern>
        </servlet-mapping>
    
        <!-- The mapping for the SSI servlet -->
    <!--
        <servlet-mapping>
            <servlet-name>ssi</servlet-name>
            <url-pattern>*.shtml</url-pattern>
        </servlet-mapping>
    -->
    
        <!-- The mapping for the CGI Gateway servlet -->
    
    <!--
        <servlet-mapping>
            <servlet-name>cgi</servlet-name>
            <url-pattern>/cgi-bin/*</url-pattern>
        </servlet-mapping>
    -->
    
    
      <!-- ================== Built In Filter Definitions ===================== -->
    
      <!-- NOTE: An SSI Servlet is also available as an alternative SSI         -->
      <!-- implementation. Use either the Servlet or the Filter but NOT both.   -->
      <!--                                                                      -->
      <!-- Server Side Includes processing filter, which processes SSI          -->
      <!-- directives in HTML pages consistent with similar support in web      -->
      <!-- servers like Apache.  Traditionally, this filter is mapped to the    -->
      <!-- URL pattern "*.shtml", though it can be mapped to "*" as it will     -->
      <!-- selectively enable/disable SSI processing based on mime types. For   -->
      <!-- this to work you will need to uncomment the .shtml mime type         -->
      <!-- definition towards the bottom of this file.                          -->
      <!-- The contentType init param allows you to apply SSI processing to JSP -->
      <!-- pages, javascript, or any other content you wish.  This filter       -->
      <!-- supports the following initialization parameters (default values are -->
      <!-- in square brackets):                                                 -->
      <!--                                                                      -->
      <!--   contentType         A regex pattern that must be matched before    -->
      <!--                       SSI processing is applied.                     -->
      <!--                       [text/x-server-parsed-html(;.*)?]              -->
      <!--                                                                      -->
      <!--   debug               Debugging detail level for messages logged     -->
      <!--                       by this servlet.  [0]                          -->
      <!--                                                                      -->
      <!--   expires             The number of seconds before a page with SSI   -->
      <!--                       directives will expire.  [No default]          -->
      <!--                                                                      -->
      <!--   isVirtualWebappRelative                                            -->
      <!--                       Should "virtual" paths be interpreted as       -->
      <!--                       relative to the context root, instead of       -->
      <!--                       the server root?  (0=false, 1=true) [0]        -->
      <!--                                                                      -->
      <!--                                                                      -->
      <!-- IMPORTANT: To use the SSI filter, you also need to rename the        -->
      <!--            $CATALINA_HOME/server/lib/servlets-ssi.renametojar file   -->
      <!--            to $CATALINA_HOME/server/lib/servlets-ssi.jar             -->
    
    <!--
        <filter>
            <filter-name>ssi</filter-name>
            <filter-class>
              org.apache.catalina.ssi.SSIFilter
            </filter-class>
            <init-param>
              <param-name>contentType</param-name>
              <param-value>text/x-server-parsed-html(;.*)?</param-value>
            </init-param>
            <init-param>
              <param-name>debug</param-name>
              <param-value>0</param-value>
            </init-param>
            <init-param>
              <param-name>expires</param-name>
              <param-value>666</param-value>
            </init-param>
            <init-param>
              <param-name>isVirtualWebappRelative</param-name>
              <param-value>0</param-value>
            </init-param>
        </filter>
    -->
    
    
      <!-- ==================== Built In Filter Mappings ====================== -->
    
      <!-- The mapping for the SSI Filter -->
    <!--
        <filter-mapping>
            <filter-name>ssi</filter-name>
            <url-pattern>*.shtml</url-pattern>
        </filter-mapping>
    -->
    
    
      <!-- ==================== Default Session Configuration ================= -->
      <!-- You can set the default session timeout (in minutes) for all newly   -->
      <!-- created sessions by modifying the value below.                       -->
    
        <session-config>
            <session-timeout>100000</session-timeout>
        </session-config>
    
    
      <!-- ===================== Default MIME Type Mappings =================== -->
      <!-- When serving static resources, Tomcat will automatically generate    -->
      <!-- a "Content-Type" header based on the resource's filename extension,  -->
      <!-- based on these mappings.  Additional mappings can be added here (to  -->
      <!-- apply to all web applications), or in your own application's web.xml -->
      <!-- deployment descriptor.                                               -->
    
        <mime-mapping>
            <extension>abs</extension>
            <mime-type>audio/x-mpeg</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>ai</extension>
            <mime-type>application/postscript</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>aif</extension>
            <mime-type>audio/x-aiff</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>aifc</extension>
            <mime-type>audio/x-aiff</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>aiff</extension>
            <mime-type>audio/x-aiff</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>aim</extension>
            <mime-type>application/x-aim</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>art</extension>
            <mime-type>image/x-jg</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>asf</extension>
            <mime-type>video/x-ms-asf</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>asx</extension>
            <mime-type>video/x-ms-asf</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>au</extension>
            <mime-type>audio/basic</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>avi</extension>
            <mime-type>video/x-msvideo</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>avx</extension>
            <mime-type>video/x-rad-screenplay</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>bcpio</extension>
            <mime-type>application/x-bcpio</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>bin</extension>
            <mime-type>application/octet-stream</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>bmp</extension>
            <mime-type>image/bmp</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>body</extension>
            <mime-type>text/html</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>cdf</extension>
            <mime-type>application/x-cdf</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>cer</extension>
            <mime-type>application/x-x509-ca-cert</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>class</extension>
            <mime-type>application/java</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>cpio</extension>
            <mime-type>application/x-cpio</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>csh</extension>
            <mime-type>application/x-csh</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>css</extension>
            <mime-type>text/css</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>dib</extension>
            <mime-type>image/bmp</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>doc</extension>
            <mime-type>application/msword</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>dtd</extension>
            <mime-type>application/xml-dtd</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>dv</extension>
            <mime-type>video/x-dv</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>dvi</extension>
            <mime-type>application/x-dvi</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>eps</extension>
            <mime-type>application/postscript</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>etx</extension>
            <mime-type>text/x-setext</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>exe</extension>
            <mime-type>application/octet-stream</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>gif</extension>
            <mime-type>image/gif</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>gtar</extension>
            <mime-type>application/x-gtar</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>gz</extension>
            <mime-type>application/x-gzip</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>hdf</extension>
            <mime-type>application/x-hdf</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>hqx</extension>
            <mime-type>application/mac-binhex40</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>htc</extension>
            <mime-type>text/x-component</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>htm</extension>
            <mime-type>text/html</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>html</extension>
            <mime-type>text/html</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>hqx</extension>
            <mime-type>application/mac-binhex40</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>ief</extension>
            <mime-type>image/ief</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>jad</extension>
            <mime-type>text/vnd.sun.j2me.app-descriptor</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>jar</extension>
            <mime-type>application/java-archive</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>java</extension>
            <mime-type>text/plain</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>jnlp</extension>
            <mime-type>application/x-java-jnlp-file</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>jpe</extension>
            <mime-type>image/jpeg</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>jpeg</extension>
            <mime-type>image/jpeg</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>jpg</extension>
            <mime-type>image/jpeg</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>js</extension>
            <mime-type>text/javascript</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>jsf</extension>
            <mime-type>text/plain</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>jspf</extension>
            <mime-type>text/plain</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>kar</extension>
            <mime-type>audio/x-midi</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>latex</extension>
            <mime-type>application/x-latex</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>m3u</extension>
            <mime-type>audio/x-mpegurl</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>mac</extension>
            <mime-type>image/x-macpaint</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>man</extension>
            <mime-type>application/x-troff-man</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>mathml</extension>
            <mime-type>application/mathml+xml</mime-type> 
        </mime-mapping>
        <mime-mapping>
            <extension>me</extension>
            <mime-type>application/x-troff-me</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>mid</extension>
            <mime-type>audio/x-midi</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>midi</extension>
            <mime-type>audio/x-midi</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>mif</extension>
            <mime-type>application/x-mif</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>mov</extension>
            <mime-type>video/quicktime</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>movie</extension>
            <mime-type>video/x-sgi-movie</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>mp1</extension>
            <mime-type>audio/x-mpeg</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>mp2</extension>
            <mime-type>audio/x-mpeg</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>mp3</extension>
            <mime-type>audio/x-mpeg</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>mpa</extension>
            <mime-type>audio/x-mpeg</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>mpe</extension>
            <mime-type>video/mpeg</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>mpeg</extension>
            <mime-type>video/mpeg</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>mpega</extension>
            <mime-type>audio/x-mpeg</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>mpg</extension>
            <mime-type>video/mpeg</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>mpv2</extension>
            <mime-type>video/mpeg2</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>ms</extension>
            <mime-type>application/x-wais-source</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>nc</extension>
            <mime-type>application/x-netcdf</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>oda</extension>
            <mime-type>application/oda</mime-type>
        </mime-mapping>
        <mime-mapping>
            <!-- OpenDocument Database -->
            <extension>odb</extension>
            <mime-type>application/vnd.oasis.opendocument.database</mime-type>
        </mime-mapping>
        <mime-mapping>
            <!-- OpenDocument Chart -->
            <extension>odc</extension>
            <mime-type>application/vnd.oasis.opendocument.chart</mime-type>
        </mime-mapping>
        <mime-mapping>
            <!-- OpenDocument Formula -->
            <extension>odf</extension>
            <mime-type>application/vnd.oasis.opendocument.formula</mime-type>
        </mime-mapping>
        <mime-mapping>
            <!-- OpenDocument Drawing -->
            <extension>odg</extension>
            <mime-type>application/vnd.oasis.opendocument.graphics</mime-type>
        </mime-mapping>
        <mime-mapping>
            <!-- OpenDocument Image -->
            <extension>odi</extension>
            <mime-type>application/vnd.oasis.opendocument.image</mime-type>
        </mime-mapping>
        <mime-mapping>
            <!-- OpenDocument Master Document -->
            <extension>odm</extension>
            <mime-type>application/vnd.oasis.opendocument.text-master</mime-type>
        </mime-mapping>
        <mime-mapping>
            <!-- OpenDocument Presentation -->
            <extension>odp</extension>
            <mime-type>application/vnd.oasis.opendocument.presentation</mime-type>
        </mime-mapping>
        <mime-mapping>
            <!-- OpenDocument Spreadsheet -->
            <extension>ods</extension>
            <mime-type>application/vnd.oasis.opendocument.spreadsheet</mime-type>
        </mime-mapping>
        <mime-mapping>
            <!-- OpenDocument Text -->
            <extension>odt</extension>
            <mime-type>application/vnd.oasis.opendocument.text</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>ogg</extension>
            <mime-type>application/ogg</mime-type>
        </mime-mapping>
        <mime-mapping>
            <!-- OpenDocument Drawing Template -->
            <extension>otg </extension>
            <mime-type>application/vnd.oasis.opendocument.graphics-template</mime-type>
        </mime-mapping>
        <mime-mapping>
            <!-- HTML Document Template -->
            <extension>oth</extension>
            <mime-type>application/vnd.oasis.opendocument.text-web</mime-type>
        </mime-mapping>
        <mime-mapping>
            <!-- OpenDocument Presentation Template -->
            <extension>otp</extension>
            <mime-type>application/vnd.oasis.opendocument.presentation-template</mime-type>
        </mime-mapping>
        <mime-mapping>
            <!-- OpenDocument Spreadsheet Template -->
            <extension>ots</extension>
            <mime-type>application/vnd.oasis.opendocument.spreadsheet-template </mime-type>
        </mime-mapping>
        <mime-mapping>
            <!-- OpenDocument Text Template -->
            <extension>ott</extension>
            <mime-type>application/vnd.oasis.opendocument.text-template</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>pbm</extension>
            <mime-type>image/x-portable-bitmap</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>pct</extension>
            <mime-type>image/pict</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>pdf</extension>
            <mime-type>application/pdf</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>pgm</extension>
            <mime-type>image/x-portable-graymap</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>pic</extension>
            <mime-type>image/pict</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>pict</extension>
            <mime-type>image/pict</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>pls</extension>
            <mime-type>audio/x-scpls</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>png</extension>
            <mime-type>image/png</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>pnm</extension>
            <mime-type>image/x-portable-anymap</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>pnt</extension>
            <mime-type>image/x-macpaint</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>ppm</extension>
            <mime-type>image/x-portable-pixmap</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>ppt</extension>
            <mime-type>application/powerpoint</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>ps</extension>
            <mime-type>application/postscript</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>psd</extension>
            <mime-type>image/x-photoshop</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>qt</extension>
            <mime-type>video/quicktime</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>qti</extension>
            <mime-type>image/x-quicktime</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>qtif</extension>
            <mime-type>image/x-quicktime</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>ras</extension>
            <mime-type>image/x-cmu-raster</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>rdf</extension>
            <mime-type>application/rdf+xml</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>rgb</extension>
            <mime-type>image/x-rgb</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>rm</extension>
            <mime-type>application/vnd.rn-realmedia</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>roff</extension>
            <mime-type>application/x-troff</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>rtf</extension>
            <mime-type>application/rtf</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>rtx</extension>
            <mime-type>text/richtext</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>sh</extension>
            <mime-type>application/x-sh</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>shar</extension>
            <mime-type>application/x-shar</mime-type>
        </mime-mapping>
    <!--
        <mime-mapping>
            <extension>shtml</extension>
            <mime-type>text/x-server-parsed-html</mime-type>
        </mime-mapping>
    -->
        <mime-mapping>
            <extension>smf</extension>
            <mime-type>audio/x-midi</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>sit</extension>
            <mime-type>application/x-stuffit</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>snd</extension>
            <mime-type>audio/basic</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>src</extension>
            <mime-type>application/x-wais-source</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>sv4cpio</extension>
            <mime-type>application/x-sv4cpio</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>sv4crc</extension>
            <mime-type>application/x-sv4crc</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>swf</extension>
            <mime-type>application/x-shockwave-flash</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>t</extension>
            <mime-type>application/x-troff</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>tar</extension>
            <mime-type>application/x-tar</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>tcl</extension>
            <mime-type>application/x-tcl</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>tex</extension>
            <mime-type>application/x-tex</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>texi</extension>
            <mime-type>application/x-texinfo</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>texinfo</extension>
            <mime-type>application/x-texinfo</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>tif</extension>
            <mime-type>image/tiff</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>tiff</extension>
            <mime-type>image/tiff</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>tr</extension>
            <mime-type>application/x-troff</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>tsv</extension>
            <mime-type>text/tab-separated-values</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>txt</extension>
            <mime-type>text/plain</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>ulw</extension>
            <mime-type>audio/basic</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>ustar</extension>
            <mime-type>application/x-ustar</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>vxml</extension>
            <mime-type>application/voicexml+xml</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>xbm</extension>
            <mime-type>image/x-xbitmap</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>xht</extension>
            <mime-type>application/xhtml+xml</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>xhtml</extension>
            <mime-type>application/xhtml+xml</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>xml</extension>
            <mime-type>application/xml</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>xpm</extension>
            <mime-type>image/x-xpixmap</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>xsl</extension>
            <mime-type>application/xml</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>xslt</extension>
            <mime-type>application/xslt+xml</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>xul</extension>
            <mime-type>application/vnd.mozilla.xul+xml</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>xwd</extension>
            <mime-type>image/x-xwindowdump</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>wav</extension>
            <mime-type>audio/x-wav</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>svg</extension>
            <mime-type>image/svg+xml</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>svgz</extension>
            <mime-type>image/svg+xml</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>vsd</extension>
            <mime-type>application/x-visio</mime-type>
        </mime-mapping>
        <mime-mapping>
            <!-- Wireless Bitmap -->
            <extension>wbmp</extension>
            <mime-type>image/vnd.wap.wbmp</mime-type>
        </mime-mapping>
        <mime-mapping>
            <!-- WML Source -->
            <extension>wml</extension>
            <mime-type>text/vnd.wap.wml</mime-type>
        </mime-mapping>
        <mime-mapping>
            <!-- Compiled WML -->
            <extension>wmlc</extension>
            <mime-type>application/vnd.wap.wmlc</mime-type>
        </mime-mapping>
        <mime-mapping>
            <!-- WML Script Source -->
            <extension>wmls</extension>
            <mime-type>text/vnd.wap.wmlscript</mime-type>
        </mime-mapping>
        <mime-mapping>
            <!-- Compiled WML Script -->
            <extension>wmlscriptc</extension>
            <mime-type>application/vnd.wap.wmlscriptc</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>wrl</extension>
            <mime-type>x-world/x-vrml</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>Z</extension>
            <mime-type>application/x-compress</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>z</extension>
            <mime-type>application/x-compress</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>zip</extension>
            <mime-type>application/zip</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>xls</extension>
            <mime-type>application/vnd.ms-excel</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>doc</extension>
            <mime-type>application/vnd.ms-word</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>ppt</extension>
            <mime-type>application/vnd.ms-powerpoint</mime-type>
        </mime-mapping>
    
      <!-- ==================== Default Welcome File List ===================== -->
      <!-- When a request URI refers to a directory, the default servlet looks  -->
      <!-- for a "welcome file" within that directory and, if present,          -->
      <!-- to the corresponding resource URI for display.  If no welcome file   -->
      <!-- is present, the default servlet either serves a directory listing,   -->
      <!-- or returns a 404 status, depending on how it is configured.          -->
      <!--                                                                      -->
      <!-- If you define welcome files in your own application's web.xml        -->
      <!-- deployment descriptor, that list *replaces* the list configured      -->
      <!-- here, so be sure that you include any of the default values that     -->
      <!-- you wish to include.                                                 -->
    
        <welcome-file-list>
            <welcome-file>index.html</welcome-file>
            <welcome-file>index.htm</welcome-file>
            <welcome-file>index.jsp</welcome-file>
        </welcome-file-list>
    
    </web-app>
    
    C:\jboss\server\selfservice1\deploy\http-invoker.sar\META-INF\jboss-service.xml - Notepad
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE server>
    <!-- $Id: jboss-service.xml 26202 2004-11-29 16:54:36Z starksm $ -->
    
    <server>
    
      <!-- The HTTP invoker service configration
      -->
      <mbean code="org.jboss.invocation.http.server.HttpInvoker"
        name="jboss:service=invoker,type=http">
         <!-- Use a URL of the form http://<hostname>:10180/invoker/EJBInvokerServlet
          where <hostname> is InetAddress.getHostname value on which the server
          is running.
          -->
         <attribute name="InvokerURLPrefix">http://</attribute>
         <attribute name="InvokerURLSuffix">:10180/invoker/EJBInvokerServlet</attribute>
         <attribute name="UseHostName">true</attribute>
      </mbean>
    
       <!-- Expose the Naming service interface via HTTP -->
       <mbean code="org.jboss.invocation.http.server.HttpProxyFactory"
          name="jboss:service=invoker,type=http,target=Naming">
          <!-- The Naming service we are proxying -->
          <attribute name="InvokerName">jboss:service=Naming</attribute>
          <!-- Compose the invoker URL from the cluster node address -->
          <attribute name="InvokerURLPrefix">http://</attribute>
          <attribute name="InvokerURLSuffix">:10180/invoker/JMXInvokerServlet</attribute>
          <attribute name="UseHostName">true</attribute>
          <attribute name="ExportedInterface">org.jnp.interfaces.Naming</attribute>
          <attribute name="JndiName"></attribute>
          <attribute name="ClientInterceptors">
              <interceptors>
                 <interceptor>org.jboss.proxy.ClientMethodInterceptor</interceptor>
                 <interceptor>org.jboss.proxy.SecurityInterceptor</interceptor>
                 <interceptor>org.jboss.naming.interceptors.ExceptionInterceptor</interceptor>
                 <interceptor>org.jboss.invocation.InvokerInterceptor</interceptor>
              </interceptors>
          </attribute>
       </mbean>
    
       <!-- Expose the Naming service interface via clustered HTTP. This maps
       to the ReadOnlyJNDIFactory servlet URL
       -->
       <mbean code="org.jboss.invocation.http.server.HttpProxyFactory"
          name="jboss:service=invoker,type=http,target=Naming,readonly=true">
          <attribute name="InvokerName">jboss:service=Naming</attribute>
          <attribute name="InvokerURLPrefix">http://</attribute>
          <attribute name="InvokerURLSuffix">:10180/invoker/readonly/JMXInvokerServlet</attribute>
          <attribute name="UseHostName">true</attribute>
          <attribute name="ExportedInterface">org.jnp.interfaces.Naming</attribute>
          <attribute name="JndiName"></attribute>
          <attribute name="ClientInterceptors">
              <interceptors>
                 <interceptor>org.jboss.proxy.ClientMethodInterceptor</interceptor>
                 <interceptor>org.jboss.proxy.SecurityInterceptor</interceptor>
                 <interceptor>org.jboss.naming.interceptors.ExceptionInterceptor</interceptor>
                 <interceptor>org.jboss.invocation.InvokerInterceptor</interceptor>
              </interceptors>
          </attribute>
       </mbean>
    </server>
    
    C:\jboss\server\selfservice1\deploy\jms\uil2-service.xml - Notepad
    <?xml version="1.0" encoding="UTF-8"?>
    
    <!-- $Id: uil2-service.xml 35297 2005-08-25 15:03:20Z starksm $ -->
    
    <server>
    
      <!-- JBossMQ using the Unified Invocation Layer
           All communication uses one socket connection -->
    
      <mbean code="org.jboss.mq.il.uil2.UILServerILService"
    	 name="jboss.mq:service=InvocationLayer,type=UIL2">
    
        <!-- The server chain -->
        <depends optional-attribute-name="Invoker">jboss.mq:service=Invoker</depends>
        <!-- JNDI binding -->
        <attribute name="ConnectionFactoryJNDIRef">ConnectionFactory</attribute>
        <!-- JNDI binding for XA -->
        <attribute name="XAConnectionFactoryJNDIRef">XAConnectionFactory</attribute>
        <!-- The bind address -->
        <attribute name="BindAddress">${jboss.bind.address}</attribute>
        <!-- The bind port -->
        <attribute name="ServerBindPort">10193</attribute>
        <!-- The ping period in millis -->
        <attribute name="PingPeriod">60000</attribute>
        <!-- Whether tcp/ip does not wait for buffer fills -->
        <attribute name="EnableTcpNoDelay">true</attribute>
        <!-- Used to disconnect the client on the serverside if there is no activity -->
        <!-- Ensure this is greater than the ping period -->
        <attribute name="ReadTimeout">120000</attribute>
        <!-- Used to disconnect the client on the clientside if there is no activity -->
        <!-- Ensure this is greater than the ping period -->
        <attribute name="ClientReadTimeout">120000</attribute>
        <!-- The size of the buffer (in bytes) wrapping the socket -->
        <!-- The buffer is flushed after each request -->
        <attribute name="BufferSize">2048</attribute>
        <!-- Large messages may block the ping/pong -->
        <!-- A pong is simulated after each chunk (in bytes) for both reading and writing -->
        <!-- It must be larger than the buffer size -->
        <attribute name="ChunkSize">1000000</attribute>
      </mbean>
    
      <!-- Aliases UIL -> UIL2 for backwards compatibility 
           the deprecated UIL deployment can be found in docs/examples/jca -->
       <mbean code="org.jboss.naming.NamingAlias" name="jboss.mq:service=InvocationLayer,type=UIL">
          <attribute name="FromName">UILConnectionFactory</attribute>
          <attribute name="ToName">ConnectionFactory</attribute>
          <depends>jboss:service=Naming</depends>
       </mbean>
       <mbean code="org.jboss.naming.NamingAlias" name="jboss.mq:service=InvocationLayer,type=UILXA">
          <attribute name="FromName">UILXAConnectionFactory</attribute>
          <attribute name="ToName">XAConnectionFactory</attribute>
          <depends>jboss:service=Naming</depends>
       </mbean>
       <mbean code="org.jboss.naming.NamingAlias"
          name="jboss.mq:service=InvocationLayer,type=UIL2,alias=UIL2ConnectionFactory">
          <attribute name="FromName">UIL2ConnectionFactory</attribute>
          <attribute name="ToName">ConnectionFactory</attribute>
          <depends>jboss:service=Naming</depends>
       </mbean>
       <mbean code="org.jboss.naming.NamingAlias"
          name="jboss.mq:service=InvocationLayer,type=UIL2XA,alias=UIL2XAConnectionFactory">
          <attribute name="FromName">UIL2XAConnectionFactory</attribute>
          <attribute name="ToName">XAConnectionFactory</attribute>
          <depends>jboss:service=Naming</depends>
       </mbean>
    
       <!--
          Two JNDI bindings that act like jms client connections remotely
          but have j2ee defined semantics inside JBoss
       -->
       <mbean code="org.jboss.naming.LinkRefPairService"
              name="jboss.jms:alias=QueueConnectionFactory">
          <attribute name="JndiName">QueueConnectionFactory</attribute>
          <attribute name="RemoteJndiName">ConnectionFactory</attribute>
          <attribute name="LocalJndiName">java:/JmsXA</attribute>
          <depends>jboss:service=Naming</depends>
       </mbean>
       <mbean code="org.jboss.naming.LinkRefPairService"
              name="jboss.jms:alias=TopicConnectionFactory">
          <attribute name="JndiName">TopicConnectionFactory</attribute>
          <attribute name="RemoteJndiName">ConnectionFactory</attribute>
          <attribute name="LocalJndiName">java:/JmsXA</attribute>
          <depends>jboss:service=Naming</depends>
       </mbean>
    </server>
    
    C:\jboss\server\selfservice1\deploy\ejb3.deployer\META-INF\jboss-service.xml - Notepad
    <?xml version="1.0" encoding="UTF-8"?>
    <!--
       JBoss EJB3Deployer
       
       $Id: jboss-service.xml 61039 2007-03-02 01:17:31Z bdecoste $
    -->
    <server>
    
       <mbean code="org.jboss.remoting.transport.Connector"
              name="jboss.remoting:type=Connector,name=DefaultEjb3Connector,handler=ejb3">
          <depends>jboss.aop:service=AspectDeployer</depends>
          <attribute name="InvokerLocator">socket://${jboss.bind.address}:10173</attribute>
          <attribute name="Configuration">
             <handlers>
                <handler subsystem="AOP">org.jboss.aspects.remoting.AOPRemotingInvocationHandler</handler>
             </handlers>
          </attribute>
       </mbean>
    
       <mbean code="org.jboss.ejb3.JarsIgnoredForScanning" name="jboss.ejb3:service=JarsIgnoredForScanning">
          <attribute name="IgnoredJars">
             snmp-adaptor.jar,
             otherimages.jar,
             applet.jar,
             jcommon.jar,
             console-mgr-classes.jar,
             jfreechart.jar,
             juddi-service.jar,
             wsdl4j.jar,
             commons-collections.jar,
             commons-pool.jar,
             juddi.jar,
             commons-discovery.jar,
             uddi4j.jar,
             axis.jar,
             commons-dbcp.jar,
             jboss-juddiaxis.jar,
             trove.jar,
             javassist.jar,
             jboss-aop-jdk50.jar,
             jboss-aspect-library-jdk50.jar,
             ejb3-persistence.jar,
             commons-validator-1.1.3.jar,
             commons-collections.jar,
             commons-fileupload.jar,
             commons-pool.jar,
             hibernate-entitymanager.jar,
             jboss-ejb3x.jar,
             commons-digester-1.6.jar,
             cglib-2.1.1.jar,
             commons-discovery.jar,
             jboss-annotations-ejb3.jar,
             jaxen-1.1-beta-4.jar,
             hibernate-annotations.jar,
             commons-httpclient.jar,
             commons-logging.jar,
             commons-vfs.jar,
             hibernate3.jar,
             commons-logging-api.jar,
             asm.jar,
             asm-attrs.jar,
             commons-lang-2.0.jar,
             commons-beanutils.jar,
             jboss-ejb3.jar,
             dom4j.jar,
             commons-codec-1.2.jar,
             wsdl4j.jar,
             xmlsec.jar,
             jbossws.jar,
             jboss-bean-deployer.jar,
             jboss-microcontainer.jar,
             jboss-dependency.jar,
             jboss-container.jar,
             tomcat-coyote.jar,
             commons-collections.jar,
             myfaces.jar,
             jstl.jar,
             commons-digester-1.6.jar,
             myfaces-impl.jar,
             commons-beanutils.jar,
             myfaces-jsf-api.jar,
             commons-codec-1.2.jar,
             catalina-optional.jar,
             tomcat-util.jar,
             jasper-compiler.jar,
             commons-el.jar,
             jasper-compiler-jdt.jar,
             tomcat-http.jar,
             catalina-manager.jar,
             jasper-runtime.jar,
             tomcat55-service.jar,
             servlets-invoker.jar,
             catalina.jar,
             naming-resources.jar,
             servlets-default.jar,
             tomcat-ajp.jar,
             commons-modeler.jar,
             tomcat-apr.jar,
             servlets-webdav.jar
          </attribute>
       </mbean>
    
       <mbean code="org.jboss.ejb3.EJB3Deployer" name="jboss.ejb3:service=EJB3Deployer" xmbean-dd="">
    
          <attribute name="DeployEjb3ExtensionOnly">false</attribute>
    
          <!-- Inline XMBean Descriptor BEGIN -->
          <xmbean>
             <description>The EJB3Deployer responsible for ejb3 deployment</description>
             <descriptors>
                <interceptors>
                   <!-- comment out DynamicInterceptor to disable dynamic addition of interceptors -->
                   <interceptor code="org.jboss.mx.interceptor.DynamicInterceptor"/>
                </interceptors>
             </descriptors>
             <class>org.jboss.ejb3.EJB3Deployer</class>
    
             <!-- ServiceMBean attributes -->
             <attribute access="read-only" getMethod="getName">
                <description>The class name of the MBean</description>
                <name>Name</name>
                <type>java.lang.String</type>
             </attribute>
    
             <attribute access="read-only" getMethod="getState">
                <description>The status of the MBean</description>
                <name>State</name>
                <type>int</type>
             </attribute>
    
             <attribute access="read-only" getMethod="getStateString">
                <description>The status of the MBean in text form</description>
                <name>StateString</name>
                <type>java.lang.String</type>
             </attribute>
    
             <!-- SubDeployerMBean attributes -->
             <attribute access="read-only" getMethod="getServiceName">
                <description>The ObjectName of the Subdeployer</description>
                <name>ServiceName</name>
                <type>javax.management.ObjectName</type>
             </attribute>
    
             <attribute access="read-write" getMethod="getSuffixes" setMethod="setSuffixes">
                <description>The suffixes of interest to this deployer</description>
                <name>Suffixes</name>
                <type>[Ljava.lang.String;</type>
             </attribute>
    
             <attribute access="read-write" getMethod="getRelativeOrder" setMethod="setRelativeOrder">
                <description>The relative order of the suffixes in the global suffixes list</description>
                <name>RelativeOrder</name>
                <type>int</type>
             </attribute>
    
             <!-- EJB3DeployerMBean attributes -->
             <attribute access="read-only" getMethod="getDefaultProperties">
                <name>DefaultProperties</name>
                <type>java.util.Properties</type>
             </attribute>
    
             <attribute access="read-write" getMethod="getDeployEjb3ExtensionOnly" setMethod="setDeployEjb3ExtensionOnly">
                <description>If true, .jars will not be examined for annotations, 3.0 descriptors</description>
                <name>DeployEjb3ExtensionOnly</name>
                <type>boolean</type>
             </attribute>
    
             <attribute access="write-only" setMethod="setJarsIgnoredForScanning">
                <description>mbean that has list of jars to ignore</description>
                <name>JarsIgnoredForScanning</name>
                <type>org.jboss.ejb3.JarsIgnoredForScanningMBean</type>
             </attribute>
    
             <!-- ServiceMBean operations -->
             <operation>
                <description>Standard MBean lifecycle method</description>
                <name>create</name>
             </operation>
    
             <operation>
                <description>The start lifecycle operation</description>
                <name>start</name>
             </operation>
    
             <operation>
                <description>The stop lifecycle operation</description>
                <name>stop</name>
             </operation>
    
             <operation>
                <description>The destroy lifecycle operation</description>
                <name>destroy</name>
             </operation>
    
             <operation>
                <description>The detyped lifecycle operation (for internal use only)</description>
                <name>jbossInternalLifecycle</name>
                <parameter>
                   <description>The lifecycle operation</description>
                   <name>method</name>
                   <type>java.lang.String</type>
                </parameter>
                <return-type>void</return-type>
             </operation>
    
             <!-- SubDeployerMBean operations -->
             <operation>
                <description>Accept a module for deployment</description>
                <name>accepts</name>
                <parameter>
                   <name>info</name>
                   <type>org.jboss.deployment.DeploymentInfo</type>
                </parameter>
                <return-type>boolean</return-type>
             </operation>
    
             <operation>
                <description>Initialize deployment step</description>
                <name>init</name>
                <parameter>
                   <name>info</name>
                   <type>org.jboss.deployment.DeploymentInfo</type>
                </parameter>
             </operation>
    
             <operation>
                <description>Create deployment step</description>
                <name>create</name>
                <parameter>
                   <name>info</name>
                   <type>org.jboss.deployment.DeploymentInfo</type>
                </parameter>
             </operation>
    
             <operation>
                <description>Start deployment step</description>
                <name>start</name>
                <parameter>
                   <name>info</name>
                   <type>org.jboss.deployment.DeploymentInfo</type>
                </parameter>
             </operation>
    
             <operation>
                <description>Stop deployment step</description>
                <name>stop</name>
                <parameter>
                   <name>info</name>
                   <type>org.jboss.deployment.DeploymentInfo</type>
                </parameter>
             </operation>
    
             <operation>
                <description>Destroy deployment step</description>
                <name>destroy</name>
                <parameter>
                   <name>info</name>
                   <type>org.jboss.deployment.DeploymentInfo</type>
                </parameter>
             </operation>
    
             <!-- Interceptable operations -->
             <operation>
                <description>Add dynamically an operation interceptor</description>
                <name>addOperationInterceptor</name>
                <parameter>
                   <description>The Interceptor</description>
                   <name>interceptor</name>
                   <type>org.jboss.mx.interceptor.Interceptor</type>
                </parameter>
             </operation>
    
             <operation>
                <description>Remove dynamically an operation interceptor</description>
                <name>removeOperationInterceptor</name>
                <parameter>
                   <description>The Interceptor</description>
                   <name>interceptor</name>
                   <type>org.jboss.mx.interceptor.Interceptor</type>
                </parameter>
             </operation>
          </xmbean>
          <!-- Inline XMBean Descriptor END -->
    
          <depends>jboss.aop:service=AspectDeployer</depends>
          <depends>jboss.ejb:service=EJBDeployer</depends>
          <depends optional-attribute-name="JarsIgnoredForScanning" proxy-type="org.jboss.ejb3.JarsIgnoredForScanningMBean">jboss.ejb3:service=JarsIgnoredForScanning</depends>
       </mbean>
    
    </server>
    
    C:\jboss\server\selfservice1\deploy\atgselfservice-ds.xml - Notepad
    <?xml version="1.0" encoding="UTF-8"?>
    <datasources>
      <local-tx-datasource>
        <jndi-name>ATGSelfServiceDS</jndi-name>
        <connection-url>jdbc:oracle:thin:@localhost:1521:orcl</connection-url>
        <driver-class>oracle.jdbc.driver.OracleDriver</driver-class>
        <user-name>svcadmin</user-name>
        <password>svcadmin</password>
        <min-pool-size>5</min-pool-size>
        <max-pool-size>20</max-pool-size>
        <idle-timeout-minutes>0</idle-timeout-minutes>
        <track-statements/>
        <metadata>
           <type-mapping>Oracle</type-mapping>
        </metadata>
      </local-tx-datasource>
    </datasources>
    C:\jboss\server\selfservice1\deploy\atgknowledge-ds.xml - Notepad
    <?xml version="1.0" encoding="UTF-8"?>
    <datasources>
      <local-tx-datasource>
        <jndi-name>ATGKnowledgeDS</jndi-name>
        <connection-url>jdbc:oracle:thin:@localhost:1521:orcl</connection-url>
        <driver-class>oracle.jdbc.driver.OracleDriver</driver-class>
        <user-name>svcagent</user-name>
        <password>svcagent</password>
        <min-pool-size>5</min-pool-size>
        <max-pool-size>20</max-pool-size>
        <idle-timeout-minutes>0</idle-timeout-minutes>
        <track-statements/>
        <metadata>
           <type-mapping>Oracle</type-mapping>
        </metadata>
      </local-tx-datasource>
    </datasources>
    C:\jboss\server\selfservice1\deploy\atgsearch-ds.xml - Notepad
    <?xml version="1.0" encoding="UTF-8"?>
    <datasources>
      <local-tx-datasource>
        <jndi-name>ATGSearchDS</jndi-name>
        <connection-url>jdbc:oracle:thin:@localhost:1521:orcl</connection-url>
        <driver-class>oracle.jdbc.driver.OracleDriver</driver-class>
        <user-name>svcsearch</user-name>
        <password>svcsearch</password>
        <min-pool-size>5</min-pool-size>
        <max-pool-size>20</max-pool-size>
        <idle-timeout-minutes>0</idle-timeout-minutes>
        <track-statements/>
        <metadata>
           <type-mapping>Oracle</type-mapping>
        </metadata>
      </local-tx-datasource>
    </datasources>
    C:\jboss\server\selfservice1\deploy\atgpublishing-ds.xml - Notepad
    <?xml version="1.0" encoding="UTF-8"?>
    <datasources>
      <local-tx-datasource>
        <jndi-name>ATGResponseManagementDS</jndi-name>
        <connection-url>jdbc:oracle:thin:@localhost:1521:orcl</connection-url>
        <driver-class>oracle.jdbc.driver.OracleDriver</driver-class>
        <user-name>publishing</user-name>
        <password>publishing</password>
        <min-pool-size>5</min-pool-size>
        <max-pool-size>20</max-pool-size>
        <idle-timeout-minutes>0</idle-timeout-minutes>
        <track-statements/>
        <metadata>
           <type-mapping>Oracle</type-mapping>
        </metadata>
      </local-tx-datasource>
    </datasources>

  19. Configuring JBoss 4.2.0 GA for the knowledge1 server
  20. Create all the JBoss servers

    copy C:\jboss\server\atg C:\jboss\server/knowledge1

    Edit individual files

    C:\jboss\server\knowledge1\conf\jboss-minimal.xml - Notepad
    <?xml version="1.0" encoding="UTF-8"?>
    
    <!-- $Id: jboss-minimal.xml 60298 2007-02-05 16:01:55Z dimitris@jboss.org $ -->
    
    <!-- ===================================================================== -->
    <!--                                                                       -->
    <!--  A minimal JBoss Server Configuration                                 -->
    <!--                                                                       -->
    <!-- ===================================================================== -->
    
    <server>
    
       <!-- Load all jars from the JBOSS_DIST/server/<config>/lib directory. This
         can be restricted to specific jars by specifying them in the archives
         attribute.
        -->
       <classpath codebase="${jboss.server.lib.url:lib}" archives="*"/>
    
       <!-- ==================================================================== -->
       <!-- Log4j Initialization                                                 -->
       <!-- ==================================================================== -->
       <mbean code="org.jboss.logging.Log4jService"
          name="jboss.system:type=Log4jService,service=Logging">
          <attribute name="ConfigurationURL">resource:jboss-log4j.xml</attribute>
       </mbean>
    
       <!-- ==================================================================== -->
       <!-- Thread Pool                                                          -->
       <!-- ==================================================================== -->
       
       <!-- A Thread pool service -->
       <mbean code="org.jboss.util.threadpool.BasicThreadPool"
          name="jboss.system:service=ThreadPool">
          <attribute name="Name">JBoss System Threads</attribute>
          <attribute name="ThreadGroupName">System Threads</attribute>
          <!-- How long a thread will live without any tasks in MS -->
          <attribute name="KeepAliveTime">60000</attribute>
          <!-- The max number of threads in the pool -->
          <attribute name="MaximumPoolSize">10</attribute>
          <!-- The max number of tasks before the queue is full -->
          <attribute name="MaximumQueueSize">1000</attribute>
          <!-- The behavior of the pool when a task is added and the queue is full.
          abort - a RuntimeException is thrown
          run - the calling thread executes the task
          wait - the calling thread blocks until the queue has room
          discard - the task is silently discarded without being run
          discardOldest - check to see if a task is about to complete and enque
             the new task if possible, else run the task in the calling thread
          -->
          <attribute name="BlockingMode">run</attribute>
       </mbean>
    
       <!-- ==================================================================== -->
       <!-- JNDI                                                                 -->
       <!-- ==================================================================== -->
       
       <!-- A simple mbean wrapper around the jndi Naming object. This
       only handles an in memory instance. The NamingService uses this
       as the JNDI store and exposes it remotely.
       -->
       <mbean code="org.jnp.server.NamingBeanImpl"
          name="jboss:service=NamingBeanImpl"
          xmbean-dd="resource:xmdesc/NamingBean-xmbean.xml">
       </mbean>
       
       <mbean code="org.jboss.naming.NamingService"
          name="jboss:service=Naming"
          xmbean-dd="resource:xmdesc/NamingService-xmbean.xml">
          <!-- The call by value mode. true if all lookups are unmarshalled using
             the caller's TCL, false if in VM lookups return the value by reference.
          -->
          <attribute name="CallByValue">false</attribute>
          <!-- The listening port for the bootstrap JNP service. Set this to -1
             to run the NamingService without the JNP invoker listening port.
          -->
          <attribute name="Port">10299</attribute>
          <!-- The bootstrap JNP server bind address. This also sets the default
             RMI service bind address. Empty == all addresses
          -->
          <attribute name="BindAddress">${jboss.bind.address}</attribute>
          <!-- The port of the RMI naming service, 0 == anonymous -->
          <attribute name="RmiPort">10298</attribute>
          <!-- The RMI service bind address. Empty == all addresses
          -->
          <attribute name="RmiBindAddress">${jboss.bind.address}</attribute>
          <!-- The thread pool service used to control the bootstrap lookups -->
          <depends optional-attribute-name="LookupPool"
             proxy-type="attribute">jboss.system:service=ThreadPool</depends>
          <!-- An example of using the unifed invoker as the transport.
             <depends optional-attribute-name="InvokerProxyFactory"
             proxy-type="attribute">jboss:service=proxyFactory,type=unified,target=Naming</depends>
          -->
          <depends optional-attribute-name="Naming"
             proxy-type="attribute">jboss:service=NamingBeanImpl</depends>
       </mbean>
    
       <!-- ==================================================================== -->
       <!-- Deployment Scanning                                                  -->
       <!-- ==================================================================== -->
    
       <!-- An mbean for hot deployment/undeployment of archives.
       -->
       <mbean code="org.jboss.deployment.scanner.URLDeploymentScanner"
          name="jboss.deployment:type=DeploymentScanner,flavor=URL">
    
          <depends optional-attribute-name="Deployer">jboss.system:service=MainDeployer</depends>
    
          <!-- The URLComparator can be used to specify a deployment ordering
               for deployments found in a scanned directory.  The class specified
               must be an implementation of java.util.Comparator, it must be able
               to compare two URL objects, and it must have a no-arg constructor.
               Two deployment comparators are shipped with JBoss:
                 - org.jboss.deployment.DeploymentSorter 
                   Sorts by file extension, as follows:
                     "sar", "service.xml", "rar", "jar", "war", "wsr", "ear", "zip", 
                     "*"
                 - org.jboss.deployment.scanner.PrefixDeploymentSorter
                   If the name portion of the url begins with 1 or more digits, those 
                   digits are converted to an int (ignoring leading zeroes), and 
                   files are deployed in that order.  Files that do not start with 
                   any digits will be deployed last, and they will be sorted by
                   extension as above with DeploymentSorter.
          -->
          <attribute name="URLComparator">org.jboss.deployment.DeploymentSorter</attribute>
          
          <!-- The Filter specifies a java.io.FileFilter for scanned
               directories.  Any file not accepted by this filter will not be
               deployed.  The org.jboss.deployment.scanner.DeploymentFilter 
               rejects the following patterns:
                   "#*", "%*", ",*", ".*", "_$*", "*#", "*$", "*%", "*.BAK", 
                   "*.old", "*.orig", "*.rej", "*.bak", "*,v", "*~", ".make.state", 
                   ".nse_depinfo", "CVS", "CVS.admin", "RCS", "RCSLOG", "SCCS", 
                   "TAGS", "core", "tags"
          -->
          <attribute name="Filter">org.jboss.deployment.scanner.DeploymentFilter</attribute>
    
          <attribute name="ScanPeriod">5000</attribute>
    
          <!-- URLs are comma seperated and unprefixed arguments are considered
             file URLs and resolve relative to server home(JBOSS_DIST/server/default)
             unless the given path is absolute. Any referenced directories cannot
             be unpackaged archives, use the parent directory of the unpacked
             archive.
           -->
          <attribute name="URLs">
           deploy/
          </attribute>
          
       </mbean>
    
    </server>
    
    C:\jboss\server\knowledge1\conf\jboss-service.xml - Notepad
    <?xml version="1.0" encoding="UTF-8"?>
    
    <!-- $Id: jboss-service.xml 62434 2007-04-19 21:22:50Z dimitris@jboss.org $ -->
    
    <!-- ===================================================================== -->
    <!--  JBoss Server Configuration                                           -->
    <!-- ===================================================================== -->
    
    <server>
    
       <!-- Load all jars from the JBOSS_DIST/server/<config>/lib directory. This
         can be restricted to specific jars by specifying them in the archives
         attribute.
        -->
       <classpath codebase="${jboss.server.lib.url:lib}" archives="*"/>
    
       <!-- ==================================================================== -->
       <!-- JSR-77 Single JBoss Server Management Domain                         -->
       <!-- ==================================================================== -->
       <mbean code="org.jboss.management.j2ee.LocalJBossServerDomain"
          name="jboss.management.local:j2eeType=J2EEDomain,name=Manager">
          <attribute name="MainDeployer">jboss.system:service=MainDeployer</attribute>
          <attribute name="SARDeployer">jboss.system:service=ServiceDeployer</attribute>
          <attribute name="EARDeployer">jboss.j2ee:service=EARDeployer</attribute>
          <attribute name="EJBDeployer">jboss.ejb:service=EJBDeployer</attribute>
          <attribute name="RARDeployer">jboss.jca:service=RARDeployer</attribute>
          <attribute name="CMDeployer">jboss.jca:service=ConnectionFactoryDeployer</attribute>
          <attribute name="WARDeployer">jboss.web:service=WebServer</attribute>
          <attribute name="CARDeployer">jboss.j2ee:service=ClientDeployer</attribute>
          <attribute name="MailService">jboss:service=Mail</attribute>
          <attribute name="JMSService">jboss.mq:service=DestinationManager</attribute>
          <attribute name="JNDIService">jboss:service=Naming</attribute>
          <attribute name="JTAService">jboss:service=TransactionManager</attribute>
          <attribute name="UserTransactionService">jboss:service=ClientUserTransaction</attribute>
          <attribute name="RMI_IIOPService">jboss:service=CorbaORB</attribute>
       </mbean>
    
       <!-- ==================================================================== -->
       <!-- XMBean Persistence                                                   -->
       <!-- ==================================================================== -->
       <mbean code="org.jboss.system.pm.AttributePersistenceService"
          name="jboss:service=AttributePersistenceService"
          xmbean-dd="resource:xmdesc/AttributePersistenceService-xmbean.xml">
          <!-- the AttributePersistenceService is persistent, itself -->
    
          <!--
          <attribute name="AttributePersistenceManagerClass">org.jboss.system.pm.XMLAttributePersistenceManager</attribute>
          <attribute name="AttributePersistenceManagerConfig">
             <data-directory>data/xmbean-attrs</data-directory>
          </attribute>
          <attribute name="ApmDestroyOnServiceStop">false</attribute>
          <attribute name="VersionTag"></attribute>
          -->
       </mbean>
    
       <!-- ==================================================================== -->
       <!-- Thread Pool                                                          -->
       <!-- ==================================================================== -->
       
       <!-- A Thread pool service -->
       <mbean code="org.jboss.util.threadpool.BasicThreadPool"
          name="jboss.system:service=ThreadPool">
          <attribute name="Name">JBoss System Threads</attribute>
          <attribute name="ThreadGroupName">System Threads</attribute>
          <!-- How long a thread will live without any tasks in MS -->
          <attribute name="KeepAliveTime">60000</attribute>
          <!-- The max number of threads in the pool -->
          <attribute name="MaximumPoolSize">10</attribute>
          <!-- The max number of tasks before the queue is full -->
          <attribute name="MaximumQueueSize">1000</attribute>
          <!-- The behavior of the pool when a task is added and the queue is full.
          abort - a RuntimeException is thrown
          run - the calling thread executes the task
          wait - the calling thread blocks until the queue has room
          discard - the task is silently discarded without being run
          discardOldest - check to see if a task is about to complete and enque
             the new task if possible, else run the task in the calling thread
          -->
          <attribute name="BlockingMode">run</attribute>
       </mbean>
    
       <!-- Preload all custom editors for VMs that don't use the thread
            context class loader when searching for PropertyEditors. Uncomment
            if your JDK 1.3.0 VM fails to find JBoss PropertyEditors.
       <mbean code="org.jboss.varia.property.PropertyEditorManagerService"
         name="jboss:type=Service,name=BootstrapEditors">
         <attribute name="BootstrapEditors">
           java.math.BigDecimal=org.jboss.util.propertyeditor.BigDecimalEditor
           java.lang.Boolean=org.jboss.util.propertyeditor.BooleanEditor
           java.lang.Class=org.jboss.util.propertyeditor.ClassEditor
           java.util.Date=org.jboss.util.propertyeditor.DateEditor
           java.io.File=org.jboss.util.propertyeditor.FileEditor
           java.net.InetAddress=org.jboss.util.propertyeditor.InetAddressEditor
           java.lang.Integer=org.jboss.util.propertyeditor.IntegerEditor
           javax.management.ObjectName=org.jboss.mx.util.propertyeditor.ObjectNameEditor
           java.util.Properties=org.jboss.util.propertyeditor.PropertiesEditor
           [Ljava.lang.String;=org.jboss.util.propertyeditor.StringArrayEditor
           java.net.URL=org.jboss.util.propertyeditor.URLEditor
         </attribute>
       </mbean>
       -->
    
       <!-- ==================================================================== -->
       <!-- Log4j Initialization                                                 -->
       <!-- ==================================================================== -->
    
       <mbean code="org.jboss.logging.Log4jService"
          name="jboss.system:type=Log4jService,service=Logging"
    	  xmbean-dd="resource:xmdesc/Log4jService-xmbean.xml">
          <attribute name="ConfigurationURL">resource:jboss-log4j.xml</attribute>
          <!-- Set the org.apache.log4j.helpers.LogLog.setQuiteMode. As of log4j1.2.8
          this needs to be set to avoid a possible deadlock on exception at the
          appender level. See bug#696819.
          -->
          <attribute name="Log4jQuietMode">true</attribute>
          <!-- How frequently in seconds the ConfigurationURL is checked for changes -->
          <attribute name="RefreshPeriod">60</attribute>
       </mbean>
    
       <!-- ==================================================================== -->
       <!-- Active Alarm Table                                                   -->
       <!-- ==================================================================== -->
    
       <!--
          | The ActiveAlarmTable service is a simple JMX notification listener
          | that maintains a table with the received notifications (alarms).
          | The alarms can be acknowledged through the jmx or the web console.
          | Modify the SubscriptionList below to subscribe for any notification
          | in the system and treat it as an alarm.
          | The JMXNotificationAppender is a log4j Appender that can be configured
          | in log4j.xml, that trasforms logging events to JMX notification so they
          | can be fed back into the table. By storing the WARN or higher level logging
          | events you can have a quick view of important system faults.
          |
          | The following attributes may be set:
          |
          | MaxTableSize (default 1000)
          |  - set an upper limit to the number of stored alarms
          | LogLevel (default DEBUG)
          |  - the log level to use for received notification, can be set to NONE
          | ServerId (default jboss)
          |  - used to construct unique alarm ids
          | SubscriptionList
          |  - subscribe for the notifications to be stored in the table
    
       <mbean code="org.jboss.monitor.services.ActiveAlarmTable"
              name="jboss.monitor:service=ActiveAlarmTable">
          <attribute name="SubscriptionList">
             <subscription-list>
                <mbean name="jboss.monitor:*">
                   <notification type="jboss.alarm"/>
                   <notification type="JBOSS_MONITOR_NOTIFICATION"/>
                </mbean>
                <mbean name="jboss.system:service=Logging,type=JMXNotificationAppender"/>
             </subscription-list>
          </attribute>
       </mbean>
       -->
    
       <!-- ==================================================================== -->
       <!-- JBoss RMI Classloader - only install when available                  -->
       <!-- ==================================================================== -->
       <mbean code="org.jboss.util.property.jmx.SystemPropertyClassValue"
          name="jboss.rmi:type=RMIClassLoader">
          <attribute name="Property">java.rmi.server.RMIClassLoaderSpi</attribute>
          <attribute name="ClassName">org.jboss.system.JBossRMIClassLoader</attribute>
       </mbean>
    
       <!-- ==================================================================== -->
       <!-- Service Binding                                                      -->
       <!-- ==================================================================== -->
    
       <!-- Automatically activated when generatting the clustering environment -->
       <!-- @TESTSUITE_CLUSTER_CONFIG@ -->
    
       <!--
          | Binding service manager for port/host mapping. This is a sample
          | config that demonstrates a JBoss instances with a server name 'ports-01'
          | loading its bindings from an XML file using the ServicesStoreFactory
          | implementation returned by the XMLServicesStoreFactory.
          |
          | ServerName: The unique name assigned to a JBoss server instance for
          | lookup purposes. This allows a single ServicesStore to handle mulitiple
          | JBoss servers.
          |
          | StoreURL: The URL string passed to org.jboss.services.binding.ServicesStore
          | during initialization that specifies how to connect to the bindings store.
          | StoreFactory: The org.jboss.services.binding.ServicesStoreFactory interface
          | implementation to create to obtain the ServicesStore instance.
    
       <mbean code="org.jboss.services.binding.ServiceBindingManager"
         name="jboss.system:service=ServiceBindingManager">
         <attribute name="ServerName">ports-01</attribute>
         <attribute name="StoreURL">${jboss.home.url}/docs/examples/binding-manager/sample-bindings.xml</attribute>
         <attribute name="StoreFactoryClassName">
           org.jboss.services.binding.XMLServicesStoreFactory
         </attribute>
       </mbean>
       -->
    
       <!-- ==================================================================== -->
       <!-- Class Loading                                                        -->
       <!-- ==================================================================== -->
    
       <!-- A mini webserver used for dynamic and class and resource loading --> 
       <mbean code="org.jboss.web.WebService"
          name="jboss:service=WebService">
          <!-- The Bind address and Port -->
          <attribute name="BindAddress">${jboss.bind.address}</attribute>      
          <attribute name="Port">10283</attribute>
          <!--  The address to use for the host portion of the RMI codebase URL -->
          <attribute name="Host">${java.rmi.server.hostname}</attribute>
          <!-- Should non-EJB .class files be downloadable -->
          <attribute name="DownloadServerClasses">true</attribute>
          <!-- Should resources other than .class files be downloadable. Both
             DownloadServerClasses and DownloadResources must be true for resources
             to be downloadable. This is false by default because its generally a
             bad idea as server configuration files that container security
             information can be accessed.
           -->
          <attribute name="DownloadResources">false</attribute>
    
          <!-- Use the default thread pool for dynamic class loading -->
          <depends optional-attribute-name="ThreadPool"
             proxy-type="attribute">jboss.system:service=ThreadPool</depends>
       </mbean>
    
       <!-- ==================================================================== -->
       <!-- JNDI                                                                 -->
       <!-- ==================================================================== -->
    
       <!-- A simple mbean wrapper around the jndi Naming object. This
       only handles an in memory instance. The NamingService uses this
       as the JNDI store and exposes it remotely.
       -->
       <mbean code="org.jnp.server.NamingBeanImpl"
          name="jboss:service=NamingBeanImpl"
          xmbean-dd="resource:xmdesc/NamingBean-xmbean.xml">
       </mbean>
       
       <mbean code="org.jboss.naming.NamingService"
          name="jboss:service=Naming"
          xmbean-dd="resource:xmdesc/NamingService-xmbean.xml">
          <!-- The call by value mode. true if all lookups are unmarshalled using
             the caller's TCL, false if in VM lookups return the value by reference.
          -->
          <attribute name="CallByValue">false</attribute>
          <!-- The listening port for the bootstrap JNP service. Set this to -1
             to run the NamingService without the JNP invoker listening port.
          -->
          <attribute name="Port">10299</attribute>
          <!-- The bootstrap JNP server bind address. This also sets the default
             RMI service bind address. Empty == all addresses
          -->
          <attribute name="BindAddress">${jboss.bind.address}</attribute>
          <!-- The port of the RMI naming service, 0 == anonymous -->
          <attribute name="RmiPort">10298</attribute>
          <!-- The RMI service bind address. Empty == all addresses
          -->
          <attribute name="RmiBindAddress">${jboss.bind.address}</attribute>
          <!-- The thread pool service used to control the bootstrap lookups -->
          <depends optional-attribute-name="LookupPool"
             proxy-type="attribute">jboss.system:service=ThreadPool</depends>
          <!-- An example of using the unifed invoker as the transport.
             <depends optional-attribute-name="InvokerProxyFactory"
             proxy-type="attribute">jboss:service=proxyFactory,type=unified,target=Naming</depends>
          -->
          <depends optional-attribute-name="Naming"
             proxy-type="attribute">jboss:service=NamingBeanImpl</depends>
       </mbean>
       
       <mbean code="org.jboss.naming.JNDIView"
       	name="jboss:service=JNDIView"
       	xmbean-dd="resource:xmdesc/JNDIView-xmbean.xml">
       	<!-- The HANamingService service name -->
       	<attribute name="HANamingService">jboss:service=HAJNDI</attribute>
       </mbean>
    
       <!-- ==================================================================== -->
       <!-- Security                                                             -->
       <!-- ==================================================================== -->
    
       <mbean code="org.jboss.security.plugins.SecurityConfig"
          name="jboss.security:service=SecurityConfig">
          <attribute name="LoginConfig">jboss.security:service=XMLLoginConfig</attribute>
       </mbean>
       <mbean code="org.jboss.security.auth.login.XMLLoginConfig"
          name="jboss.security:service=XMLLoginConfig">
          <attribute name="ConfigResource">login-config.xml</attribute>
       </mbean>
    
       <!-- JAAS security manager and realm mapping -->
       <mbean code="org.jboss.security.plugins.JaasSecurityManagerService"
          name="jboss.security:service=JaasSecurityManager">
          <!-- A flag which indicates whether the SecurityAssociation server mode
          is set on service creation. This is true by default since the
          SecurityAssociation should be thread local for multi-threaded server
          operation.
          -->
          <attribute name="ServerMode">true</attribute>
          <attribute name="SecurityManagerClassName">org.jboss.security.plugins.JaasSecurityManager</attribute>
          <attribute name="DefaultUnauthenticatedPrincipal">anonymous</attribute>
          <!-- DefaultCacheTimeout: Specifies the default timed cache policy timeout
          in seconds.
          If you want to disable caching of security credentials, set this to 0 to
          force authentication to occur every time. This has no affect if the
          AuthenticationCacheJndiName has been changed from the default value.
          -->
          <attribute name="DefaultCacheTimeout">1800</attribute>
          <!-- DefaultCacheResolution: Specifies the default timed cache policy
          resolution in seconds. This controls the interval at which the cache
          current timestamp is updated and should be less than the DefaultCacheTimeout
          in order for the timeout to be meaningful. This has no affect if the
          AuthenticationCacheJndiName has been changed from the default value.
          -->
          <attribute name="DefaultCacheResolution">60</attribute>
          <!-- DeepCopySubjectMode: This set the copy mode of subjects done by the
          security managers to be deep copies that makes copies of the subject
          principals and credentials if they are cloneable. It should be set to
          true if subject include mutable content that can be corrupted when
          multiple threads have the same identity and cache flushes/logout clearing
          the subject in one thread results in subject references affecting other
          threads.
          -->
          <attribute name="DeepCopySubjectMode">false</attribute>
       </mbean>
    
       <!-- ==================================================================== -->
       <!-- Transactions                                                         -->
       <!-- ==================================================================== -->
    
       <!-- The configurable Xid factory.  For use with Oracle, set pad to true -->
       <mbean code="org.jboss.tm.XidFactory"
          name="jboss:service=XidFactory">
          <attribute name="Pad">true</attribute>
       </mbean>
    
       <!--
          | The fast in-memory transaction manager.
          | Deprecated in JBossAS v4.2. Use JBossTS JTA instead.
        - ->
       <mbean code="org.jboss.tm.TransactionManagerService"
          name="jboss:service=TransactionManager"
          xmbean-dd="resource:xmdesc/TransactionManagerService-xmbean.xml">
          <attribute name="TransactionTimeout">300</attribute>
          <!- - set to false to disable transaction demarcation over IIOP - ->
          <attribute name="GlobalIdsEnabled">true</attribute>
          <depends optional-attribute-name="XidFactory">jboss:service=XidFactory</depends>
    
          <!- - Transaction Integrity Checking - ->
          <!- - Force a rollback if another thread is associated with the transaction at commit - ->
          <!- - <depends optional-attribute-name="TransactionIntegrityFactory"
                   proxy-type="org.jboss.tm.integrity.TransactionIntegrityFactory">
             <mbean code="org.jboss.tm.integrity.FailIncompleteTransaction"
                    name="jboss:service=TransactionManager,plugin=TransactionIntegrity"/>
          </depends> - ->
       </mbean>
       -->
    
       <!-- JBoss Transactions JTA -->
       <mbean code="com.arjuna.ats.jbossatx.jta.TransactionManagerService"
          name="jboss:service=TransactionManager">
          <attribute name="TransactionTimeout">300</attribute>
          <attribute name="ObjectStoreDir">${jboss.server.data.dir}/tx-object-store</attribute> 
       </mbean>
    
       <!--
          | UserTransaction support.
        -->
       <mbean code="org.jboss.tm.usertx.server.ClientUserTransactionService"
          name="jboss:service=ClientUserTransaction"
          xmbean-dd="resource:xmdesc/ClientUserTransaction-xmbean.xml">
          <depends>
             <mbean code="org.jboss.invocation.jrmp.server.JRMPProxyFactory"
                name="jboss:service=proxyFactory,target=ClientUserTransactionFactory">
                <attribute name="InvokerName">jboss:service=invoker,type=jrmp</attribute>
                <attribute name="TargetName">jboss:service=ClientUserTransaction</attribute>
                <attribute name="JndiName">UserTransactionSessionFactory</attribute>
                <attribute name="ExportedInterface">org.jboss.tm.usertx.interfaces.UserTransactionSessionFactory</attribute>
                <attribute name="ClientInterceptors">
                   <interceptors>
                      <interceptor>org.jboss.proxy.ClientMethodInterceptor</interceptor>
                      <interceptor>org.jboss.invocation.InvokerInterceptor</interceptor>
                   </interceptors>
                </attribute>
                <depends>jboss:service=invoker,type=jrmp</depends>
             </mbean>
          </depends>
          <depends optional-attribute-name="TxProxyName">
             <mbean code="org.jboss.invocation.jrmp.server.JRMPProxyFactory"
                name="jboss:service=proxyFactory,target=ClientUserTransaction">
                <attribute name="InvokerName">jboss:service=invoker,type=jrmp</attribute>
                <attribute name="TargetName">jboss:service=ClientUserTransaction</attribute>
                <attribute name="JndiName"></attribute>
                <attribute name="ExportedInterface">org.jboss.tm.usertx.interfaces.UserTransactionSession</attribute>
                <attribute name="ClientInterceptors">
                   <interceptors>
                      <interceptor>org.jboss.proxy.ClientMethodInterceptor</interceptor>
                      <interceptor>org.jboss.invocation.InvokerInterceptor</interceptor>
                   </interceptors>
                </attribute>
                <depends>jboss:service=invoker,type=jrmp</depends>
             </mbean>
          </depends>
       </mbean>
    
       <!-- ==================================================================== -->
       <!-- Invokers to the JMX node                                             -->
       <!-- ==================================================================== -->
    
       <!-- Unified invoker (based on remoting) -->
       <mbean code="org.jboss.invocation.unified.server.UnifiedInvoker"
          name="jboss:service=invoker,type=unified">
          <!-- To turn on strict RMI exception propagation uncomment block below -->
          <!-- This will cause the UnifiedInvokerProxy to wrap RemoteExceptions  -->
          <!-- within a ServerException, otherwise will throw root exception     -->
          <!-- (not RemoteException)                                             -->
          <!-- <attribute name="StrictRMIException">true</attribute> -->
          <depends>jboss:service=TransactionManager</depends>
          <depends>jboss.remoting:service=Connector,transport=socket</depends>
       </mbean>
    
       <!-- RMI/JRMP invoker -->
       <mbean code="org.jboss.invocation.jrmp.server.JRMPInvoker"
          name="jboss:service=invoker,type=jrmp">
          <attribute name="RMIObjectPort">10244</attribute>
          <attribute name="ServerAddress">${jboss.bind.address}</attribute>
          <!--
          <attribute name="RMIClientSocketFactory">custom</attribute>
          <attribute name="RMIServerSocketFactory">custom</attribute>
          <attribute name="RMIServerSocketAddr">custom</attribute>
          <attribute name="SecurityDomain">ssl-domain-name</attribute>
          -->
          <depends>jboss:service=TransactionManager</depends>
       </mbean>
    
       <mbean code="org.jboss.invocation.local.LocalInvoker"
          name="jboss:service=invoker,type=local">
    
          <depends>jboss:service=TransactionManager</depends>
       </mbean>
    
       <mbean code="org.jboss.invocation.pooled.server.PooledInvoker"
          name="jboss:service=invoker,type=pooled">
          <attribute name="NumAcceptThreads">1</attribute>
          <attribute name="MaxPoolSize">300</attribute>
          <attribute name="ClientMaxPoolSize">300</attribute>
          <attribute name="SocketTimeout">60000</attribute>
          <attribute name="ServerBindAddress">${jboss.bind.address}</attribute>
          <attribute name="ServerBindPort">10245</attribute>
          <attribute name="ClientConnectAddress">${jboss.bind.address}</attribute>
          <attribute name="ClientConnectPort">0</attribute>
          <attribute name="ClientRetryCount">1</attribute>
          <attribute name="EnableTcpNoDelay">false</attribute>
    
          <!-- Customized socket factory attributes
          <attribute name="ClientSocketFactoryName">custom.client.factory</attribute>
          <attribute name="ServerSocketFactoryName">custom.server.factory</attribute>
          <attribute name="SslDomain">java:/jaas/pooledInvoker</attribute>
          -->
          <depends optional-attribute-name="TransactionManagerService">jboss:service=TransactionManager</depends>
       </mbean>
    
       <!-- ==================================================================== -->
       <!-- Remoting services 						                                   -->
       <!-- ==================================================================== -->
    
       <!-- For detailed description of all these configuration attributes, please see the -->
       <!-- JBoss Remoting User's Guide or wiki (http://labs.jboss.com/portal/jbossremoting/docs/guide/index.html) -->
    
        <!-- The NetworkRegistry contains all the local and remote -->
        <!-- servers that it recognizes.  The remote ones registered -->
        <!-- are dependant on the detectors running and which domains -->
        <!-- they are configured to identify.                         -->
        <mbean code="org.jboss.remoting.network.NetworkRegistry"
               name="jboss.remoting:service=NetworkRegistry"/>
    
       <!-- The Connector is the core component of the remoting server service. -->
       <!-- It binds the remoting invoker (transport protocol, callback configuration, -->
       <!-- data marshalling, etc.) with the invocation handlers.  -->
       <mbean code="org.jboss.remoting.transport.Connector"
              name="jboss.remoting:service=Connector,transport=socket"
              display-name="Socket transport Connector">
    
           <!-- Can either just specify the InvokerLocator attribute and not the invoker element in the -->
           <!-- Configuration attribute, or do the full invoker configuration in the in invoker element -->
           <!-- of the Configuration attribute. -->
    
           <!-- Remember that if you do use more than one param on the uri, will have to include as a CDATA, -->
           <!-- otherwise, parser will complain. -->
           <!-- <attribute name="InvokerLocator"><![CDATA[socket://${jboss.bind.address}:4446/?datatype=invocation]]></attribute> -->
    
          <attribute name="Configuration">
             <!-- Using the following <invoker> element instead of the InvokerLocator above because specific attributes needed. -->
             <!-- If wanted to use any of the parameters below, can just add them as parameters to the url above if wanted use the InvokerLocator attribute. -->
             <config>
                <!-- Other than transport type and handler, none of these configurations are required (will just use defaults). -->
                <invoker transport="socket">
                   <attribute name="dataType" isParam="true">invocation</attribute>
                   <attribute name="marshaller" isParam="true">org.jboss.invocation.unified.marshall.InvocationMarshaller</attribute>
                   <attribute name="unmarshaller" isParam="true">org.jboss.invocation.unified.marshall.InvocationUnMarshaller</attribute>
                   <!-- This will be port on which the marshall loader port runs on.  -->
                   <!-- <attribute name="loaderport" isParam="true">4447</attribute> -->
                   <!-- The following are specific to socket invoker -->
                   <!-- <attribute name="numAcceptThreads">1</attribute>-->
                   <!-- <attribute name="maxPoolSize">303</attribute>-->
                   <!-- <attribute name="clientMaxPoolSize" isParam="true">304</attribute>-->
                   <attribute name="socketTimeout" isParam="true">600000</attribute>
                   <attribute name="serverBindAddress">${jboss.bind.address}</attribute>
                   <attribute name="serverBindPort">4446</attribute>
                   <!-- <attribute name="clientConnectAddress">216.23.33.2</attribute> -->
                   <!-- <attribute name="clientConnectPort">7777</attribute> -->
                   <attribute name="enableTcpNoDelay" isParam="true">true</attribute>
                   <!-- <attribute name="backlog">200</attribute>-->
                   <!-- The following is for callback configuration and is independant of invoker type -->
                   <!-- <attribute name="callbackMemCeiling">30</attribute>-->
                   <!-- indicates callback store by fully qualified class name -->
                   <!-- <attribute name="callbackStore">org.jboss.remoting.CallbackStore</attribute>-->
                   <!-- indicates callback store by object name -->
                   <!-- <attribute name="callbackStore">jboss.remoting:service=CallbackStore,type=Serializable</attribute> -->
                   <!-- config params for callback store.  if were declaring callback store via object name, -->
                   <!-- could have specified these config params there. -->
                   <!-- StoreFilePath indicates to which directory to write the callback objects. -->
                   <!-- The default value is the property value of 'jboss.server.data.dir' and if this is not set, -->
                   <!-- then will be 'data'. Will then append 'remoting' and the callback client's session id. -->
                   <!-- An example would be 'data\remoting\5c4o05l-9jijyx-e5b6xyph-1-e5b6xyph-2'. -->
                   <!-- <attribute name="StoreFilePath">callback</attribute>-->
                   <!-- StoreFileSuffix indicates the file suffix to use for the callback objects written to disk. -->
                   <!-- The default value for file suffix is 'ser'. -->
                   <!-- <attribute name="StoreFileSuffix">cst</attribute>-->
                </invoker>
    
                <!-- At least one handler is required by the connector.  If have more than one, must decalre -->
                <!-- different subsystem values.  Otherwise, all invocations will be routed to the only one -->
                <!-- that is declared. -->
                <handlers>
                   <!-- can also specify handler by fully qualified classname -->
                   <handler subsystem="invoker">jboss:service=invoker,type=unified</handler>
                </handlers>
             </config>
          </attribute>
          <depends>jboss.remoting:service=NetworkRegistry</depends>
       </mbean>
    
    
       <!-- <mbean code="org.jboss.remoting.detection.jndi.JNDIDetector"-->
       <!--      name="jboss.remoting:service=Detector,transport=jndi">-->
       <!-- host to which the detector will connect to for the JNDI server. -->
       <!-- <attribute name="Host">localhost</attribute>-->
       <!-- port to which detector will connect to for the JNDI server. -->
       <!-- <attribute name="Port">5555</attribute>-->
       <!-- context factory string used when connecting to the JNDI server. -->
       <!-- The default is org.jnp.interfaces.NamingContextFactory. -->
       <!-- <attribute name="ContextFactory">org.acme.NamingContextFactory</attribute> -->
       <!-- url package string to use when connecting to the JNDI server. -->
       <!-- The default is org.jboss.naming:org.jnp.interfaces. -->
       <!-- <attribute name="URLPackage">org.acme.naming</attribute> -->
       <!-- Sets the number of detection iterations before manually pinging -->
       <!-- remote server to make sure still alive. This is needed since remote server -->
       <!-- could crash and yet still have an entry in the JNDI server, -->
       <!-- thus making it appear that it is still there. The default value is 5. -->
       <!-- <attribute name="CleanDetectionNumber">20</attribute>-->
    
       <!-- Specifies the domains in which the detector will recognize -->
       <!-- detections.  If servers are not configured to be in these -->
       <!-- domains, they will not be added to NetworkRegistry. -->
       <!--      <attribute name="Configuration">-->
       <!--         <domains>-->
       <!--            <domain>roxanne</domain>-->
       <!--            <domain>sparky</domain>-->
       <!--         </domains>-->
       <!--      </attribute>-->
       <!--   </mbean>-->
    
    
       <!-- ==================================================================== -->
       <!-- Monitoring and Management                                            -->
       <!-- ==================================================================== -->
    
       <!-- Uncomment to enable JMX monitoring of the bean cache
       <mbean code="org.jboss.monitor.BeanCacheMonitor"
              name="jboss.monitor:name=BeanCacheMonitor"/>
       -->
    
       <!-- Uncomment to enable JMX monitoring of the entity bean locking
       <mbean code="org.jboss.monitor.EntityLockMonitor"
              name="jboss.monitor:name=EntityLockMonitor"/>
       -->
    
       <!-- ==================================================================== -->
       <!-- An MBean that is a registry for JDBC type-mapping metadata           -->
       <!-- ==================================================================== -->
    
       <mbean code="org.jboss.ejb.plugins.cmp.jdbc.metadata.MetaDataLibrary"
          name="jboss.jdbc:service=metadata"/>
    
       <!-- ==================================================================== -->
       <!-- Deployment Scanning                                                  -->
       <!-- ==================================================================== -->
    
       <!-- An mbean for hot deployment/undeployment of archives.
       -->
       <mbean code="org.jboss.deployment.scanner.URLDeploymentScanner"
          name="jboss.deployment:type=DeploymentScanner,flavor=URL">
    
          <!-- Uncomment (and comment/remove version below) to enable usage of the
            DeploymentCache
          <depends optional-attribute-name="Deployer">jboss.deployment:type=DeploymentCache</depends>
          -->
          <depends optional-attribute-name="Deployer">jboss.system:service=MainDeployer</depends>
    
          <!-- The URLComparator can be used to specify a deployment ordering
               for deployments found in a scanned directory.  The class specified
               must be an implementation of java.util.Comparator, it must be able
               to compare two URL objects, and it must have a no-arg constructor.
               Two deployment comparators are shipped with JBoss:
                 - org.jboss.deployment.DeploymentSorter
                   Sorts by file extension, as follows:
                     "sar", "service.xml", "rar", "jar", "war", "wsr", "ear", "zip",
                     "*"
                 - org.jboss.deployment.scanner.PrefixDeploymentSorter
                   If the name portion of the url begins with 1 or more digits, those
                   digits are converted to an int (ignoring leading zeroes), and
                   files are deployed in that order.  Files that do not start with
                   any digits will be deployed first, and they will be sorted by
                   extension as above with DeploymentSorter.
          -->
          <attribute name="URLComparator">org.jboss.deployment.DeploymentSorter</attribute>
    
          <!--
          <attribute name="URLComparator">org.jboss.deployment.scanner.PrefixDeploymentSorter</attribute>
          -->
    
          <!-- The FilterInstance specifies a URLLister.URLFilter for scanned
               directories. This DeploymentFilter is initialized with the given
               prefixes, suffixes and matches that define which URLs should be
               ignored.
          -->
          <attribute name="FilterInstance"
             attributeClass="org.jboss.deployment.scanner.DeploymentFilter"
             serialDataType="javaBean">
             <!-- Files starting with theses strings are ignored -->
             <property name="prefixes">#,%,\,,.,_$</property>
             <!-- Files ending with theses strings are ignored -->
             <property name="suffixes">#,$,%,~,\,v,.BAK,.bak,.old,.orig,.tmp,.rej,.sh</property>
             <!-- Files matching with theses strings are ignored -->
             <property name="matches">.make.state,.nse_depinfo,CVS,CVS.admin,RCS,RCSLOG,SCCS,TAGS,core,tags</property>
          </attribute>
    
          <!-- Frequency in milliseconds to rescan the URLs for changes -->
          <attribute name="ScanPeriod">5000</attribute>
    
          <!-- A flag to disable the scans -->
          <attribute name="ScanEnabled">true</attribute>
    
          <!-- URLs are comma separated and resolve relative to the server home URL
             unless the given path is absolute. If the URL ends in "/" it is
             considered a collection and scanned, otherwise it is simply deployed;
             this follows RFC2518 convention and allows discrimination between
             collections and directories that are simply unpacked archives.
    
             URLs may be local (file:) or remote (http:). Scanning is supported
             for remote URLs but unpacked deployment units are not.
    
             Example URLs:
                deploy/
                     scans ${jboss.server.url}/deploy/, which is local or remote
                     depending on the URL used to boot the server
                ${jboss.server.home}/deploy/
                     scans ${jboss.server.home)/deploy, which is always local
                file:/var/opt/myapp.ear
                     deploy myapp.ear from a local location
                file:/var/opt/apps/
                     scans the specified directory
                http://www.test.com/netboot/myapp.ear
                     deploys myapp.ear from a remote location
                http://www.test.com/netboot/apps/
                     scans the specified WebDAV location
           -->
          <attribute name="URLs">
             deploy/
          </attribute>
    
          <!-- Indicates if the scanner should recursively scan directories that
          contain no "." in their names. This can be used to group applications
          and services that must be deployed and that have the same
          logical function in the same directory i.e.
            deploy/JMX/
            deploy/JMS/
            ...
          -->
          <attribute name="RecursiveSearch">True</attribute>
    
       </mbean>
    
    </server>
    
    C:\jboss\server\knowledge1\deploy\jboss-web.deployer\server.xml - Notepad
    <Server>
    
      <!--APR library loader. Documentation at /docs/apr.html -->
      <Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
      <!--Initialize Jasper prior to webapps are loaded. Documentation at /docs/jasper-howto.html -->
      <Listener className="org.apache.catalina.core.JasperListener" />
    
       <!-- Use a custom version of StandardService that allows the
       connectors to be started independent of the normal lifecycle
       start to allow web apps to be deployed before starting the
       connectors.
       -->
       <Service name="jboss.web">
    
        <!-- A "Connector" represents an endpoint by which requests are received
             and responses are returned. Documentation at :
             Java HTTP Connector: /docs/config/http.html (blocking & non-blocking)
             Java AJP  Connector: /docs/config/ajp.html
             APR (HTTP/AJP) Connector: /docs/apr.html
             Define a non-SSL HTTP/1.1 Connector on port 10280
        -->
        <Connector port="10280" address="${jboss.bind.address}"    
             maxThreads="250" maxHttpHeaderSize="8192"
             emptySessionPath="true" protocol="HTTP/1.1"
             enableLookups="false" redirectPort="10243" acceptCount="100"
             connectionTimeout="20000" disableUploadTimeout="true" />
    
        <!-- Define a SSL HTTP/1.1 Connector on port 10243
             This connector uses the JSSE configuration, when using APR, the 
             connector should be using the OpenSSL style configuration
             described in the APR documentation -->
        <!--
        <Connector port="10243" protocol="HTTP/1.1" SSLEnabled="true"
                   maxThreads="150" scheme="https" secure="true"
                   clientAuth="false" sslProtocol="TLS" />
        -->
    
        <!-- Define an AJP 1.3 Connector on port 10209 -->
        <Connector port="10209" address="${jboss.bind.address}" protocol="AJP/1.3"
             emptySessionPath="true" enableLookups="false" redirectPort="10243" />
    
          <Engine name="jboss.web" defaultHost="localhost">
    
             <!-- The JAAS based authentication and authorization realm implementation
             that is compatible with the jboss 3.2.x realm implementation.
             - certificatePrincipal : the class name of the
             org.jboss.security.auth.certs.CertificatePrincipal impl
             used for mapping X509[] cert chains to a Princpal.
             - allRolesMode : how to handle an auth-constraint with a role-name=*,
             one of strict, authOnly, strictAuthOnly
               + strict = Use the strict servlet spec interpretation which requires
               that the user have one of the web-app/security-role/role-name
               + authOnly = Allow any authenticated user
               + strictAuthOnly = Allow any authenticated user only if there are no
               web-app/security-roles
             -->
             <Realm className="org.jboss.web.tomcat.security.JBossSecurityMgrRealm"
                certificatePrincipal="org.jboss.security.auth.certs.SubjectDNMapping"
                allRolesMode="authOnly"
                />
             <!-- A subclass of JBossSecurityMgrRealm that uses the authentication
             behavior of JBossSecurityMgrRealm, but overrides the authorization
             checks to use JACC permissions with the current java.security.Policy
             to determine authorized access.
             - allRolesMode : how to handle an auth-constraint with a role-name=*,
             one of strict, authOnly, strictAuthOnly
               + strict = Use the strict servlet spec interpretation which requires
               that the user have one of the web-app/security-role/role-name
               + authOnly = Allow any authenticated user
               + strictAuthOnly = Allow any authenticated user only if there are no
               web-app/security-roles
             <Realm className="org.jboss.web.tomcat.security.JaccAuthorizationRealm"
                certificatePrincipal="org.jboss.security.auth.certs.SubjectDNMapping"
                allRolesMode="authOnly"
                />
             -->
    
            <Host name="localhost"
               autoDeploy="false" deployOnStartup="false" deployXML="false"
               configClass="org.jboss.web.tomcat.security.config.JBossContextConfig"
               >
    
                <!-- Uncomment to enable request dumper. This Valve "logs interesting 
                     contents from the specified Request (before processing) and the 
                     corresponding Response (after processing). It is especially useful 
                     in debugging problems related to headers and cookies."
                -->
                <!--
                <Valve className="org.apache.catalina.valves.RequestDumperValve" />
                -->
     
                <!-- Access logger -->
                <!--
                <Valve className="org.apache.catalina.valves.AccessLogValve"
                    prefix="localhost_access_log." suffix=".log"
                    pattern="common" directory="${jboss.server.home.dir}/log" 
                    resolveHosts="false" />
                -->
    
                <!-- Uncomment to enable single sign-on across web apps
                    deployed to this host. Does not provide SSO across a cluster.     
                
                    If this valve is used, do not use the JBoss ClusteredSingleSignOn 
                    valve shown below. 
                    
                    A new configuration attribute is available beginning with
                    release 4.0.4:
                    
                    cookieDomain  configures the domain to which the SSO cookie
                                  will be scoped (i.e. the set of hosts to
                                  which the cookie will be presented).  By default
                                  the cookie is scoped to "/", meaning the host
                                  that presented it.  Set cookieDomain to a
                                  wider domain (e.g. "xyz.com") to allow an SSO
                                  to span more than one hostname.
                 -->
                <!--
                <Valve className="org.apache.catalina.authenticator.SingleSignOn" />
                -->
    
                <!-- Uncomment to enable single sign-on across web apps
                   deployed to this host AND to all other hosts in the cluster.
                
                   If this valve is used, do not use the standard Tomcat SingleSignOn
                   valve shown above.
                
                   Valve uses a JBossCache instance to support SSO credential 
                   caching and replication across the cluster.  The JBossCache 
                   instance must be configured separately.  By default, the valve 
                   shares a JBossCache with the service that supports HttpSession 
                   replication.  See the "jboss-web-cluster-service.xml" file in the 
                   server/all/deploy directory for cache configuration details.
                
                   Besides the attributes supported by the standard Tomcat
                   SingleSignOn valve (see the Tomcat docs), this version also 
                   supports the following attributes:
                
                   cookieDomain   see above
                
                   treeCacheName  JMX ObjectName of the JBossCache MBean used to 
                                  support credential caching and replication across
                                  the cluster. If not set, the default value is 
                                  "jboss.cache:service=TomcatClusteringCache", the 
                                  standard ObjectName of the JBossCache MBean used 
                                  to support session replication.
                -->
                <!--
                <Valve className="org.jboss.web.tomcat.service.sso.ClusteredSingleSignOn" />
                -->
             
                <!-- Check for unclosed connections and transaction terminated checks
                     in servlets/jsps.
                     
                     Important: The dependency on the CachedConnectionManager
                     in META-INF/jboss-service.xml must be uncommented, too
                -->
                <Valve className="org.jboss.web.tomcat.service.jca.CachedConnectionValve"
                    cachedConnectionManagerObjectName="jboss.jca:service=CachedConnectionManager"
                    transactionManagerObjectName="jboss:service=TransactionManager" />
    
             </Host>
    
          </Engine>
    
       </Service>
    
    </Server>
    
    C:\jboss\server\knowledge1\deploy\jboss-web.deployer\conf\web.xml - Notepad
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <web-app xmlns="http://java.sun.com/xml/ns/j2ee"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
        version="2.4">
    
      <!-- ======================== Introduction ============================== -->
      <!-- This document defines default values for *all* web applications      -->
      <!-- loaded into this instance of Tomcat.  As each application is         -->
      <!-- deployed, this file is processed, followed by the                    -->
      <!-- "/WEB-INF/web.xml" deployment descriptor from your own               -->
      <!-- applications.                                                        -->
      <!--                                                                      -->
      <!-- WARNING:  Do not configure application-specific resources here!      -->
      <!-- They should go in the "/WEB-INF/web.xml" file in your application.   -->
    
      <!-- =========== Common Context Params ================================== -->
      <!-- JBossInjectionProvider provides resource injection for managed beans. -->
      <!-- See JSF 1.2 spec section 5.4 for details.                             -->
      <context-param>
        <param-name>com.sun.faces.injectionProvider</param-name>
        <param-value>org.jboss.web.jsf.integration.injection.JBossInjectionProvider</param-value>
      </context-param>
    
       <!-- ================== Common filter Configuration ==================== -->
       <filter>
          <filter-name>CommonHeadersFilter</filter-name>
          <filter-class>org.jboss.web.tomcat.filters.ReplyHeaderFilter</filter-class>
          <init-param>
             <param-name>X-Powered-By</param-name>
             <param-value>Servlet 2.4; JBoss-4.2.0.GA (build: SVNTag=JBoss_4_2_0_GA date=200705111440)/Tomcat-5.5</param-value>
          </init-param>
       </filter>
    
       <filter-mapping>
          <filter-name>CommonHeadersFilter</filter-name>
          <url-pattern>/*</url-pattern>
       </filter-mapping>
    
       <!-- ================== Common Listener Configuration ==================== -->
       <listener>
          <listener-class>org.jboss.web.tomcat.security.SecurityFlushSessionListener</listener-class>
       </listener>
    
       <!-- Configures JSF for a web application if the javax.faces.webapp.FacesServlet is declared -->
       <!-- in web.xml.                                                                             -->
       <listener>
         <listener-class>org.jboss.web.jsf.integration.config.JBossJSFConfigureListener</listener-class>
       </listener>
    
       <!-- Listens to all web app lifecycle events so that @PreDestroy can be called on -->
       <!-- JSF managed beans that go out of scope.  You can comment this out if you     -->
       <!-- don't use JSF or you don't use annotations on your managed beans.            -->
       <listener>
         <listener-class>com.sun.faces.application.WebappLifecycleListener</listener-class>
       </listener>
    
    
      <!-- ================== Built In Servlet Definitions ==================== -->
    
    
      <!-- The default servlet for all web applications, that serves static     -->
      <!-- resources.  It processes all requests that are not mapped to other   -->
      <!-- servlets with servlet mappings (defined either here or in your own   -->
      <!-- web.xml file.  This servlet supports the following initialization    -->
      <!-- parameters (default values are in square brackets):                  -->
      <!--                                                                      -->
      <!--   debug               Debugging detail level for messages logged     -->
      <!--                       by this servlet.  [0]                          -->
      <!--                                                                      -->
      <!--   fileEncoding        Encoding to be used to read static resources   -->
      <!--                       [platform default]                             -->
      <!--                                                                      -->
      <!--   input               Input buffer size (in bytes) when reading      -->
      <!--                       resources to be served.  [2048]                -->
      <!--                                                                      -->
      <!--   listings            Should directory listings be produced if there -->
      <!--                       is no welcome file in this directory?  [false] -->
      <!--                       WARNING: Listings for directories with many    -->
      <!--                       entries can be slow and may consume            -->
      <!--                       significant proportions of server resources.   -->
      <!--                                                                      -->
      <!--   output              Output buffer size (in bytes) when writing     -->
      <!--                       resources to be served.  [2048]                -->
      <!--                                                                      -->
      <!--   readonly            Is this context "read only", so HTTP           -->
      <!--                       commands like PUT and DELETE are               -->
      <!--                       rejected?  [true]                              -->
      <!--                                                                      -->
      <!--   readmeFile          File name to display with the directory        -->
      <!--                       contents. [null]                               -->
      <!--                                                                      -->
      <!--   sendfileSize        If the connector used supports sendfile, this  -->
      <!--                       represents the minimal file size in KB for     -->
      <!--                       which sendfile will be used. Use a negative    -->
      <!--                       value to always disable sendfile.  [48]        -->
      <!--                                                                      -->
      <!--  For directory listing customization. Checks localXsltFile, then     -->
      <!--  globalXsltFile, then defaults to original behavior.                 -->
      <!--                                                                      -->
      <!--   localXsltFile       Make directory listings an XML doc and         -->
      <!--                       pass the result to this style sheet residing   -->
      <!--                       in that directory. This overrides              -->
      <!--                        globalXsltFile[null]                          -->
      <!--                                                                      -->
      <!--   globalXsltFile      Site wide configuration version of             -->
      <!--                       localXsltFile This argument is expected        -->
      <!--                       to be a physical file. [null]                  -->
      <!--                                                                      -->
      <!--                                                                      -->
    
        <servlet>
            <servlet-name>default</servlet-name>
            <servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class>
            <init-param>
                <param-name>debug</param-name>
                <param-value>0</param-value>
            </init-param>
            <init-param>
                <param-name>listings</param-name>
                <param-value>false</param-value>
            </init-param>
            <load-on-startup>1</load-on-startup>
        </servlet>
    
    
      <!-- The "invoker" servlet, which executes anonymous servlet classes      -->
      <!-- that have not been defined in a web.xml file.  Traditionally, this   -->
      <!-- servlet is mapped to the URL pattern "/servlet/*", but you can map   -->
      <!-- it to other patterns as well.  The extra path info portion of such a -->
      <!-- request must be the fully qualified class name of a Java class that  -->
      <!-- implements Servlet (or extends HttpServlet), or the servlet name     -->
      <!-- of an existing servlet definition.     This servlet supports the     -->
      <!-- following initialization parameters (default values are in square    -->
      <!-- brackets):                                                           -->
      <!--                                                                      -->
      <!--   debug               Debugging detail level for messages logged     -->
      <!--                       by this servlet.  [0]                          -->
    
    <!--
        <servlet>
            <servlet-name>invoker</servlet-name>
            <servlet-class>
              org.apache.catalina.servlets.InvokerServlet
            </servlet-class>
            <init-param>
                <param-name>debug</param-name>
                <param-value>0</param-value>
            </init-param>
            <load-on-startup>2</load-on-startup>
        </servlet>
    -->
    
    
      <!-- The JSP page compiler and execution servlet, which is the mechanism  -->
      <!-- used by Tomcat to support JSP pages.  Traditionally, this servlet    -->
      <!-- is mapped to the URL pattern "*.jsp".  This servlet supports the     -->
      <!-- following initialization parameters (default values are in square    -->
      <!-- brackets):                                                           -->
      <!--                                                                      -->
      <!--   checkInterval       If development is false and checkInterval is   -->
      <!--                       greater than zero, background compilations are -->
      <!--                       enabled. checkInterval is the time in seconds  -->
      <!--                       between checks to see if a JSP page needs to   -->
      <!--                       be recompiled. [0]                             -->
      <!--                                                                      -->
      <!--   modificationTestInterval                                           -->
      <!--                       Causes a JSP (and its dependent files) to not  -->
      <!--                       be checked for modification during the         -->
      <!--                       specified time interval (in seconds) from the  -->
      <!--                       last time the JSP was checked for              -->
      <!--                       modification. A value of 0 will cause the JSP  -->
      <!--                       to be checked on every access.                 -->
      <!--                       Used in development mode only. [4]             -->
      <!--                                                                      -->
      <!--   compiler            Which compiler Ant should use to compile JSP   -->
      <!--                       pages.  See the Ant documentation for more     -->
      <!--                       information.                                   -->
      <!--                                                                      -->
      <!--   classdebuginfo      Should the class file be compiled with         -->
      <!--                       debugging information?  [true]                 -->
      <!--                                                                      -->
      <!--   classpath           What class path should I use while compiling   -->
      <!--                       generated servlets?  [Created dynamically      -->
      <!--                       based on the current web application]          -->
      <!--                                                                      -->
      <!--   development         Is Jasper used in development mode? If true,   -->
      <!--                       the frequency at which JSPs are checked for    -->
      <!--                       modification may be specified via the          -->
      <!--                       modificationTestInterval parameter. [true]     -->
      <!--                                                                      -->
      <!--   enablePooling       Determines whether tag handler pooling is      -->
      <!--                       enabled  [true]                                -->
      <!--                                                                      -->
      <!--   fork                Tell Ant to fork compiles of JSP pages so that -->
      <!--                       a separate JVM is used for JSP page compiles   -->
      <!--                       from the one Tomcat is running in. [true]      -->
      <!--                                                                      -->
      <!--   ieClassId           The class-id value to be sent to Internet      -->
      <!--                       Explorer when using <jsp:plugin> tags.         -->
      <!--                       [clsid:8AD9C840-044E-11D1-B3E9-00805F499D93]   -->
      <!--                                                                      -->
      <!--   javaEncoding        Java file encoding to use for generating java  -->
      <!--                       source files. [UTF8]                           -->
      <!--                                                                      -->
      <!--   keepgenerated       Should we keep the generated Java source code  -->
      <!--                       for each page instead of deleting it? [true]   -->
      <!--                                                                      -->
      <!--   mappedfile          Should we generate static content with one     -->
      <!--                       print statement per input line, to ease        -->
      <!--                       debugging?  [true]                             -->
      <!--                                                                      -->
      <!--   trimSpaces          Should white spaces in template text between   -->
      <!--                       actions or directives be trimmed?  [false]     -->
      <!--                                                                      -->
      <!--   suppressSmap        Should the generation of SMAP info for JSR45   -->
      <!--                       debugging be suppressed?  [false]              -->
      <!--                                                                      -->
      <!--   dumpSmap            Should the SMAP info for JSR45 debugging be    -->
      <!--                       dumped to a file? [false]                      -->
      <!--                       False if suppressSmap is true                  -->
      <!--                                                                      -->
      <!--   genStrAsCharArray   Should text strings be generated as char       -->
      <!--                       arrays, to improve performance in some cases?  -->
      <!--                       [false]                                        -->
      <!--                                                                      -->
      <!--   errorOnUseBeanInvalidClassAttribute                                -->
      <!--                       Should Jasper issue an error when the value of -->
      <!--                       the class attribute in an useBean action is    -->
      <!--                       not a valid bean class?  [true]                -->
      <!--                                                                      -->
      <!--   scratchdir          What scratch directory should we use when      -->
      <!--                       compiling JSP pages?  [default work directory  -->
      <!--                       for the current web application]               -->
      <!--                                                                      -->
      <!--   xpoweredBy          Determines whether X-Powered-By response       -->
      <!--                       header is added by generated servlet  [false]  -->
      <!--                                                                      -->
      <!--   compilerTargetVM    Compiler target VM                             -->  
      <!--                       default is System.properties                   -->
      <!--                        java.specification.version > 1.4              -->
      <!--                        [1.5] else [1.4]                              -->
      <!--                                                                      -->
      <!--   compilerSourceVM    Compiler source VM                             -->
      <!--                       default is System.properties                   -->
      <!--                        java.specification.version > 1.4              -->
      <!--                        [1.5] else [1.4]                              -->
      <!--                                                                      -->
      <!-- If you wish to use Jikes to compile JSP pages:                       -->
      <!--   Please see the "Using Jikes" section of the Jasper-HowTo           -->
      <!--   page in the Tomcat documentation.                                  -->
    
        <servlet>
            <servlet-name>jsp</servlet-name>
            <servlet-class>org.apache.jasper.servlet.JspServlet</servlet-class>
            <init-param>
                <param-name>fork</param-name>
                <param-value>false</param-value>
            </init-param>
            <init-param>
                <param-name>xpoweredBy</param-name>
                <param-value>false</param-value>
            </init-param>
    
            <!-- Use a custom options class to allow the shared tag lib descriptors
             to be loaded from jars in the tomcat sar conf/tlds directory. The
             standard options implementation can only find taglibs based on the
             class loader classpath.
            -->
            <init-param>
               <param-name>engineOptionsClass</param-name>
               <param-value>org.jboss.web.tomcat.service.jasper.JspServletOptions</param-value>
            </init-param>
            <!-- Specify the jars relative to the jbossweb-tomcat6.sar that should
              be scanned for common tag lib descriptors to include in every war
              deployment.
            -->
            <init-param>
               <description>JSF standard tlds</description>
               <param-name>tagLibJar0</param-name>
               <param-value>jsf-libs/jsf-impl.jar</param-value>
            </init-param>
            <init-param>
               <description>JSTL standard tlds</description>
               <param-name>tagLibJar1</param-name>
               <param-value>jstl.jar</param-value>
            </init-param>
    
            <load-on-startup>3</load-on-startup>
        </servlet>
    
    
      <!-- NOTE: An SSI Filter is also available as an alternative SSI          -->
      <!-- implementation. Use either the Servlet or the Filter but NOT both.   -->
      <!--                                                                      -->
      <!-- Server Side Includes processing servlet, which processes SSI         -->
      <!-- directives in HTML pages consistent with similar support in web      -->
      <!-- servers like Apache.  Traditionally, this servlet is mapped to the   -->
      <!-- URL pattern "*.shtml".  This servlet supports the following          -->
      <!-- initialization parameters (default values are in square brackets):   -->
      <!--                                                                      -->
      <!--   buffered            Should output from this servlet be buffered?   -->
      <!--                       (0=false, 1=true)  [0]                         -->
      <!--                                                                      -->
      <!--   debug               Debugging detail level for messages logged     -->
      <!--                       by this servlet.  [0]                          -->
      <!--                                                                      -->
      <!--   expires             The number of seconds before a page with SSI   -->
      <!--                       directives will expire.  [No default]          -->
      <!--                                                                      -->
      <!--   isVirtualWebappRelative                                            -->
      <!--                       Should "virtual" paths be interpreted as       -->
      <!--                       relative to the context root, instead of       -->
      <!--                       the server root?  (0=false, 1=true) [0]        -->
      <!--                                                                      -->
      <!--   inputEncoding       The encoding to assume for SSI resources if    -->
      <!--                       one is not available from the resource.        -->
      <!--                       [Platform default]                             -->
      <!--                                                                      -->
      <!--   outputEncoding      The encoding to use for the page that results  -->
      <!--                       from the SSI processing. [UTF-8]               -->
      <!--                                                                      -->
      <!--                                                                      -->
      <!-- IMPORTANT: To use the SSI servlet, you also need to rename the       -->
      <!--            $CATALINA_HOME/server/lib/servlets-ssi.renametojar file   -->
      <!--            to $CATALINA_HOME/server/lib/servlets-ssi.jar             -->
    
    <!--
        <servlet>
            <servlet-name>ssi</servlet-name>
            <servlet-class>
              org.apache.catalina.ssi.SSIServlet
            </servlet-class>
            <init-param>
              <param-name>buffered</param-name>
              <param-value>1</param-value>
            </init-param>
            <init-param>
              <param-name>debug</param-name>
              <param-value>0</param-value>
            </init-param>
            <init-param>
              <param-name>expires</param-name>
              <param-value>666</param-value>
            </init-param>
            <init-param>
              <param-name>isVirtualWebappRelative</param-name>
              <param-value>0</param-value>
            </init-param>
            <load-on-startup>4</load-on-startup>
        </servlet>
    -->
    
    
      <!-- Common Gateway Includes (CGI) processing servlet, which supports     -->
      <!-- execution of external applications that conform to the CGI spec      -->
      <!-- requirements.  Typically, this servlet is mapped to the URL pattern  -->
      <!-- "/cgi-bin/*", which means that any CGI applications that are         -->
      <!-- executed must be present within the web application.  This servlet   -->
      <!-- supports the following initialization parameters (default values     -->
      <!-- are in square brackets):                                             -->
      <!--                                                                      -->
      <!--   cgiPathPrefix        The CGI search path will start at             -->
      <!--                        webAppRootDir + File.separator + this prefix. -->
      <!--                        [WEB-INF/cgi]                                 -->
      <!--                                                                      -->
      <!--   debug                Debugging detail level for messages logged    -->
      <!--                        by this servlet.  [0]                         -->
      <!--                                                                      -->
      <!--   executable           Name of the exectuable used to run the        -->
      <!--                        script. [perl]                                -->
      <!--                                                                      -->
      <!--   parameterEncoding    Name of parameter encoding to be used with    -->
      <!--                        CGI servlet.                                  -->
      <!--                        [System.getProperty("file.encoding","UTF-8")] -->
      <!--                                                                      -->
      <!--   passShellEnvironment Should the shell environment variables (if    -->
      <!--                        any) be passed to the CGI script? [false]     -->
      <!--                                                                      -->
      <!-- IMPORTANT: To use the CGI servlet, you also need to rename the       -->
      <!--            $CATALINA_HOME/server/lib/servlets-cgi.renametojar file   -->
      <!--            to $CATALINA_HOME/server/lib/servlets-cgi.jar             -->
    
    <!--
        <servlet>
            <servlet-name>cgi</servlet-name>
            <servlet-class>org.apache.catalina.servlets.CGIServlet</servlet-class>
            <init-param>
              <param-name>debug</param-name>
              <param-value>0</param-value>
            </init-param>
            <init-param>
              <param-name>cgiPathPrefix</param-name>
              <param-value>WEB-INF/cgi</param-value>
            </init-param>
             <load-on-startup>5</load-on-startup>
        </servlet>
    -->
    
    
      <!-- ================ Built In Servlet Mappings ========================= -->
    
    
      <!-- The servlet mappings for the built in servlets defined above.  Note  -->
      <!-- that, by default, the CGI and SSI servlets are *not* mapped.  You    -->
      <!-- must uncomment these mappings (or add them to your application's own -->
      <!-- web.xml deployment descriptor) to enable these services              -->
    
        <!-- The mapping for the default servlet -->
        <servlet-mapping>
            <servlet-name>default</servlet-name>
            <url-pattern>/</url-pattern>
        </servlet-mapping>
    
        <!-- The mapping for the invoker servlet -->
    <!--
        <servlet-mapping>
            <servlet-name>invoker</servlet-name>
            <url-pattern>/servlet/*</url-pattern>
        </servlet-mapping>
    -->
    
        <!-- The mapping for the JSP servlet -->
        <servlet-mapping>
            <servlet-name>jsp</servlet-name>
            <url-pattern>*.jsp</url-pattern>
        </servlet-mapping>
    
        <servlet-mapping>
            <servlet-name>jsp</servlet-name>
            <url-pattern>*.jspx</url-pattern>
        </servlet-mapping>
    
        <!-- The mapping for the SSI servlet -->
    <!--
        <servlet-mapping>
            <servlet-name>ssi</servlet-name>
            <url-pattern>*.shtml</url-pattern>
        </servlet-mapping>
    -->
    
        <!-- The mapping for the CGI Gateway servlet -->
    
    <!--
        <servlet-mapping>
            <servlet-name>cgi</servlet-name>
            <url-pattern>/cgi-bin/*</url-pattern>
        </servlet-mapping>
    -->
    
    
      <!-- ================== Built In Filter Definitions ===================== -->
    
      <!-- NOTE: An SSI Servlet is also available as an alternative SSI         -->
      <!-- implementation. Use either the Servlet or the Filter but NOT both.   -->
      <!--                                                                      -->
      <!-- Server Side Includes processing filter, which processes SSI          -->
      <!-- directives in HTML pages consistent with similar support in web      -->
      <!-- servers like Apache.  Traditionally, this filter is mapped to the    -->
      <!-- URL pattern "*.shtml", though it can be mapped to "*" as it will     -->
      <!-- selectively enable/disable SSI processing based on mime types. For   -->
      <!-- this to work you will need to uncomment the .shtml mime type         -->
      <!-- definition towards the bottom of this file.                          -->
      <!-- The contentType init param allows you to apply SSI processing to JSP -->
      <!-- pages, javascript, or any other content you wish.  This filter       -->
      <!-- supports the following initialization parameters (default values are -->
      <!-- in square brackets):                                                 -->
      <!--                                                                      -->
      <!--   contentType         A regex pattern that must be matched before    -->
      <!--                       SSI processing is applied.                     -->
      <!--                       [text/x-server-parsed-html(;.*)?]              -->
      <!--                                                                      -->
      <!--   debug               Debugging detail level for messages logged     -->
      <!--                       by this servlet.  [0]                          -->
      <!--                                                                      -->
      <!--   expires             The number of seconds before a page with SSI   -->
      <!--                       directives will expire.  [No default]          -->
      <!--                                                                      -->
      <!--   isVirtualWebappRelative                                            -->
      <!--                       Should "virtual" paths be interpreted as       -->
      <!--                       relative to the context root, instead of       -->
      <!--                       the server root?  (0=false, 1=true) [0]        -->
      <!--                                                                      -->
      <!--                                                                      -->
      <!-- IMPORTANT: To use the SSI filter, you also need to rename the        -->
      <!--            $CATALINA_HOME/server/lib/servlets-ssi.renametojar file   -->
      <!--            to $CATALINA_HOME/server/lib/servlets-ssi.jar             -->
    
    <!--
        <filter>
            <filter-name>ssi</filter-name>
            <filter-class>
              org.apache.catalina.ssi.SSIFilter
            </filter-class>
            <init-param>
              <param-name>contentType</param-name>
              <param-value>text/x-server-parsed-html(;.*)?</param-value>
            </init-param>
            <init-param>
              <param-name>debug</param-name>
              <param-value>0</param-value>
            </init-param>
            <init-param>
              <param-name>expires</param-name>
              <param-value>666</param-value>
            </init-param>
            <init-param>
              <param-name>isVirtualWebappRelative</param-name>
              <param-value>0</param-value>
            </init-param>
        </filter>
    -->
    
    
      <!-- ==================== Built In Filter Mappings ====================== -->
    
      <!-- The mapping for the SSI Filter -->
    <!--
        <filter-mapping>
            <filter-name>ssi</filter-name>
            <url-pattern>*.shtml</url-pattern>
        </filter-mapping>
    -->
    
    
      <!-- ==================== Default Session Configuration ================= -->
      <!-- You can set the default session timeout (in minutes) for all newly   -->
      <!-- created sessions by modifying the value below.                       -->
    
        <session-config>
            <session-timeout>100000</session-timeout>
        </session-config>
    
    
      <!-- ===================== Default MIME Type Mappings =================== -->
      <!-- When serving static resources, Tomcat will automatically generate    -->
      <!-- a "Content-Type" header based on the resource's filename extension,  -->
      <!-- based on these mappings.  Additional mappings can be added here (to  -->
      <!-- apply to all web applications), or in your own application's web.xml -->
      <!-- deployment descriptor.                                               -->
    
        <mime-mapping>
            <extension>abs</extension>
            <mime-type>audio/x-mpeg</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>ai</extension>
            <mime-type>application/postscript</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>aif</extension>
            <mime-type>audio/x-aiff</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>aifc</extension>
            <mime-type>audio/x-aiff</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>aiff</extension>
            <mime-type>audio/x-aiff</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>aim</extension>
            <mime-type>application/x-aim</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>art</extension>
            <mime-type>image/x-jg</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>asf</extension>
            <mime-type>video/x-ms-asf</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>asx</extension>
            <mime-type>video/x-ms-asf</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>au</extension>
            <mime-type>audio/basic</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>avi</extension>
            <mime-type>video/x-msvideo</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>avx</extension>
            <mime-type>video/x-rad-screenplay</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>bcpio</extension>
            <mime-type>application/x-bcpio</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>bin</extension>
            <mime-type>application/octet-stream</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>bmp</extension>
            <mime-type>image/bmp</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>body</extension>
            <mime-type>text/html</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>cdf</extension>
            <mime-type>application/x-cdf</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>cer</extension>
            <mime-type>application/x-x509-ca-cert</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>class</extension>
            <mime-type>application/java</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>cpio</extension>
            <mime-type>application/x-cpio</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>csh</extension>
            <mime-type>application/x-csh</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>css</extension>
            <mime-type>text/css</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>dib</extension>
            <mime-type>image/bmp</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>doc</extension>
            <mime-type>application/msword</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>dtd</extension>
            <mime-type>application/xml-dtd</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>dv</extension>
            <mime-type>video/x-dv</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>dvi</extension>
            <mime-type>application/x-dvi</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>eps</extension>
            <mime-type>application/postscript</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>etx</extension>
            <mime-type>text/x-setext</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>exe</extension>
            <mime-type>application/octet-stream</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>gif</extension>
            <mime-type>image/gif</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>gtar</extension>
            <mime-type>application/x-gtar</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>gz</extension>
            <mime-type>application/x-gzip</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>hdf</extension>
            <mime-type>application/x-hdf</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>hqx</extension>
            <mime-type>application/mac-binhex40</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>htc</extension>
            <mime-type>text/x-component</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>htm</extension>
            <mime-type>text/html</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>html</extension>
            <mime-type>text/html</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>hqx</extension>
            <mime-type>application/mac-binhex40</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>ief</extension>
            <mime-type>image/ief</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>jad</extension>
            <mime-type>text/vnd.sun.j2me.app-descriptor</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>jar</extension>
            <mime-type>application/java-archive</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>java</extension>
            <mime-type>text/plain</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>jnlp</extension>
            <mime-type>application/x-java-jnlp-file</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>jpe</extension>
            <mime-type>image/jpeg</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>jpeg</extension>
            <mime-type>image/jpeg</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>jpg</extension>
            <mime-type>image/jpeg</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>js</extension>
            <mime-type>text/javascript</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>jsf</extension>
            <mime-type>text/plain</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>jspf</extension>
            <mime-type>text/plain</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>kar</extension>
            <mime-type>audio/x-midi</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>latex</extension>
            <mime-type>application/x-latex</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>m3u</extension>
            <mime-type>audio/x-mpegurl</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>mac</extension>
            <mime-type>image/x-macpaint</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>man</extension>
            <mime-type>application/x-troff-man</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>mathml</extension>
            <mime-type>application/mathml+xml</mime-type> 
        </mime-mapping>
        <mime-mapping>
            <extension>me</extension>
            <mime-type>application/x-troff-me</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>mid</extension>
            <mime-type>audio/x-midi</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>midi</extension>
            <mime-type>audio/x-midi</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>mif</extension>
            <mime-type>application/x-mif</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>mov</extension>
            <mime-type>video/quicktime</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>movie</extension>
            <mime-type>video/x-sgi-movie</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>mp1</extension>
            <mime-type>audio/x-mpeg</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>mp2</extension>
            <mime-type>audio/x-mpeg</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>mp3</extension>
            <mime-type>audio/x-mpeg</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>mpa</extension>
            <mime-type>audio/x-mpeg</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>mpe</extension>
            <mime-type>video/mpeg</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>mpeg</extension>
            <mime-type>video/mpeg</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>mpega</extension>
            <mime-type>audio/x-mpeg</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>mpg</extension>
            <mime-type>video/mpeg</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>mpv2</extension>
            <mime-type>video/mpeg2</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>ms</extension>
            <mime-type>application/x-wais-source</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>nc</extension>
            <mime-type>application/x-netcdf</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>oda</extension>
            <mime-type>application/oda</mime-type>
        </mime-mapping>
        <mime-mapping>
            <!-- OpenDocument Database -->
            <extension>odb</extension>
            <mime-type>application/vnd.oasis.opendocument.database</mime-type>
        </mime-mapping>
        <mime-mapping>
            <!-- OpenDocument Chart -->
            <extension>odc</extension>
            <mime-type>application/vnd.oasis.opendocument.chart</mime-type>
        </mime-mapping>
        <mime-mapping>
            <!-- OpenDocument Formula -->
            <extension>odf</extension>
            <mime-type>application/vnd.oasis.opendocument.formula</mime-type>
        </mime-mapping>
        <mime-mapping>
            <!-- OpenDocument Drawing -->
            <extension>odg</extension>
            <mime-type>application/vnd.oasis.opendocument.graphics</mime-type>
        </mime-mapping>
        <mime-mapping>
            <!-- OpenDocument Image -->
            <extension>odi</extension>
            <mime-type>application/vnd.oasis.opendocument.image</mime-type>
        </mime-mapping>
        <mime-mapping>
            <!-- OpenDocument Master Document -->
            <extension>odm</extension>
            <mime-type>application/vnd.oasis.opendocument.text-master</mime-type>
        </mime-mapping>
        <mime-mapping>
            <!-- OpenDocument Presentation -->
            <extension>odp</extension>
            <mime-type>application/vnd.oasis.opendocument.presentation</mime-type>
        </mime-mapping>
        <mime-mapping>
            <!-- OpenDocument Spreadsheet -->
            <extension>ods</extension>
            <mime-type>application/vnd.oasis.opendocument.spreadsheet</mime-type>
        </mime-mapping>
        <mime-mapping>
            <!-- OpenDocument Text -->
            <extension>odt</extension>
            <mime-type>application/vnd.oasis.opendocument.text</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>ogg</extension>
            <mime-type>application/ogg</mime-type>
        </mime-mapping>
        <mime-mapping>
            <!-- OpenDocument Drawing Template -->
            <extension>otg </extension>
            <mime-type>application/vnd.oasis.opendocument.graphics-template</mime-type>
        </mime-mapping>
        <mime-mapping>
            <!-- HTML Document Template -->
            <extension>oth</extension>
            <mime-type>application/vnd.oasis.opendocument.text-web</mime-type>
        </mime-mapping>
        <mime-mapping>
            <!-- OpenDocument Presentation Template -->
            <extension>otp</extension>
            <mime-type>application/vnd.oasis.opendocument.presentation-template</mime-type>
        </mime-mapping>
        <mime-mapping>
            <!-- OpenDocument Spreadsheet Template -->
            <extension>ots</extension>
            <mime-type>application/vnd.oasis.opendocument.spreadsheet-template </mime-type>
        </mime-mapping>
        <mime-mapping>
            <!-- OpenDocument Text Template -->
            <extension>ott</extension>
            <mime-type>application/vnd.oasis.opendocument.text-template</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>pbm</extension>
            <mime-type>image/x-portable-bitmap</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>pct</extension>
            <mime-type>image/pict</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>pdf</extension>
            <mime-type>application/pdf</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>pgm</extension>
            <mime-type>image/x-portable-graymap</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>pic</extension>
            <mime-type>image/pict</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>pict</extension>
            <mime-type>image/pict</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>pls</extension>
            <mime-type>audio/x-scpls</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>png</extension>
            <mime-type>image/png</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>pnm</extension>
            <mime-type>image/x-portable-anymap</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>pnt</extension>
            <mime-type>image/x-macpaint</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>ppm</extension>
            <mime-type>image/x-portable-pixmap</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>ppt</extension>
            <mime-type>application/powerpoint</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>ps</extension>
            <mime-type>application/postscript</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>psd</extension>
            <mime-type>image/x-photoshop</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>qt</extension>
            <mime-type>video/quicktime</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>qti</extension>
            <mime-type>image/x-quicktime</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>qtif</extension>
            <mime-type>image/x-quicktime</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>ras</extension>
            <mime-type>image/x-cmu-raster</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>rdf</extension>
            <mime-type>application/rdf+xml</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>rgb</extension>
            <mime-type>image/x-rgb</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>rm</extension>
            <mime-type>application/vnd.rn-realmedia</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>roff</extension>
            <mime-type>application/x-troff</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>rtf</extension>
            <mime-type>application/rtf</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>rtx</extension>
            <mime-type>text/richtext</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>sh</extension>
            <mime-type>application/x-sh</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>shar</extension>
            <mime-type>application/x-shar</mime-type>
        </mime-mapping>
    <!--
        <mime-mapping>
            <extension>shtml</extension>
            <mime-type>text/x-server-parsed-html</mime-type>
        </mime-mapping>
    -->
        <mime-mapping>
            <extension>smf</extension>
            <mime-type>audio/x-midi</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>sit</extension>
            <mime-type>application/x-stuffit</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>snd</extension>
            <mime-type>audio/basic</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>src</extension>
            <mime-type>application/x-wais-source</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>sv4cpio</extension>
            <mime-type>application/x-sv4cpio</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>sv4crc</extension>
            <mime-type>application/x-sv4crc</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>swf</extension>
            <mime-type>application/x-shockwave-flash</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>t</extension>
            <mime-type>application/x-troff</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>tar</extension>
            <mime-type>application/x-tar</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>tcl</extension>
            <mime-type>application/x-tcl</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>tex</extension>
            <mime-type>application/x-tex</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>texi</extension>
            <mime-type>application/x-texinfo</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>texinfo</extension>
            <mime-type>application/x-texinfo</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>tif</extension>
            <mime-type>image/tiff</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>tiff</extension>
            <mime-type>image/tiff</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>tr</extension>
            <mime-type>application/x-troff</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>tsv</extension>
            <mime-type>text/tab-separated-values</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>txt</extension>
            <mime-type>text/plain</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>ulw</extension>
            <mime-type>audio/basic</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>ustar</extension>
            <mime-type>application/x-ustar</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>vxml</extension>
            <mime-type>application/voicexml+xml</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>xbm</extension>
            <mime-type>image/x-xbitmap</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>xht</extension>
            <mime-type>application/xhtml+xml</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>xhtml</extension>
            <mime-type>application/xhtml+xml</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>xml</extension>
            <mime-type>application/xml</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>xpm</extension>
            <mime-type>image/x-xpixmap</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>xsl</extension>
            <mime-type>application/xml</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>xslt</extension>
            <mime-type>application/xslt+xml</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>xul</extension>
            <mime-type>application/vnd.mozilla.xul+xml</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>xwd</extension>
            <mime-type>image/x-xwindowdump</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>wav</extension>
            <mime-type>audio/x-wav</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>svg</extension>
            <mime-type>image/svg+xml</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>svgz</extension>
            <mime-type>image/svg+xml</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>vsd</extension>
            <mime-type>application/x-visio</mime-type>
        </mime-mapping>
        <mime-mapping>
            <!-- Wireless Bitmap -->
            <extension>wbmp</extension>
            <mime-type>image/vnd.wap.wbmp</mime-type>
        </mime-mapping>
        <mime-mapping>
            <!-- WML Source -->
            <extension>wml</extension>
            <mime-type>text/vnd.wap.wml</mime-type>
        </mime-mapping>
        <mime-mapping>
            <!-- Compiled WML -->
            <extension>wmlc</extension>
            <mime-type>application/vnd.wap.wmlc</mime-type>
        </mime-mapping>
        <mime-mapping>
            <!-- WML Script Source -->
            <extension>wmls</extension>
            <mime-type>text/vnd.wap.wmlscript</mime-type>
        </mime-mapping>
        <mime-mapping>
            <!-- Compiled WML Script -->
            <extension>wmlscriptc</extension>
            <mime-type>application/vnd.wap.wmlscriptc</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>wrl</extension>
            <mime-type>x-world/x-vrml</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>Z</extension>
            <mime-type>application/x-compress</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>z</extension>
            <mime-type>application/x-compress</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>zip</extension>
            <mime-type>application/zip</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>xls</extension>
            <mime-type>application/vnd.ms-excel</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>doc</extension>
            <mime-type>application/vnd.ms-word</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>ppt</extension>
            <mime-type>application/vnd.ms-powerpoint</mime-type>
        </mime-mapping>
    
      <!-- ==================== Default Welcome File List ===================== -->
      <!-- When a request URI refers to a directory, the default servlet looks  -->
      <!-- for a "welcome file" within that directory and, if present,          -->
      <!-- to the corresponding resource URI for display.  If no welcome file   -->
      <!-- is present, the default servlet either serves a directory listing,   -->
      <!-- or returns a 404 status, depending on how it is configured.          -->
      <!--                                                                      -->
      <!-- If you define welcome files in your own application's web.xml        -->
      <!-- deployment descriptor, that list *replaces* the list configured      -->
      <!-- here, so be sure that you include any of the default values that     -->
      <!-- you wish to include.                                                 -->
    
        <welcome-file-list>
            <welcome-file>index.html</welcome-file>
            <welcome-file>index.htm</welcome-file>
            <welcome-file>index.jsp</welcome-file>
        </welcome-file-list>
    
    </web-app>
    
    C:\jboss\server\knowledge1\deploy\http-invoker.sar\META-INF\jboss-service.xml - Notepad
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE server>
    <!-- $Id: jboss-service.xml 26202 2004-11-29 16:54:36Z starksm $ -->
    
    <server>
    
      <!-- The HTTP invoker service configration
      -->
      <mbean code="org.jboss.invocation.http.server.HttpInvoker"
        name="jboss:service=invoker,type=http">
         <!-- Use a URL of the form http://<hostname>:10280/invoker/EJBInvokerServlet
          where <hostname> is InetAddress.getHostname value on which the server
          is running.
          -->
         <attribute name="InvokerURLPrefix">http://</attribute>
         <attribute name="InvokerURLSuffix">:10280/invoker/EJBInvokerServlet</attribute>
         <attribute name="UseHostName">true</attribute>
      </mbean>
    
       <!-- Expose the Naming service interface via HTTP -->
       <mbean code="org.jboss.invocation.http.server.HttpProxyFactory"
          name="jboss:service=invoker,type=http,target=Naming">
          <!-- The Naming service we are proxying -->
          <attribute name="InvokerName">jboss:service=Naming</attribute>
          <!-- Compose the invoker URL from the cluster node address -->
          <attribute name="InvokerURLPrefix">http://</attribute>
          <attribute name="InvokerURLSuffix">:10280/invoker/JMXInvokerServlet</attribute>
          <attribute name="UseHostName">true</attribute>
          <attribute name="ExportedInterface">org.jnp.interfaces.Naming</attribute>
          <attribute name="JndiName"></attribute>
          <attribute name="ClientInterceptors">
              <interceptors>
                 <interceptor>org.jboss.proxy.ClientMethodInterceptor</interceptor>
                 <interceptor>org.jboss.proxy.SecurityInterceptor</interceptor>
                 <interceptor>org.jboss.naming.interceptors.ExceptionInterceptor</interceptor>
                 <interceptor>org.jboss.invocation.InvokerInterceptor</interceptor>
              </interceptors>
          </attribute>
       </mbean>
    
       <!-- Expose the Naming service interface via clustered HTTP. This maps
       to the ReadOnlyJNDIFactory servlet URL
       -->
       <mbean code="org.jboss.invocation.http.server.HttpProxyFactory"
          name="jboss:service=invoker,type=http,target=Naming,readonly=true">
          <attribute name="InvokerName">jboss:service=Naming</attribute>
          <attribute name="InvokerURLPrefix">http://</attribute>
          <attribute name="InvokerURLSuffix">:10280/invoker/readonly/JMXInvokerServlet</attribute>
          <attribute name="UseHostName">true</attribute>
          <attribute name="ExportedInterface">org.jnp.interfaces.Naming</attribute>
          <attribute name="JndiName"></attribute>
          <attribute name="ClientInterceptors">
              <interceptors>
                 <interceptor>org.jboss.proxy.ClientMethodInterceptor</interceptor>
                 <interceptor>org.jboss.proxy.SecurityInterceptor</interceptor>
                 <interceptor>org.jboss.naming.interceptors.ExceptionInterceptor</interceptor>
                 <interceptor>org.jboss.invocation.InvokerInterceptor</interceptor>
              </interceptors>
          </attribute>
       </mbean>
    </server>
    
    C:\jboss\server\knowledge1\deploy\jms\uil2-service.xml - Notepad
    <?xml version="1.0" encoding="UTF-8"?>
    
    <!-- $Id: uil2-service.xml 35297 2005-08-25 15:03:20Z starksm $ -->
    
    <server>
    
      <!-- JBossMQ using the Unified Invocation Layer
           All communication uses one socket connection -->
    
      <mbean code="org.jboss.mq.il.uil2.UILServerILService"
    	 name="jboss.mq:service=InvocationLayer,type=UIL2">
    
        <!-- The server chain -->
        <depends optional-attribute-name="Invoker">jboss.mq:service=Invoker</depends>
        <!-- JNDI binding -->
        <attribute name="ConnectionFactoryJNDIRef">ConnectionFactory</attribute>
        <!-- JNDI binding for XA -->
        <attribute name="XAConnectionFactoryJNDIRef">XAConnectionFactory</attribute>
        <!-- The bind address -->
        <attribute name="BindAddress">${jboss.bind.address}</attribute>
        <!-- The bind port -->
        <attribute name="ServerBindPort">10293</attribute>
        <!-- The ping period in millis -->
        <attribute name="PingPeriod">60000</attribute>
        <!-- Whether tcp/ip does not wait for buffer fills -->
        <attribute name="EnableTcpNoDelay">true</attribute>
        <!-- Used to disconnect the client on the serverside if there is no activity -->
        <!-- Ensure this is greater than the ping period -->
        <attribute name="ReadTimeout">120000</attribute>
        <!-- Used to disconnect the client on the clientside if there is no activity -->
        <!-- Ensure this is greater than the ping period -->
        <attribute name="ClientReadTimeout">120000</attribute>
        <!-- The size of the buffer (in bytes) wrapping the socket -->
        <!-- The buffer is flushed after each request -->
        <attribute name="BufferSize">2048</attribute>
        <!-- Large messages may block the ping/pong -->
        <!-- A pong is simulated after each chunk (in bytes) for both reading and writing -->
        <!-- It must be larger than the buffer size -->
        <attribute name="ChunkSize">1000000</attribute>
      </mbean>
    
      <!-- Aliases UIL -> UIL2 for backwards compatibility 
           the deprecated UIL deployment can be found in docs/examples/jca -->
       <mbean code="org.jboss.naming.NamingAlias" name="jboss.mq:service=InvocationLayer,type=UIL">
          <attribute name="FromName">UILConnectionFactory</attribute>
          <attribute name="ToName">ConnectionFactory</attribute>
          <depends>jboss:service=Naming</depends>
       </mbean>
       <mbean code="org.jboss.naming.NamingAlias" name="jboss.mq:service=InvocationLayer,type=UILXA">
          <attribute name="FromName">UILXAConnectionFactory</attribute>
          <attribute name="ToName">XAConnectionFactory</attribute>
          <depends>jboss:service=Naming</depends>
       </mbean>
       <mbean code="org.jboss.naming.NamingAlias"
          name="jboss.mq:service=InvocationLayer,type=UIL2,alias=UIL2ConnectionFactory">
          <attribute name="FromName">UIL2ConnectionFactory</attribute>
          <attribute name="ToName">ConnectionFactory</attribute>
          <depends>jboss:service=Naming</depends>
       </mbean>
       <mbean code="org.jboss.naming.NamingAlias"
          name="jboss.mq:service=InvocationLayer,type=UIL2XA,alias=UIL2XAConnectionFactory">
          <attribute name="FromName">UIL2XAConnectionFactory</attribute>
          <attribute name="ToName">XAConnectionFactory</attribute>
          <depends>jboss:service=Naming</depends>
       </mbean>
    
       <!--
          Two JNDI bindings that act like jms client connections remotely
          but have j2ee defined semantics inside JBoss
       -->
       <mbean code="org.jboss.naming.LinkRefPairService"
              name="jboss.jms:alias=QueueConnectionFactory">
          <attribute name="JndiName">QueueConnectionFactory</attribute>
          <attribute name="RemoteJndiName">ConnectionFactory</attribute>
          <attribute name="LocalJndiName">java:/JmsXA</attribute>
          <depends>jboss:service=Naming</depends>
       </mbean>
       <mbean code="org.jboss.naming.LinkRefPairService"
              name="jboss.jms:alias=TopicConnectionFactory">
          <attribute name="JndiName">TopicConnectionFactory</attribute>
          <attribute name="RemoteJndiName">ConnectionFactory</attribute>
          <attribute name="LocalJndiName">java:/JmsXA</attribute>
          <depends>jboss:service=Naming</depends>
       </mbean>
    </server>
    
    C:\jboss\server\knowledge1\deploy\ejb3.deployer\META-INF\jboss-service.xml - Notepad
    <?xml version="1.0" encoding="UTF-8"?>
    <!--
       JBoss EJB3Deployer
       
       $Id: jboss-service.xml 61039 2007-03-02 01:17:31Z bdecoste $
    -->
    <server>
    
       <mbean code="org.jboss.remoting.transport.Connector"
              name="jboss.remoting:type=Connector,name=DefaultEjb3Connector,handler=ejb3">
          <depends>jboss.aop:service=AspectDeployer</depends>
          <attribute name="InvokerLocator">socket://${jboss.bind.address}:10273</attribute>
          <attribute name="Configuration">
             <handlers>
                <handler subsystem="AOP">org.jboss.aspects.remoting.AOPRemotingInvocationHandler</handler>
             </handlers>
          </attribute>
       </mbean>
    
       <mbean code="org.jboss.ejb3.JarsIgnoredForScanning" name="jboss.ejb3:service=JarsIgnoredForScanning">
          <attribute name="IgnoredJars">
             snmp-adaptor.jar,
             otherimages.jar,
             applet.jar,
             jcommon.jar,
             console-mgr-classes.jar,
             jfreechart.jar,
             juddi-service.jar,
             wsdl4j.jar,
             commons-collections.jar,
             commons-pool.jar,
             juddi.jar,
             commons-discovery.jar,
             uddi4j.jar,
             axis.jar,
             commons-dbcp.jar,
             jboss-juddiaxis.jar,
             trove.jar,
             javassist.jar,
             jboss-aop-jdk50.jar,
             jboss-aspect-library-jdk50.jar,
             ejb3-persistence.jar,
             commons-validator-1.1.3.jar,
             commons-collections.jar,
             commons-fileupload.jar,
             commons-pool.jar,
             hibernate-entitymanager.jar,
             jboss-ejb3x.jar,
             commons-digester-1.6.jar,
             cglib-2.1.1.jar,
             commons-discovery.jar,
             jboss-annotations-ejb3.jar,
             jaxen-1.1-beta-4.jar,
             hibernate-annotations.jar,
             commons-httpclient.jar,
             commons-logging.jar,
             commons-vfs.jar,
             hibernate3.jar,
             commons-logging-api.jar,
             asm.jar,
             asm-attrs.jar,
             commons-lang-2.0.jar,
             commons-beanutils.jar,
             jboss-ejb3.jar,
             dom4j.jar,
             commons-codec-1.2.jar,
             wsdl4j.jar,
             xmlsec.jar,
             jbossws.jar,
             jboss-bean-deployer.jar,
             jboss-microcontainer.jar,
             jboss-dependency.jar,
             jboss-container.jar,
             tomcat-coyote.jar,
             commons-collections.jar,
             myfaces.jar,
             jstl.jar,
             commons-digester-1.6.jar,
             myfaces-impl.jar,
             commons-beanutils.jar,
             myfaces-jsf-api.jar,
             commons-codec-1.2.jar,
             catalina-optional.jar,
             tomcat-util.jar,
             jasper-compiler.jar,
             commons-el.jar,
             jasper-compiler-jdt.jar,
             tomcat-http.jar,
             catalina-manager.jar,
             jasper-runtime.jar,
             tomcat55-service.jar,
             servlets-invoker.jar,
             catalina.jar,
             naming-resources.jar,
             servlets-default.jar,
             tomcat-ajp.jar,
             commons-modeler.jar,
             tomcat-apr.jar,
             servlets-webdav.jar
          </attribute>
       </mbean>
    
       <mbean code="org.jboss.ejb3.EJB3Deployer" name="jboss.ejb3:service=EJB3Deployer" xmbean-dd="">
    
          <attribute name="DeployEjb3ExtensionOnly">false</attribute>
    
          <!-- Inline XMBean Descriptor BEGIN -->
          <xmbean>
             <description>The EJB3Deployer responsible for ejb3 deployment</description>
             <descriptors>
                <interceptors>
                   <!-- comment out DynamicInterceptor to disable dynamic addition of interceptors -->
                   <interceptor code="org.jboss.mx.interceptor.DynamicInterceptor"/>
                </interceptors>
             </descriptors>
             <class>org.jboss.ejb3.EJB3Deployer</class>
    
             <!-- ServiceMBean attributes -->
             <attribute access="read-only" getMethod="getName">
                <description>The class name of the MBean</description>
                <name>Name</name>
                <type>java.lang.String</type>
             </attribute>
    
             <attribute access="read-only" getMethod="getState">
                <description>The status of the MBean</description>
                <name>State</name>
                <type>int</type>
             </attribute>
    
             <attribute access="read-only" getMethod="getStateString">
                <description>The status of the MBean in text form</description>
                <name>StateString</name>
                <type>java.lang.String</type>
             </attribute>
    
             <!-- SubDeployerMBean attributes -->
             <attribute access="read-only" getMethod="getServiceName">
                <description>The ObjectName of the Subdeployer</description>
                <name>ServiceName</name>
                <type>javax.management.ObjectName</type>
             </attribute>
    
             <attribute access="read-write" getMethod="getSuffixes" setMethod="setSuffixes">
                <description>The suffixes of interest to this deployer</description>
                <name>Suffixes</name>
                <type>[Ljava.lang.String;</type>
             </attribute>
    
             <attribute access="read-write" getMethod="getRelativeOrder" setMethod="setRelativeOrder">
                <description>The relative order of the suffixes in the global suffixes list</description>
                <name>RelativeOrder</name>
                <type>int</type>
             </attribute>
    
             <!-- EJB3DeployerMBean attributes -->
             <attribute access="read-only" getMethod="getDefaultProperties">
                <name>DefaultProperties</name>
                <type>java.util.Properties</type>
             </attribute>
    
             <attribute access="read-write" getMethod="getDeployEjb3ExtensionOnly" setMethod="setDeployEjb3ExtensionOnly">
                <description>If true, .jars will not be examined for annotations, 3.0 descriptors</description>
                <name>DeployEjb3ExtensionOnly</name>
                <type>boolean</type>
             </attribute>
    
             <attribute access="write-only" setMethod="setJarsIgnoredForScanning">
                <description>mbean that has list of jars to ignore</description>
                <name>JarsIgnoredForScanning</name>
                <type>org.jboss.ejb3.JarsIgnoredForScanningMBean</type>
             </attribute>
    
             <!-- ServiceMBean operations -->
             <operation>
                <description>Standard MBean lifecycle method</description>
                <name>create</name>
             </operation>
    
             <operation>
                <description>The start lifecycle operation</description>
                <name>start</name>
             </operation>
    
             <operation>
                <description>The stop lifecycle operation</description>
                <name>stop</name>
             </operation>
    
             <operation>
                <description>The destroy lifecycle operation</description>
                <name>destroy</name>
             </operation>
    
             <operation>
                <description>The detyped lifecycle operation (for internal use only)</description>
                <name>jbossInternalLifecycle</name>
                <parameter>
                   <description>The lifecycle operation</description>
                   <name>method</name>
                   <type>java.lang.String</type>
                </parameter>
                <return-type>void</return-type>
             </operation>
    
             <!-- SubDeployerMBean operations -->
             <operation>
                <description>Accept a module for deployment</description>
                <name>accepts</name>
                <parameter>
                   <name>info</name>
                   <type>org.jboss.deployment.DeploymentInfo</type>
                </parameter>
                <return-type>boolean</return-type>
             </operation>
    
             <operation>
                <description>Initialize deployment step</description>
                <name>init</name>
                <parameter>
                   <name>info</name>
                   <type>org.jboss.deployment.DeploymentInfo</type>
                </parameter>
             </operation>
    
             <operation>
                <description>Create deployment step</description>
                <name>create</name>
                <parameter>
                   <name>info</name>
                   <type>org.jboss.deployment.DeploymentInfo</type>
                </parameter>
             </operation>
    
             <operation>
                <description>Start deployment step</description>
                <name>start</name>
                <parameter>
                   <name>info</name>
                   <type>org.jboss.deployment.DeploymentInfo</type>
                </parameter>
             </operation>
    
             <operation>
                <description>Stop deployment step</description>
                <name>stop</name>
                <parameter>
                   <name>info</name>
                   <type>org.jboss.deployment.DeploymentInfo</type>
                </parameter>
             </operation>
    
             <operation>
                <description>Destroy deployment step</description>
                <name>destroy</name>
                <parameter>
                   <name>info</name>
                   <type>org.jboss.deployment.DeploymentInfo</type>
                </parameter>
             </operation>
    
             <!-- Interceptable operations -->
             <operation>
                <description>Add dynamically an operation interceptor</description>
                <name>addOperationInterceptor</name>
                <parameter>
                   <description>The Interceptor</description>
                   <name>interceptor</name>
                   <type>org.jboss.mx.interceptor.Interceptor</type>
                </parameter>
             </operation>
    
             <operation>
                <description>Remove dynamically an operation interceptor</description>
                <name>removeOperationInterceptor</name>
                <parameter>
                   <description>The Interceptor</description>
                   <name>interceptor</name>
                   <type>org.jboss.mx.interceptor.Interceptor</type>
                </parameter>
             </operation>
          </xmbean>
          <!-- Inline XMBean Descriptor END -->
    
          <depends>jboss.aop:service=AspectDeployer</depends>
          <depends>jboss.ejb:service=EJBDeployer</depends>
          <depends optional-attribute-name="JarsIgnoredForScanning" proxy-type="org.jboss.ejb3.JarsIgnoredForScanningMBean">jboss.ejb3:service=JarsIgnoredForScanning</depends>
       </mbean>
    
    </server>
    
    C:\jboss\server\knowledge1\deploy\atgselfservice-ds.xml - Notepad
    <?xml version="1.0" encoding="UTF-8"?>
    <datasources>
      <local-tx-datasource>
        <jndi-name>ATGSelfServiceDS</jndi-name>
        <connection-url>jdbc:oracle:thin:@localhost:1521:orcl</connection-url>
        <driver-class>oracle.jdbc.driver.OracleDriver</driver-class>
        <user-name>svcadmin</user-name>
        <password>svcadmin</password>
        <min-pool-size>5</min-pool-size>
        <max-pool-size>20</max-pool-size>
        <idle-timeout-minutes>0</idle-timeout-minutes>
        <track-statements/>
        <metadata>
           <type-mapping>Oracle</type-mapping>
        </metadata>
      </local-tx-datasource>
    </datasources>
    C:\jboss\server\knowledge1\deploy\atgknowledge-ds.xml - Notepad
    <?xml version="1.0" encoding="UTF-8"?>
    <datasources>
      <local-tx-datasource>
        <jndi-name>ATGKnowledgeDS</jndi-name>
        <connection-url>jdbc:oracle:thin:@localhost:1521:orcl</connection-url>
        <driver-class>oracle.jdbc.driver.OracleDriver</driver-class>
        <user-name>svcagent</user-name>
        <password>svcagent</password>
        <min-pool-size>5</min-pool-size>
        <max-pool-size>20</max-pool-size>
        <idle-timeout-minutes>0</idle-timeout-minutes>
        <track-statements/>
        <metadata>
           <type-mapping>Oracle</type-mapping>
        </metadata>
      </local-tx-datasource>
    </datasources>
    C:\jboss\server\knowledge1\deploy\atgsearch-ds.xml - Notepad
    <?xml version="1.0" encoding="UTF-8"?>
    <datasources>
      <local-tx-datasource>
        <jndi-name>ATGSearchDS</jndi-name>
        <connection-url>jdbc:oracle:thin:@localhost:1521:orcl</connection-url>
        <driver-class>oracle.jdbc.driver.OracleDriver</driver-class>
        <user-name>svcsearch</user-name>
        <password>svcsearch</password>
        <min-pool-size>5</min-pool-size>
        <max-pool-size>20</max-pool-size>
        <idle-timeout-minutes>0</idle-timeout-minutes>
        <track-statements/>
        <metadata>
           <type-mapping>Oracle</type-mapping>
        </metadata>
      </local-tx-datasource>
    </datasources>
    C:\jboss\server\knowledge1\deploy\atgpublishing-ds.xml - Notepad
    <?xml version="1.0" encoding="UTF-8"?>
    <datasources>
      <local-tx-datasource>
        <jndi-name>ATGResponseManagementDS</jndi-name>
        <connection-url>jdbc:oracle:thin:@localhost:1521:orcl</connection-url>
        <driver-class>oracle.jdbc.driver.OracleDriver</driver-class>
        <user-name>publishing</user-name>
        <password>publishing</password>
        <min-pool-size>5</min-pool-size>
        <max-pool-size>20</max-pool-size>
        <idle-timeout-minutes>0</idle-timeout-minutes>
        <track-statements/>
        <metadata>
           <type-mapping>Oracle</type-mapping>
        </metadata>
      </local-tx-datasource>
    </datasources>

  21. Configuring JBoss 4.2.0 GA for the management server
  22. Create all the JBoss servers

    copy C:\jboss\server\atg C:\jboss\server/management

    Edit individual files

    C:\jboss\server\management\conf\jboss-minimal.xml - Notepad
    <?xml version="1.0" encoding="UTF-8"?>
    
    <!-- $Id: jboss-minimal.xml 60298 2007-02-05 16:01:55Z dimitris@jboss.org $ -->
    
    <!-- ===================================================================== -->
    <!--                                                                       -->
    <!--  A minimal JBoss Server Configuration                                 -->
    <!--                                                                       -->
    <!-- ===================================================================== -->
    
    <server>
    
       <!-- Load all jars from the JBOSS_DIST/server/<config>/lib directory. This
         can be restricted to specific jars by specifying them in the archives
         attribute.
        -->
       <classpath codebase="${jboss.server.lib.url:lib}" archives="*"/>
    
       <!-- ==================================================================== -->
       <!-- Log4j Initialization                                                 -->
       <!-- ==================================================================== -->
       <mbean code="org.jboss.logging.Log4jService"
          name="jboss.system:type=Log4jService,service=Logging">
          <attribute name="ConfigurationURL">resource:jboss-log4j.xml</attribute>
       </mbean>
    
       <!-- ==================================================================== -->
       <!-- Thread Pool                                                          -->
       <!-- ==================================================================== -->
       
       <!-- A Thread pool service -->
       <mbean code="org.jboss.util.threadpool.BasicThreadPool"
          name="jboss.system:service=ThreadPool">
          <attribute name="Name">JBoss System Threads</attribute>
          <attribute name="ThreadGroupName">System Threads</attribute>
          <!-- How long a thread will live without any tasks in MS -->
          <attribute name="KeepAliveTime">60000</attribute>
          <!-- The max number of threads in the pool -->
          <attribute name="MaximumPoolSize">10</attribute>
          <!-- The max number of tasks before the queue is full -->
          <attribute name="MaximumQueueSize">1000</attribute>
          <!-- The behavior of the pool when a task is added and the queue is full.
          abort - a RuntimeException is thrown
          run - the calling thread executes the task
          wait - the calling thread blocks until the queue has room
          discard - the task is silently discarded without being run
          discardOldest - check to see if a task is about to complete and enque
             the new task if possible, else run the task in the calling thread
          -->
          <attribute name="BlockingMode">run</attribute>
       </mbean>
    
       <!-- ==================================================================== -->
       <!-- JNDI                                                                 -->
       <!-- ==================================================================== -->
       
       <!-- A simple mbean wrapper around the jndi Naming object. This
       only handles an in memory instance. The NamingService uses this
       as the JNDI store and exposes it remotely.
       -->
       <mbean code="org.jnp.server.NamingBeanImpl"
          name="jboss:service=NamingBeanImpl"
          xmbean-dd="resource:xmdesc/NamingBean-xmbean.xml">
       </mbean>
       
       <mbean code="org.jboss.naming.NamingService"
          name="jboss:service=Naming"
          xmbean-dd="resource:xmdesc/NamingService-xmbean.xml">
          <!-- The call by value mode. true if all lookups are unmarshalled using
             the caller's TCL, false if in VM lookups return the value by reference.
          -->
          <attribute name="CallByValue">false</attribute>
          <!-- The listening port for the bootstrap JNP service. Set this to -1
             to run the NamingService without the JNP invoker listening port.
          -->
          <attribute name="Port">10399</attribute>
          <!-- The bootstrap JNP server bind address. This also sets the default
             RMI service bind address. Empty == all addresses
          -->
          <attribute name="BindAddress">${jboss.bind.address}</attribute>
          <!-- The port of the RMI naming service, 0 == anonymous -->
          <attribute name="RmiPort">10398</attribute>
          <!-- The RMI service bind address. Empty == all addresses
          -->
          <attribute name="RmiBindAddress">${jboss.bind.address}</attribute>
          <!-- The thread pool service used to control the bootstrap lookups -->
          <depends optional-attribute-name="LookupPool"
             proxy-type="attribute">jboss.system:service=ThreadPool</depends>
          <!-- An example of using the unifed invoker as the transport.
             <depends optional-attribute-name="InvokerProxyFactory"
             proxy-type="attribute">jboss:service=proxyFactory,type=unified,target=Naming</depends>
          -->
          <depends optional-attribute-name="Naming"
             proxy-type="attribute">jboss:service=NamingBeanImpl</depends>
       </mbean>
    
       <!-- ==================================================================== -->
       <!-- Deployment Scanning                                                  -->
       <!-- ==================================================================== -->
    
       <!-- An mbean for hot deployment/undeployment of archives.
       -->
       <mbean code="org.jboss.deployment.scanner.URLDeploymentScanner"
          name="jboss.deployment:type=DeploymentScanner,flavor=URL">
    
          <depends optional-attribute-name="Deployer">jboss.system:service=MainDeployer</depends>
    
          <!-- The URLComparator can be used to specify a deployment ordering
               for deployments found in a scanned directory.  The class specified
               must be an implementation of java.util.Comparator, it must be able
               to compare two URL objects, and it must have a no-arg constructor.
               Two deployment comparators are shipped with JBoss:
                 - org.jboss.deployment.DeploymentSorter 
                   Sorts by file extension, as follows:
                     "sar", "service.xml", "rar", "jar", "war", "wsr", "ear", "zip", 
                     "*"
                 - org.jboss.deployment.scanner.PrefixDeploymentSorter
                   If the name portion of the url begins with 1 or more digits, those 
                   digits are converted to an int (ignoring leading zeroes), and 
                   files are deployed in that order.  Files that do not start with 
                   any digits will be deployed last, and they will be sorted by
                   extension as above with DeploymentSorter.
          -->
          <attribute name="URLComparator">org.jboss.deployment.DeploymentSorter</attribute>
          
          <!-- The Filter specifies a java.io.FileFilter for scanned
               directories.  Any file not accepted by this filter will not be
               deployed.  The org.jboss.deployment.scanner.DeploymentFilter 
               rejects the following patterns:
                   "#*", "%*", ",*", ".*", "_$*", "*#", "*$", "*%", "*.BAK", 
                   "*.old", "*.orig", "*.rej", "*.bak", "*,v", "*~", ".make.state", 
                   ".nse_depinfo", "CVS", "CVS.admin", "RCS", "RCSLOG", "SCCS", 
                   "TAGS", "core", "tags"
          -->
          <attribute name="Filter">org.jboss.deployment.scanner.DeploymentFilter</attribute>
    
          <attribute name="ScanPeriod">5000</attribute>
    
          <!-- URLs are comma seperated and unprefixed arguments are considered
             file URLs and resolve relative to server home(JBOSS_DIST/server/default)
             unless the given path is absolute. Any referenced directories cannot
             be unpackaged archives, use the parent directory of the unpacked
             archive.
           -->
          <attribute name="URLs">
           deploy/
          </attribute>
          
       </mbean>
    
    </server>
    
    C:\jboss\server\management\conf\jboss-service.xml - Notepad
    <?xml version="1.0" encoding="UTF-8"?>
    
    <!-- $Id: jboss-service.xml 62434 2007-04-19 21:22:50Z dimitris@jboss.org $ -->
    
    <!-- ===================================================================== -->
    <!--  JBoss Server Configuration                                           -->
    <!-- ===================================================================== -->
    
    <server>
    
       <!-- Load all jars from the JBOSS_DIST/server/<config>/lib directory. This
         can be restricted to specific jars by specifying them in the archives
         attribute.
        -->
       <classpath codebase="${jboss.server.lib.url:lib}" archives="*"/>
    
       <!-- ==================================================================== -->
       <!-- JSR-77 Single JBoss Server Management Domain                         -->
       <!-- ==================================================================== -->
       <mbean code="org.jboss.management.j2ee.LocalJBossServerDomain"
          name="jboss.management.local:j2eeType=J2EEDomain,name=Manager">
          <attribute name="MainDeployer">jboss.system:service=MainDeployer</attribute>
          <attribute name="SARDeployer">jboss.system:service=ServiceDeployer</attribute>
          <attribute name="EARDeployer">jboss.j2ee:service=EARDeployer</attribute>
          <attribute name="EJBDeployer">jboss.ejb:service=EJBDeployer</attribute>
          <attribute name="RARDeployer">jboss.jca:service=RARDeployer</attribute>
          <attribute name="CMDeployer">jboss.jca:service=ConnectionFactoryDeployer</attribute>
          <attribute name="WARDeployer">jboss.web:service=WebServer</attribute>
          <attribute name="CARDeployer">jboss.j2ee:service=ClientDeployer</attribute>
          <attribute name="MailService">jboss:service=Mail</attribute>
          <attribute name="JMSService">jboss.mq:service=DestinationManager</attribute>
          <attribute name="JNDIService">jboss:service=Naming</attribute>
          <attribute name="JTAService">jboss:service=TransactionManager</attribute>
          <attribute name="UserTransactionService">jboss:service=ClientUserTransaction</attribute>
          <attribute name="RMI_IIOPService">jboss:service=CorbaORB</attribute>
       </mbean>
    
       <!-- ==================================================================== -->
       <!-- XMBean Persistence                                                   -->
       <!-- ==================================================================== -->
       <mbean code="org.jboss.system.pm.AttributePersistenceService"
          name="jboss:service=AttributePersistenceService"
          xmbean-dd="resource:xmdesc/AttributePersistenceService-xmbean.xml">
          <!-- the AttributePersistenceService is persistent, itself -->
    
          <!--
          <attribute name="AttributePersistenceManagerClass">org.jboss.system.pm.XMLAttributePersistenceManager</attribute>
          <attribute name="AttributePersistenceManagerConfig">
             <data-directory>data/xmbean-attrs</data-directory>
          </attribute>
          <attribute name="ApmDestroyOnServiceStop">false</attribute>
          <attribute name="VersionTag"></attribute>
          -->
       </mbean>
    
       <!-- ==================================================================== -->
       <!-- Thread Pool                                                          -->
       <!-- ==================================================================== -->
       
       <!-- A Thread pool service -->
       <mbean code="org.jboss.util.threadpool.BasicThreadPool"
          name="jboss.system:service=ThreadPool">
          <attribute name="Name">JBoss System Threads</attribute>
          <attribute name="ThreadGroupName">System Threads</attribute>
          <!-- How long a thread will live without any tasks in MS -->
          <attribute name="KeepAliveTime">60000</attribute>
          <!-- The max number of threads in the pool -->
          <attribute name="MaximumPoolSize">10</attribute>
          <!-- The max number of tasks before the queue is full -->
          <attribute name="MaximumQueueSize">1000</attribute>
          <!-- The behavior of the pool when a task is added and the queue is full.
          abort - a RuntimeException is thrown
          run - the calling thread executes the task
          wait - the calling thread blocks until the queue has room
          discard - the task is silently discarded without being run
          discardOldest - check to see if a task is about to complete and enque
             the new task if possible, else run the task in the calling thread
          -->
          <attribute name="BlockingMode">run</attribute>
       </mbean>
    
       <!-- Preload all custom editors for VMs that don't use the thread
            context class loader when searching for PropertyEditors. Uncomment
            if your JDK 1.3.0 VM fails to find JBoss PropertyEditors.
       <mbean code="org.jboss.varia.property.PropertyEditorManagerService"
         name="jboss:type=Service,name=BootstrapEditors">
         <attribute name="BootstrapEditors">
           java.math.BigDecimal=org.jboss.util.propertyeditor.BigDecimalEditor
           java.lang.Boolean=org.jboss.util.propertyeditor.BooleanEditor
           java.lang.Class=org.jboss.util.propertyeditor.ClassEditor
           java.util.Date=org.jboss.util.propertyeditor.DateEditor
           java.io.File=org.jboss.util.propertyeditor.FileEditor
           java.net.InetAddress=org.jboss.util.propertyeditor.InetAddressEditor
           java.lang.Integer=org.jboss.util.propertyeditor.IntegerEditor
           javax.management.ObjectName=org.jboss.mx.util.propertyeditor.ObjectNameEditor
           java.util.Properties=org.jboss.util.propertyeditor.PropertiesEditor
           [Ljava.lang.String;=org.jboss.util.propertyeditor.StringArrayEditor
           java.net.URL=org.jboss.util.propertyeditor.URLEditor
         </attribute>
       </mbean>
       -->
    
       <!-- ==================================================================== -->
       <!-- Log4j Initialization                                                 -->
       <!-- ==================================================================== -->
    
       <mbean code="org.jboss.logging.Log4jService"
          name="jboss.system:type=Log4jService,service=Logging"
    	  xmbean-dd="resource:xmdesc/Log4jService-xmbean.xml">
          <attribute name="ConfigurationURL">resource:jboss-log4j.xml</attribute>
          <!-- Set the org.apache.log4j.helpers.LogLog.setQuiteMode. As of log4j1.2.8
          this needs to be set to avoid a possible deadlock on exception at the
          appender level. See bug#696819.
          -->
          <attribute name="Log4jQuietMode">true</attribute>
          <!-- How frequently in seconds the ConfigurationURL is checked for changes -->
          <attribute name="RefreshPeriod">60</attribute>
       </mbean>
    
       <!-- ==================================================================== -->
       <!-- Active Alarm Table                                                   -->
       <!-- ==================================================================== -->
    
       <!--
          | The ActiveAlarmTable service is a simple JMX notification listener
          | that maintains a table with the received notifications (alarms).
          | The alarms can be acknowledged through the jmx or the web console.
          | Modify the SubscriptionList below to subscribe for any notification
          | in the system and treat it as an alarm.
          | The JMXNotificationAppender is a log4j Appender that can be configured
          | in log4j.xml, that trasforms logging events to JMX notification so they
          | can be fed back into the table. By storing the WARN or higher level logging
          | events you can have a quick view of important system faults.
          |
          | The following attributes may be set:
          |
          | MaxTableSize (default 1000)
          |  - set an upper limit to the number of stored alarms
          | LogLevel (default DEBUG)
          |  - the log level to use for received notification, can be set to NONE
          | ServerId (default jboss)
          |  - used to construct unique alarm ids
          | SubscriptionList
          |  - subscribe for the notifications to be stored in the table
    
       <mbean code="org.jboss.monitor.services.ActiveAlarmTable"
              name="jboss.monitor:service=ActiveAlarmTable">
          <attribute name="SubscriptionList">
             <subscription-list>
                <mbean name="jboss.monitor:*">
                   <notification type="jboss.alarm"/>
                   <notification type="JBOSS_MONITOR_NOTIFICATION"/>
                </mbean>
                <mbean name="jboss.system:service=Logging,type=JMXNotificationAppender"/>
             </subscription-list>
          </attribute>
       </mbean>
       -->
    
       <!-- ==================================================================== -->
       <!-- JBoss RMI Classloader - only install when available                  -->
       <!-- ==================================================================== -->
       <mbean code="org.jboss.util.property.jmx.SystemPropertyClassValue"
          name="jboss.rmi:type=RMIClassLoader">
          <attribute name="Property">java.rmi.server.RMIClassLoaderSpi</attribute>
          <attribute name="ClassName">org.jboss.system.JBossRMIClassLoader</attribute>
       </mbean>
    
       <!-- ==================================================================== -->
       <!-- Service Binding                                                      -->
       <!-- ==================================================================== -->
    
       <!-- Automatically activated when generatting the clustering environment -->
       <!-- @TESTSUITE_CLUSTER_CONFIG@ -->
    
       <!--
          | Binding service manager for port/host mapping. This is a sample
          | config that demonstrates a JBoss instances with a server name 'ports-01'
          | loading its bindings from an XML file using the ServicesStoreFactory
          | implementation returned by the XMLServicesStoreFactory.
          |
          | ServerName: The unique name assigned to a JBoss server instance for
          | lookup purposes. This allows a single ServicesStore to handle mulitiple
          | JBoss servers.
          |
          | StoreURL: The URL string passed to org.jboss.services.binding.ServicesStore
          | during initialization that specifies how to connect to the bindings store.
          | StoreFactory: The org.jboss.services.binding.ServicesStoreFactory interface
          | implementation to create to obtain the ServicesStore instance.
    
       <mbean code="org.jboss.services.binding.ServiceBindingManager"
         name="jboss.system:service=ServiceBindingManager">
         <attribute name="ServerName">ports-01</attribute>
         <attribute name="StoreURL">${jboss.home.url}/docs/examples/binding-manager/sample-bindings.xml</attribute>
         <attribute name="StoreFactoryClassName">
           org.jboss.services.binding.XMLServicesStoreFactory
         </attribute>
       </mbean>
       -->
    
       <!-- ==================================================================== -->
       <!-- Class Loading                                                        -->
       <!-- ==================================================================== -->
    
       <!-- A mini webserver used for dynamic and class and resource loading --> 
       <mbean code="org.jboss.web.WebService"
          name="jboss:service=WebService">
          <!-- The Bind address and Port -->
          <attribute name="BindAddress">${jboss.bind.address}</attribute>      
          <attribute name="Port">10383</attribute>
          <!--  The address to use for the host portion of the RMI codebase URL -->
          <attribute name="Host">${java.rmi.server.hostname}</attribute>
          <!-- Should non-EJB .class files be downloadable -->
          <attribute name="DownloadServerClasses">true</attribute>
          <!-- Should resources other than .class files be downloadable. Both
             DownloadServerClasses and DownloadResources must be true for resources
             to be downloadable. This is false by default because its generally a
             bad idea as server configuration files that container security
             information can be accessed.
           -->
          <attribute name="DownloadResources">false</attribute>
    
          <!-- Use the default thread pool for dynamic class loading -->
          <depends optional-attribute-name="ThreadPool"
             proxy-type="attribute">jboss.system:service=ThreadPool</depends>
       </mbean>
    
       <!-- ==================================================================== -->
       <!-- JNDI                                                                 -->
       <!-- ==================================================================== -->
    
       <!-- A simple mbean wrapper around the jndi Naming object. This
       only handles an in memory instance. The NamingService uses this
       as the JNDI store and exposes it remotely.
       -->
       <mbean code="org.jnp.server.NamingBeanImpl"
          name="jboss:service=NamingBeanImpl"
          xmbean-dd="resource:xmdesc/NamingBean-xmbean.xml">
       </mbean>
       
       <mbean code="org.jboss.naming.NamingService"
          name="jboss:service=Naming"
          xmbean-dd="resource:xmdesc/NamingService-xmbean.xml">
          <!-- The call by value mode. true if all lookups are unmarshalled using
             the caller's TCL, false if in VM lookups return the value by reference.
          -->
          <attribute name="CallByValue">false</attribute>
          <!-- The listening port for the bootstrap JNP service. Set this to -1
             to run the NamingService without the JNP invoker listening port.
          -->
          <attribute name="Port">10399</attribute>
          <!-- The bootstrap JNP server bind address. This also sets the default
             RMI service bind address. Empty == all addresses
          -->
          <attribute name="BindAddress">${jboss.bind.address}</attribute>
          <!-- The port of the RMI naming service, 0 == anonymous -->
          <attribute name="RmiPort">10398</attribute>
          <!-- The RMI service bind address. Empty == all addresses
          -->
          <attribute name="RmiBindAddress">${jboss.bind.address}</attribute>
          <!-- The thread pool service used to control the bootstrap lookups -->
          <depends optional-attribute-name="LookupPool"
             proxy-type="attribute">jboss.system:service=ThreadPool</depends>
          <!-- An example of using the unifed invoker as the transport.
             <depends optional-attribute-name="InvokerProxyFactory"
             proxy-type="attribute">jboss:service=proxyFactory,type=unified,target=Naming</depends>
          -->
          <depends optional-attribute-name="Naming"
             proxy-type="attribute">jboss:service=NamingBeanImpl</depends>
       </mbean>
       
       <mbean code="org.jboss.naming.JNDIView"
       	name="jboss:service=JNDIView"
       	xmbean-dd="resource:xmdesc/JNDIView-xmbean.xml">
       	<!-- The HANamingService service name -->
       	<attribute name="HANamingService">jboss:service=HAJNDI</attribute>
       </mbean>
    
       <!-- ==================================================================== -->
       <!-- Security                                                             -->
       <!-- ==================================================================== -->
    
       <mbean code="org.jboss.security.plugins.SecurityConfig"
          name="jboss.security:service=SecurityConfig">
          <attribute name="LoginConfig">jboss.security:service=XMLLoginConfig</attribute>
       </mbean>
       <mbean code="org.jboss.security.auth.login.XMLLoginConfig"
          name="jboss.security:service=XMLLoginConfig">
          <attribute name="ConfigResource">login-config.xml</attribute>
       </mbean>
    
       <!-- JAAS security manager and realm mapping -->
       <mbean code="org.jboss.security.plugins.JaasSecurityManagerService"
          name="jboss.security:service=JaasSecurityManager">
          <!-- A flag which indicates whether the SecurityAssociation server mode
          is set on service creation. This is true by default since the
          SecurityAssociation should be thread local for multi-threaded server
          operation.
          -->
          <attribute name="ServerMode">true</attribute>
          <attribute name="SecurityManagerClassName">org.jboss.security.plugins.JaasSecurityManager</attribute>
          <attribute name="DefaultUnauthenticatedPrincipal">anonymous</attribute>
          <!-- DefaultCacheTimeout: Specifies the default timed cache policy timeout
          in seconds.
          If you want to disable caching of security credentials, set this to 0 to
          force authentication to occur every time. This has no affect if the
          AuthenticationCacheJndiName has been changed from the default value.
          -->
          <attribute name="DefaultCacheTimeout">1800</attribute>
          <!-- DefaultCacheResolution: Specifies the default timed cache policy
          resolution in seconds. This controls the interval at which the cache
          current timestamp is updated and should be less than the DefaultCacheTimeout
          in order for the timeout to be meaningful. This has no affect if the
          AuthenticationCacheJndiName has been changed from the default value.
          -->
          <attribute name="DefaultCacheResolution">60</attribute>
          <!-- DeepCopySubjectMode: This set the copy mode of subjects done by the
          security managers to be deep copies that makes copies of the subject
          principals and credentials if they are cloneable. It should be set to
          true if subject include mutable content that can be corrupted when
          multiple threads have the same identity and cache flushes/logout clearing
          the subject in one thread results in subject references affecting other
          threads.
          -->
          <attribute name="DeepCopySubjectMode">false</attribute>
       </mbean>
    
       <!-- ==================================================================== -->
       <!-- Transactions                                                         -->
       <!-- ==================================================================== -->
    
       <!-- The configurable Xid factory.  For use with Oracle, set pad to true -->
       <mbean code="org.jboss.tm.XidFactory"
          name="jboss:service=XidFactory">
          <attribute name="Pad">true</attribute>
       </mbean>
    
       <!--
          | The fast in-memory transaction manager.
          | Deprecated in JBossAS v4.2. Use JBossTS JTA instead.
        - ->
       <mbean code="org.jboss.tm.TransactionManagerService"
          name="jboss:service=TransactionManager"
          xmbean-dd="resource:xmdesc/TransactionManagerService-xmbean.xml">
          <attribute name="TransactionTimeout">300</attribute>
          <!- - set to false to disable transaction demarcation over IIOP - ->
          <attribute name="GlobalIdsEnabled">true</attribute>
          <depends optional-attribute-name="XidFactory">jboss:service=XidFactory</depends>
    
          <!- - Transaction Integrity Checking - ->
          <!- - Force a rollback if another thread is associated with the transaction at commit - ->
          <!- - <depends optional-attribute-name="TransactionIntegrityFactory"
                   proxy-type="org.jboss.tm.integrity.TransactionIntegrityFactory">
             <mbean code="org.jboss.tm.integrity.FailIncompleteTransaction"
                    name="jboss:service=TransactionManager,plugin=TransactionIntegrity"/>
          </depends> - ->
       </mbean>
       -->
    
       <!-- JBoss Transactions JTA -->
       <mbean code="com.arjuna.ats.jbossatx.jta.TransactionManagerService"
          name="jboss:service=TransactionManager">
          <attribute name="TransactionTimeout">300</attribute>
          <attribute name="ObjectStoreDir">${jboss.server.data.dir}/tx-object-store</attribute> 
       </mbean>
    
       <!--
          | UserTransaction support.
        -->
       <mbean code="org.jboss.tm.usertx.server.ClientUserTransactionService"
          name="jboss:service=ClientUserTransaction"
          xmbean-dd="resource:xmdesc/ClientUserTransaction-xmbean.xml">
          <depends>
             <mbean code="org.jboss.invocation.jrmp.server.JRMPProxyFactory"
                name="jboss:service=proxyFactory,target=ClientUserTransactionFactory">
                <attribute name="InvokerName">jboss:service=invoker,type=jrmp</attribute>
                <attribute name="TargetName">jboss:service=ClientUserTransaction</attribute>
                <attribute name="JndiName">UserTransactionSessionFactory</attribute>
                <attribute name="ExportedInterface">org.jboss.tm.usertx.interfaces.UserTransactionSessionFactory</attribute>
                <attribute name="ClientInterceptors">
                   <interceptors>
                      <interceptor>org.jboss.proxy.ClientMethodInterceptor</interceptor>
                      <interceptor>org.jboss.invocation.InvokerInterceptor</interceptor>
                   </interceptors>
                </attribute>
                <depends>jboss:service=invoker,type=jrmp</depends>
             </mbean>
          </depends>
          <depends optional-attribute-name="TxProxyName">
             <mbean code="org.jboss.invocation.jrmp.server.JRMPProxyFactory"
                name="jboss:service=proxyFactory,target=ClientUserTransaction">
                <attribute name="InvokerName">jboss:service=invoker,type=jrmp</attribute>
                <attribute name="TargetName">jboss:service=ClientUserTransaction</attribute>
                <attribute name="JndiName"></attribute>
                <attribute name="ExportedInterface">org.jboss.tm.usertx.interfaces.UserTransactionSession</attribute>
                <attribute name="ClientInterceptors">
                   <interceptors>
                      <interceptor>org.jboss.proxy.ClientMethodInterceptor</interceptor>
                      <interceptor>org.jboss.invocation.InvokerInterceptor</interceptor>
                   </interceptors>
                </attribute>
                <depends>jboss:service=invoker,type=jrmp</depends>
             </mbean>
          </depends>
       </mbean>
    
       <!-- ==================================================================== -->
       <!-- Invokers to the JMX node                                             -->
       <!-- ==================================================================== -->
    
       <!-- Unified invoker (based on remoting) -->
       <mbean code="org.jboss.invocation.unified.server.UnifiedInvoker"
          name="jboss:service=invoker,type=unified">
          <!-- To turn on strict RMI exception propagation uncomment block below -->
          <!-- This will cause the UnifiedInvokerProxy to wrap RemoteExceptions  -->
          <!-- within a ServerException, otherwise will throw root exception     -->
          <!-- (not RemoteException)                                             -->
          <!-- <attribute name="StrictRMIException">true</attribute> -->
          <depends>jboss:service=TransactionManager</depends>
          <depends>jboss.remoting:service=Connector,transport=socket</depends>
       </mbean>
    
       <!-- RMI/JRMP invoker -->
       <mbean code="org.jboss.invocation.jrmp.server.JRMPInvoker"
          name="jboss:service=invoker,type=jrmp">
          <attribute name="RMIObjectPort">10344</attribute>
          <attribute name="ServerAddress">${jboss.bind.address}</attribute>
          <!--
          <attribute name="RMIClientSocketFactory">custom</attribute>
          <attribute name="RMIServerSocketFactory">custom</attribute>
          <attribute name="RMIServerSocketAddr">custom</attribute>
          <attribute name="SecurityDomain">ssl-domain-name</attribute>
          -->
          <depends>jboss:service=TransactionManager</depends>
       </mbean>
    
       <mbean code="org.jboss.invocation.local.LocalInvoker"
          name="jboss:service=invoker,type=local">
    
          <depends>jboss:service=TransactionManager</depends>
       </mbean>
    
       <mbean code="org.jboss.invocation.pooled.server.PooledInvoker"
          name="jboss:service=invoker,type=pooled">
          <attribute name="NumAcceptThreads">1</attribute>
          <attribute name="MaxPoolSize">300</attribute>
          <attribute name="ClientMaxPoolSize">300</attribute>
          <attribute name="SocketTimeout">60000</attribute>
          <attribute name="ServerBindAddress">${jboss.bind.address}</attribute>
          <attribute name="ServerBindPort">10345</attribute>
          <attribute name="ClientConnectAddress">${jboss.bind.address}</attribute>
          <attribute name="ClientConnectPort">0</attribute>
          <attribute name="ClientRetryCount">1</attribute>
          <attribute name="EnableTcpNoDelay">false</attribute>
    
          <!-- Customized socket factory attributes
          <attribute name="ClientSocketFactoryName">custom.client.factory</attribute>
          <attribute name="ServerSocketFactoryName">custom.server.factory</attribute>
          <attribute name="SslDomain">java:/jaas/pooledInvoker</attribute>
          -->
          <depends optional-attribute-name="TransactionManagerService">jboss:service=TransactionManager</depends>
       </mbean>
    
       <!-- ==================================================================== -->
       <!-- Remoting services 						                                   -->
       <!-- ==================================================================== -->
    
       <!-- For detailed description of all these configuration attributes, please see the -->
       <!-- JBoss Remoting User's Guide or wiki (http://labs.jboss.com/portal/jbossremoting/docs/guide/index.html) -->
    
        <!-- The NetworkRegistry contains all the local and remote -->
        <!-- servers that it recognizes.  The remote ones registered -->
        <!-- are dependant on the detectors running and which domains -->
        <!-- they are configured to identify.                         -->
        <mbean code="org.jboss.remoting.network.NetworkRegistry"
               name="jboss.remoting:service=NetworkRegistry"/>
    
       <!-- The Connector is the core component of the remoting server service. -->
       <!-- It binds the remoting invoker (transport protocol, callback configuration, -->
       <!-- data marshalling, etc.) with the invocation handlers.  -->
       <mbean code="org.jboss.remoting.transport.Connector"
              name="jboss.remoting:service=Connector,transport=socket"
              display-name="Socket transport Connector">
    
           <!-- Can either just specify the InvokerLocator attribute and not the invoker element in the -->
           <!-- Configuration attribute, or do the full invoker configuration in the in invoker element -->
           <!-- of the Configuration attribute. -->
    
           <!-- Remember that if you do use more than one param on the uri, will have to include as a CDATA, -->
           <!-- otherwise, parser will complain. -->
           <!-- <attribute name="InvokerLocator"><![CDATA[socket://${jboss.bind.address}:4446/?datatype=invocation]]></attribute> -->
    
          <attribute name="Configuration">
             <!-- Using the following <invoker> element instead of the InvokerLocator above because specific attributes needed. -->
             <!-- If wanted to use any of the parameters below, can just add them as parameters to the url above if wanted use the InvokerLocator attribute. -->
             <config>
                <!-- Other than transport type and handler, none of these configurations are required (will just use defaults). -->
                <invoker transport="socket">
                   <attribute name="dataType" isParam="true">invocation</attribute>
                   <attribute name="marshaller" isParam="true">org.jboss.invocation.unified.marshall.InvocationMarshaller</attribute>
                   <attribute name="unmarshaller" isParam="true">org.jboss.invocation.unified.marshall.InvocationUnMarshaller</attribute>
                   <!-- This will be port on which the marshall loader port runs on.  -->
                   <!-- <attribute name="loaderport" isParam="true">4447</attribute> -->
                   <!-- The following are specific to socket invoker -->
                   <!-- <attribute name="numAcceptThreads">1</attribute>-->
                   <!-- <attribute name="maxPoolSize">303</attribute>-->
                   <!-- <attribute name="clientMaxPoolSize" isParam="true">304</attribute>-->
                   <attribute name="socketTimeout" isParam="true">600000</attribute>
                   <attribute name="serverBindAddress">${jboss.bind.address}</attribute>
                   <attribute name="serverBindPort">4446</attribute>
                   <!-- <attribute name="clientConnectAddress">216.23.33.2</attribute> -->
                   <!-- <attribute name="clientConnectPort">7777</attribute> -->
                   <attribute name="enableTcpNoDelay" isParam="true">true</attribute>
                   <!-- <attribute name="backlog">200</attribute>-->
                   <!-- The following is for callback configuration and is independant of invoker type -->
                   <!-- <attribute name="callbackMemCeiling">30</attribute>-->
                   <!-- indicates callback store by fully qualified class name -->
                   <!-- <attribute name="callbackStore">org.jboss.remoting.CallbackStore</attribute>-->
                   <!-- indicates callback store by object name -->
                   <!-- <attribute name="callbackStore">jboss.remoting:service=CallbackStore,type=Serializable</attribute> -->
                   <!-- config params for callback store.  if were declaring callback store via object name, -->
                   <!-- could have specified these config params there. -->
                   <!-- StoreFilePath indicates to which directory to write the callback objects. -->
                   <!-- The default value is the property value of 'jboss.server.data.dir' and if this is not set, -->
                   <!-- then will be 'data'. Will then append 'remoting' and the callback client's session id. -->
                   <!-- An example would be 'data\remoting\5c4o05l-9jijyx-e5b6xyph-1-e5b6xyph-2'. -->
                   <!-- <attribute name="StoreFilePath">callback</attribute>-->
                   <!-- StoreFileSuffix indicates the file suffix to use for the callback objects written to disk. -->
                   <!-- The default value for file suffix is 'ser'. -->
                   <!-- <attribute name="StoreFileSuffix">cst</attribute>-->
                </invoker>
    
                <!-- At least one handler is required by the connector.  If have more than one, must decalre -->
                <!-- different subsystem values.  Otherwise, all invocations will be routed to the only one -->
                <!-- that is declared. -->
                <handlers>
                   <!-- can also specify handler by fully qualified classname -->
                   <handler subsystem="invoker">jboss:service=invoker,type=unified</handler>
                </handlers>
             </config>
          </attribute>
          <depends>jboss.remoting:service=NetworkRegistry</depends>
       </mbean>
    
    
       <!-- <mbean code="org.jboss.remoting.detection.jndi.JNDIDetector"-->
       <!--      name="jboss.remoting:service=Detector,transport=jndi">-->
       <!-- host to which the detector will connect to for the JNDI server. -->
       <!-- <attribute name="Host">localhost</attribute>-->
       <!-- port to which detector will connect to for the JNDI server. -->
       <!-- <attribute name="Port">5555</attribute>-->
       <!-- context factory string used when connecting to the JNDI server. -->
       <!-- The default is org.jnp.interfaces.NamingContextFactory. -->
       <!-- <attribute name="ContextFactory">org.acme.NamingContextFactory</attribute> -->
       <!-- url package string to use when connecting to the JNDI server. -->
       <!-- The default is org.jboss.naming:org.jnp.interfaces. -->
       <!-- <attribute name="URLPackage">org.acme.naming</attribute> -->
       <!-- Sets the number of detection iterations before manually pinging -->
       <!-- remote server to make sure still alive. This is needed since remote server -->
       <!-- could crash and yet still have an entry in the JNDI server, -->
       <!-- thus making it appear that it is still there. The default value is 5. -->
       <!-- <attribute name="CleanDetectionNumber">20</attribute>-->
    
       <!-- Specifies the domains in which the detector will recognize -->
       <!-- detections.  If servers are not configured to be in these -->
       <!-- domains, they will not be added to NetworkRegistry. -->
       <!--      <attribute name="Configuration">-->
       <!--         <domains>-->
       <!--            <domain>roxanne</domain>-->
       <!--            <domain>sparky</domain>-->
       <!--         </domains>-->
       <!--      </attribute>-->
       <!--   </mbean>-->
    
    
       <!-- ==================================================================== -->
       <!-- Monitoring and Management                                            -->
       <!-- ==================================================================== -->
    
       <!-- Uncomment to enable JMX monitoring of the bean cache
       <mbean code="org.jboss.monitor.BeanCacheMonitor"
              name="jboss.monitor:name=BeanCacheMonitor"/>
       -->
    
       <!-- Uncomment to enable JMX monitoring of the entity bean locking
       <mbean code="org.jboss.monitor.EntityLockMonitor"
              name="jboss.monitor:name=EntityLockMonitor"/>
       -->
    
       <!-- ==================================================================== -->
       <!-- An MBean that is a registry for JDBC type-mapping metadata           -->
       <!-- ==================================================================== -->
    
       <mbean code="org.jboss.ejb.plugins.cmp.jdbc.metadata.MetaDataLibrary"
          name="jboss.jdbc:service=metadata"/>
    
       <!-- ==================================================================== -->
       <!-- Deployment Scanning                                                  -->
       <!-- ==================================================================== -->
    
       <!-- An mbean for hot deployment/undeployment of archives.
       -->
       <mbean code="org.jboss.deployment.scanner.URLDeploymentScanner"
          name="jboss.deployment:type=DeploymentScanner,flavor=URL">
    
          <!-- Uncomment (and comment/remove version below) to enable usage of the
            DeploymentCache
          <depends optional-attribute-name="Deployer">jboss.deployment:type=DeploymentCache</depends>
          -->
          <depends optional-attribute-name="Deployer">jboss.system:service=MainDeployer</depends>
    
          <!-- The URLComparator can be used to specify a deployment ordering
               for deployments found in a scanned directory.  The class specified
               must be an implementation of java.util.Comparator, it must be able
               to compare two URL objects, and it must have a no-arg constructor.
               Two deployment comparators are shipped with JBoss:
                 - org.jboss.deployment.DeploymentSorter
                   Sorts by file extension, as follows:
                     "sar", "service.xml", "rar", "jar", "war", "wsr", "ear", "zip",
                     "*"
                 - org.jboss.deployment.scanner.PrefixDeploymentSorter
                   If the name portion of the url begins with 1 or more digits, those
                   digits are converted to an int (ignoring leading zeroes), and
                   files are deployed in that order.  Files that do not start with
                   any digits will be deployed first, and they will be sorted by
                   extension as above with DeploymentSorter.
          -->
          <attribute name="URLComparator">org.jboss.deployment.DeploymentSorter</attribute>
    
          <!--
          <attribute name="URLComparator">org.jboss.deployment.scanner.PrefixDeploymentSorter</attribute>
          -->
    
          <!-- The FilterInstance specifies a URLLister.URLFilter for scanned
               directories. This DeploymentFilter is initialized with the given
               prefixes, suffixes and matches that define which URLs should be
               ignored.
          -->
          <attribute name="FilterInstance"
             attributeClass="org.jboss.deployment.scanner.DeploymentFilter"
             serialDataType="javaBean">
             <!-- Files starting with theses strings are ignored -->
             <property name="prefixes">#,%,\,,.,_$</property>
             <!-- Files ending with theses strings are ignored -->
             <property name="suffixes">#,$,%,~,\,v,.BAK,.bak,.old,.orig,.tmp,.rej,.sh</property>
             <!-- Files matching with theses strings are ignored -->
             <property name="matches">.make.state,.nse_depinfo,CVS,CVS.admin,RCS,RCSLOG,SCCS,TAGS,core,tags</property>
          </attribute>
    
          <!-- Frequency in milliseconds to rescan the URLs for changes -->
          <attribute name="ScanPeriod">5000</attribute>
    
          <!-- A flag to disable the scans -->
          <attribute name="ScanEnabled">true</attribute>
    
          <!-- URLs are comma separated and resolve relative to the server home URL
             unless the given path is absolute. If the URL ends in "/" it is
             considered a collection and scanned, otherwise it is simply deployed;
             this follows RFC2518 convention and allows discrimination between
             collections and directories that are simply unpacked archives.
    
             URLs may be local (file:) or remote (http:). Scanning is supported
             for remote URLs but unpacked deployment units are not.
    
             Example URLs:
                deploy/
                     scans ${jboss.server.url}/deploy/, which is local or remote
                     depending on the URL used to boot the server
                ${jboss.server.home}/deploy/
                     scans ${jboss.server.home)/deploy, which is always local
                file:/var/opt/myapp.ear
                     deploy myapp.ear from a local location
                file:/var/opt/apps/
                     scans the specified directory
                http://www.test.com/netboot/myapp.ear
                     deploys myapp.ear from a remote location
                http://www.test.com/netboot/apps/
                     scans the specified WebDAV location
           -->
          <attribute name="URLs">
             deploy/
          </attribute>
    
          <!-- Indicates if the scanner should recursively scan directories that
          contain no "." in their names. This can be used to group applications
          and services that must be deployed and that have the same
          logical function in the same directory i.e.
            deploy/JMX/
            deploy/JMS/
            ...
          -->
          <attribute name="RecursiveSearch">True</attribute>
    
       </mbean>
    
    </server>
    
    C:\jboss\server\management\deploy\jboss-web.deployer\server.xml - Notepad
    <Server>
    
      <!--APR library loader. Documentation at /docs/apr.html -->
      <Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
      <!--Initialize Jasper prior to webapps are loaded. Documentation at /docs/jasper-howto.html -->
      <Listener className="org.apache.catalina.core.JasperListener" />
    
       <!-- Use a custom version of StandardService that allows the
       connectors to be started independent of the normal lifecycle
       start to allow web apps to be deployed before starting the
       connectors.
       -->
       <Service name="jboss.web">
    
        <!-- A "Connector" represents an endpoint by which requests are received
             and responses are returned. Documentation at :
             Java HTTP Connector: /docs/config/http.html (blocking & non-blocking)
             Java AJP  Connector: /docs/config/ajp.html
             APR (HTTP/AJP) Connector: /docs/apr.html
             Define a non-SSL HTTP/1.1 Connector on port 10380
        -->
        <Connector port="10380" address="${jboss.bind.address}"    
             maxThreads="250" maxHttpHeaderSize="8192"
             emptySessionPath="true" protocol="HTTP/1.1"
             enableLookups="false" redirectPort="10343" acceptCount="100"
             connectionTimeout="20000" disableUploadTimeout="true" />
    
        <!-- Define a SSL HTTP/1.1 Connector on port 10343
             This connector uses the JSSE configuration, when using APR, the 
             connector should be using the OpenSSL style configuration
             described in the APR documentation -->
        <!--
        <Connector port="10343" protocol="HTTP/1.1" SSLEnabled="true"
                   maxThreads="150" scheme="https" secure="true"
                   clientAuth="false" sslProtocol="TLS" />
        -->
    
        <!-- Define an AJP 1.3 Connector on port 10309 -->
        <Connector port="10309" address="${jboss.bind.address}" protocol="AJP/1.3"
             emptySessionPath="true" enableLookups="false" redirectPort="10343" />
    
          <Engine name="jboss.web" defaultHost="localhost">
    
             <!-- The JAAS based authentication and authorization realm implementation
             that is compatible with the jboss 3.2.x realm implementation.
             - certificatePrincipal : the class name of the
             org.jboss.security.auth.certs.CertificatePrincipal impl
             used for mapping X509[] cert chains to a Princpal.
             - allRolesMode : how to handle an auth-constraint with a role-name=*,
             one of strict, authOnly, strictAuthOnly
               + strict = Use the strict servlet spec interpretation which requires
               that the user have one of the web-app/security-role/role-name
               + authOnly = Allow any authenticated user
               + strictAuthOnly = Allow any authenticated user only if there are no
               web-app/security-roles
             -->
             <Realm className="org.jboss.web.tomcat.security.JBossSecurityMgrRealm"
                certificatePrincipal="org.jboss.security.auth.certs.SubjectDNMapping"
                allRolesMode="authOnly"
                />
             <!-- A subclass of JBossSecurityMgrRealm that uses the authentication
             behavior of JBossSecurityMgrRealm, but overrides the authorization
             checks to use JACC permissions with the current java.security.Policy
             to determine authorized access.
             - allRolesMode : how to handle an auth-constraint with a role-name=*,
             one of strict, authOnly, strictAuthOnly
               + strict = Use the strict servlet spec interpretation which requires
               that the user have one of the web-app/security-role/role-name
               + authOnly = Allow any authenticated user
               + strictAuthOnly = Allow any authenticated user only if there are no
               web-app/security-roles
             <Realm className="org.jboss.web.tomcat.security.JaccAuthorizationRealm"
                certificatePrincipal="org.jboss.security.auth.certs.SubjectDNMapping"
                allRolesMode="authOnly"
                />
             -->
    
            <Host name="localhost"
               autoDeploy="false" deployOnStartup="false" deployXML="false"
               configClass="org.jboss.web.tomcat.security.config.JBossContextConfig"
               >
    
                <!-- Uncomment to enable request dumper. This Valve "logs interesting 
                     contents from the specified Request (before processing) and the 
                     corresponding Response (after processing). It is especially useful 
                     in debugging problems related to headers and cookies."
                -->
                <!--
                <Valve className="org.apache.catalina.valves.RequestDumperValve" />
                -->
     
                <!-- Access logger -->
                <!--
                <Valve className="org.apache.catalina.valves.AccessLogValve"
                    prefix="localhost_access_log." suffix=".log"
                    pattern="common" directory="${jboss.server.home.dir}/log" 
                    resolveHosts="false" />
                -->
    
                <!-- Uncomment to enable single sign-on across web apps
                    deployed to this host. Does not provide SSO across a cluster.     
                
                    If this valve is used, do not use the JBoss ClusteredSingleSignOn 
                    valve shown below. 
                    
                    A new configuration attribute is available beginning with
                    release 4.0.4:
                    
                    cookieDomain  configures the domain to which the SSO cookie
                                  will be scoped (i.e. the set of hosts to
                                  which the cookie will be presented).  By default
                                  the cookie is scoped to "/", meaning the host
                                  that presented it.  Set cookieDomain to a
                                  wider domain (e.g. "xyz.com") to allow an SSO
                                  to span more than one hostname.
                 -->
                <!--
                <Valve className="org.apache.catalina.authenticator.SingleSignOn" />
                -->
    
                <!-- Uncomment to enable single sign-on across web apps
                   deployed to this host AND to all other hosts in the cluster.
                
                   If this valve is used, do not use the standard Tomcat SingleSignOn
                   valve shown above.
                
                   Valve uses a JBossCache instance to support SSO credential 
                   caching and replication across the cluster.  The JBossCache 
                   instance must be configured separately.  By default, the valve 
                   shares a JBossCache with the service that supports HttpSession 
                   replication.  See the "jboss-web-cluster-service.xml" file in the 
                   server/all/deploy directory for cache configuration details.
                
                   Besides the attributes supported by the standard Tomcat
                   SingleSignOn valve (see the Tomcat docs), this version also 
                   supports the following attributes:
                
                   cookieDomain   see above
                
                   treeCacheName  JMX ObjectName of the JBossCache MBean used to 
                                  support credential caching and replication across
                                  the cluster. If not set, the default value is 
                                  "jboss.cache:service=TomcatClusteringCache", the 
                                  standard ObjectName of the JBossCache MBean used 
                                  to support session replication.
                -->
                <!--
                <Valve className="org.jboss.web.tomcat.service.sso.ClusteredSingleSignOn" />
                -->
             
                <!-- Check for unclosed connections and transaction terminated checks
                     in servlets/jsps.
                     
                     Important: The dependency on the CachedConnectionManager
                     in META-INF/jboss-service.xml must be uncommented, too
                -->
                <Valve className="org.jboss.web.tomcat.service.jca.CachedConnectionValve"
                    cachedConnectionManagerObjectName="jboss.jca:service=CachedConnectionManager"
                    transactionManagerObjectName="jboss:service=TransactionManager" />
    
             </Host>
    
          </Engine>
    
       </Service>
    
    </Server>
    
    C:\jboss\server\management\deploy\jboss-web.deployer\conf\web.xml - Notepad
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <web-app xmlns="http://java.sun.com/xml/ns/j2ee"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
        version="2.4">
    
      <!-- ======================== Introduction ============================== -->
      <!-- This document defines default values for *all* web applications      -->
      <!-- loaded into this instance of Tomcat.  As each application is         -->
      <!-- deployed, this file is processed, followed by the                    -->
      <!-- "/WEB-INF/web.xml" deployment descriptor from your own               -->
      <!-- applications.                                                        -->
      <!--                                                                      -->
      <!-- WARNING:  Do not configure application-specific resources here!      -->
      <!-- They should go in the "/WEB-INF/web.xml" file in your application.   -->
    
      <!-- =========== Common Context Params ================================== -->
      <!-- JBossInjectionProvider provides resource injection for managed beans. -->
      <!-- See JSF 1.2 spec section 5.4 for details.                             -->
      <context-param>
        <param-name>com.sun.faces.injectionProvider</param-name>
        <param-value>org.jboss.web.jsf.integration.injection.JBossInjectionProvider</param-value>
      </context-param>
    
       <!-- ================== Common filter Configuration ==================== -->
       <filter>
          <filter-name>CommonHeadersFilter</filter-name>
          <filter-class>org.jboss.web.tomcat.filters.ReplyHeaderFilter</filter-class>
          <init-param>
             <param-name>X-Powered-By</param-name>
             <param-value>Servlet 2.4; JBoss-4.2.0.GA (build: SVNTag=JBoss_4_2_0_GA date=200705111440)/Tomcat-5.5</param-value>
          </init-param>
       </filter>
    
       <filter-mapping>
          <filter-name>CommonHeadersFilter</filter-name>
          <url-pattern>/*</url-pattern>
       </filter-mapping>
    
       <!-- ================== Common Listener Configuration ==================== -->
       <listener>
          <listener-class>org.jboss.web.tomcat.security.SecurityFlushSessionListener</listener-class>
       </listener>
    
       <!-- Configures JSF for a web application if the javax.faces.webapp.FacesServlet is declared -->
       <!-- in web.xml.                                                                             -->
       <listener>
         <listener-class>org.jboss.web.jsf.integration.config.JBossJSFConfigureListener</listener-class>
       </listener>
    
       <!-- Listens to all web app lifecycle events so that @PreDestroy can be called on -->
       <!-- JSF managed beans that go out of scope.  You can comment this out if you     -->
       <!-- don't use JSF or you don't use annotations on your managed beans.            -->
       <listener>
         <listener-class>com.sun.faces.application.WebappLifecycleListener</listener-class>
       </listener>
    
    
      <!-- ================== Built In Servlet Definitions ==================== -->
    
    
      <!-- The default servlet for all web applications, that serves static     -->
      <!-- resources.  It processes all requests that are not mapped to other   -->
      <!-- servlets with servlet mappings (defined either here or in your own   -->
      <!-- web.xml file.  This servlet supports the following initialization    -->
      <!-- parameters (default values are in square brackets):                  -->
      <!--                                                                      -->
      <!--   debug               Debugging detail level for messages logged     -->
      <!--                       by this servlet.  [0]                          -->
      <!--                                                                      -->
      <!--   fileEncoding        Encoding to be used to read static resources   -->
      <!--                       [platform default]                             -->
      <!--                                                                      -->
      <!--   input               Input buffer size (in bytes) when reading      -->
      <!--                       resources to be served.  [2048]                -->
      <!--                                                                      -->
      <!--   listings            Should directory listings be produced if there -->
      <!--                       is no welcome file in this directory?  [false] -->
      <!--                       WARNING: Listings for directories with many    -->
      <!--                       entries can be slow and may consume            -->
      <!--                       significant proportions of server resources.   -->
      <!--                                                                      -->
      <!--   output              Output buffer size (in bytes) when writing     -->
      <!--                       resources to be served.  [2048]                -->
      <!--                                                                      -->
      <!--   readonly            Is this context "read only", so HTTP           -->
      <!--                       commands like PUT and DELETE are               -->
      <!--                       rejected?  [true]                              -->
      <!--                                                                      -->
      <!--   readmeFile          File name to display with the directory        -->
      <!--                       contents. [null]                               -->
      <!--                                                                      -->
      <!--   sendfileSize        If the connector used supports sendfile, this  -->
      <!--                       represents the minimal file size in KB for     -->
      <!--                       which sendfile will be used. Use a negative    -->
      <!--                       value to always disable sendfile.  [48]        -->
      <!--                                                                      -->
      <!--  For directory listing customization. Checks localXsltFile, then     -->
      <!--  globalXsltFile, then defaults to original behavior.                 -->
      <!--                                                                      -->
      <!--   localXsltFile       Make directory listings an XML doc and         -->
      <!--                       pass the result to this style sheet residing   -->
      <!--                       in that directory. This overrides              -->
      <!--                        globalXsltFile[null]                          -->
      <!--                                                                      -->
      <!--   globalXsltFile      Site wide configuration version of             -->
      <!--                       localXsltFile This argument is expected        -->
      <!--                       to be a physical file. [null]                  -->
      <!--                                                                      -->
      <!--                                                                      -->
    
        <servlet>
            <servlet-name>default</servlet-name>
            <servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class>
            <init-param>
                <param-name>debug</param-name>
                <param-value>0</param-value>
            </init-param>
            <init-param>
                <param-name>listings</param-name>
                <param-value>false</param-value>
            </init-param>
            <load-on-startup>1</load-on-startup>
        </servlet>
    
    
      <!-- The "invoker" servlet, which executes anonymous servlet classes      -->
      <!-- that have not been defined in a web.xml file.  Traditionally, this   -->
      <!-- servlet is mapped to the URL pattern "/servlet/*", but you can map   -->
      <!-- it to other patterns as well.  The extra path info portion of such a -->
      <!-- request must be the fully qualified class name of a Java class that  -->
      <!-- implements Servlet (or extends HttpServlet), or the servlet name     -->
      <!-- of an existing servlet definition.     This servlet supports the     -->
      <!-- following initialization parameters (default values are in square    -->
      <!-- brackets):                                                           -->
      <!--                                                                      -->
      <!--   debug               Debugging detail level for messages logged     -->
      <!--                       by this servlet.  [0]                          -->
    
    <!--
        <servlet>
            <servlet-name>invoker</servlet-name>
            <servlet-class>
              org.apache.catalina.servlets.InvokerServlet
            </servlet-class>
            <init-param>
                <param-name>debug</param-name>
                <param-value>0</param-value>
            </init-param>
            <load-on-startup>2</load-on-startup>
        </servlet>
    -->
    
    
      <!-- The JSP page compiler and execution servlet, which is the mechanism  -->
      <!-- used by Tomcat to support JSP pages.  Traditionally, this servlet    -->
      <!-- is mapped to the URL pattern "*.jsp".  This servlet supports the     -->
      <!-- following initialization parameters (default values are in square    -->
      <!-- brackets):                                                           -->
      <!--                                                                      -->
      <!--   checkInterval       If development is false and checkInterval is   -->
      <!--                       greater than zero, background compilations are -->
      <!--                       enabled. checkInterval is the time in seconds  -->
      <!--                       between checks to see if a JSP page needs to   -->
      <!--                       be recompiled. [0]                             -->
      <!--                                                                      -->
      <!--   modificationTestInterval                                           -->
      <!--                       Causes a JSP (and its dependent files) to not  -->
      <!--                       be checked for modification during the         -->
      <!--                       specified time interval (in seconds) from the  -->
      <!--                       last time the JSP was checked for              -->
      <!--                       modification. A value of 0 will cause the JSP  -->
      <!--                       to be checked on every access.                 -->
      <!--                       Used in development mode only. [4]             -->
      <!--                                                                      -->
      <!--   compiler            Which compiler Ant should use to compile JSP   -->
      <!--                       pages.  See the Ant documentation for more     -->
      <!--                       information.                                   -->
      <!--                                                                      -->
      <!--   classdebuginfo      Should the class file be compiled with         -->
      <!--                       debugging information?  [true]                 -->
      <!--                                                                      -->
      <!--   classpath           What class path should I use while compiling   -->
      <!--                       generated servlets?  [Created dynamically      -->
      <!--                       based on the current web application]          -->
      <!--                                                                      -->
      <!--   development         Is Jasper used in development mode? If true,   -->
      <!--                       the frequency at which JSPs are checked for    -->
      <!--                       modification may be specified via the          -->
      <!--                       modificationTestInterval parameter. [true]     -->
      <!--                                                                      -->
      <!--   enablePooling       Determines whether tag handler pooling is      -->
      <!--                       enabled  [true]                                -->
      <!--                                                                      -->
      <!--   fork                Tell Ant to fork compiles of JSP pages so that -->
      <!--                       a separate JVM is used for JSP page compiles   -->
      <!--                       from the one Tomcat is running in. [true]      -->
      <!--                                                                      -->
      <!--   ieClassId           The class-id value to be sent to Internet      -->
      <!--                       Explorer when using <jsp:plugin> tags.         -->
      <!--                       [clsid:8AD9C840-044E-11D1-B3E9-00805F499D93]   -->
      <!--                                                                      -->
      <!--   javaEncoding        Java file encoding to use for generating java  -->
      <!--                       source files. [UTF8]                           -->
      <!--                                                                      -->
      <!--   keepgenerated       Should we keep the generated Java source code  -->
      <!--                       for each page instead of deleting it? [true]   -->
      <!--                                                                      -->
      <!--   mappedfile          Should we generate static content with one     -->
      <!--                       print statement per input line, to ease        -->
      <!--                       debugging?  [true]                             -->
      <!--                                                                      -->
      <!--   trimSpaces          Should white spaces in template text between   -->
      <!--                       actions or directives be trimmed?  [false]     -->
      <!--                                                                      -->
      <!--   suppressSmap        Should the generation of SMAP info for JSR45   -->
      <!--                       debugging be suppressed?  [false]              -->
      <!--                                                                      -->
      <!--   dumpSmap            Should the SMAP info for JSR45 debugging be    -->
      <!--                       dumped to a file? [false]                      -->
      <!--                       False if suppressSmap is true                  -->
      <!--                                                                      -->
      <!--   genStrAsCharArray   Should text strings be generated as char       -->
      <!--                       arrays, to improve performance in some cases?  -->
      <!--                       [false]                                        -->
      <!--                                                                      -->
      <!--   errorOnUseBeanInvalidClassAttribute                                -->
      <!--                       Should Jasper issue an error when the value of -->
      <!--                       the class attribute in an useBean action is    -->
      <!--                       not a valid bean class?  [true]                -->
      <!--                                                                      -->
      <!--   scratchdir          What scratch directory should we use when      -->
      <!--                       compiling JSP pages?  [default work directory  -->
      <!--                       for the current web application]               -->
      <!--                                                                      -->
      <!--   xpoweredBy          Determines whether X-Powered-By response       -->
      <!--                       header is added by generated servlet  [false]  -->
      <!--                                                                      -->
      <!--   compilerTargetVM    Compiler target VM                             -->  
      <!--                       default is System.properties                   -->
      <!--                        java.specification.version > 1.4              -->
      <!--                        [1.5] else [1.4]                              -->
      <!--                                                                      -->
      <!--   compilerSourceVM    Compiler source VM                             -->
      <!--                       default is System.properties                   -->
      <!--                        java.specification.version > 1.4              -->
      <!--                        [1.5] else [1.4]                              -->
      <!--                                                                      -->
      <!-- If you wish to use Jikes to compile JSP pages:                       -->
      <!--   Please see the "Using Jikes" section of the Jasper-HowTo           -->
      <!--   page in the Tomcat documentation.                                  -->
    
        <servlet>
            <servlet-name>jsp</servlet-name>
            <servlet-class>org.apache.jasper.servlet.JspServlet</servlet-class>
            <init-param>
                <param-name>fork</param-name>
                <param-value>false</param-value>
            </init-param>
            <init-param>
                <param-name>xpoweredBy</param-name>
                <param-value>false</param-value>
            </init-param>
    
            <!-- Use a custom options class to allow the shared tag lib descriptors
             to be loaded from jars in the tomcat sar conf/tlds directory. The
             standard options implementation can only find taglibs based on the
             class loader classpath.
            -->
            <init-param>
               <param-name>engineOptionsClass</param-name>
               <param-value>org.jboss.web.tomcat.service.jasper.JspServletOptions</param-value>
            </init-param>
            <!-- Specify the jars relative to the jbossweb-tomcat6.sar that should
              be scanned for common tag lib descriptors to include in every war
              deployment.
            -->
            <init-param>
               <description>JSF standard tlds</description>
               <param-name>tagLibJar0</param-name>
               <param-value>jsf-libs/jsf-impl.jar</param-value>
            </init-param>
            <init-param>
               <description>JSTL standard tlds</description>
               <param-name>tagLibJar1</param-name>
               <param-value>jstl.jar</param-value>
            </init-param>
    
            <load-on-startup>3</load-on-startup>
        </servlet>
    
    
      <!-- NOTE: An SSI Filter is also available as an alternative SSI          -->
      <!-- implementation. Use either the Servlet or the Filter but NOT both.   -->
      <!--                                                                      -->
      <!-- Server Side Includes processing servlet, which processes SSI         -->
      <!-- directives in HTML pages consistent with similar support in web      -->
      <!-- servers like Apache.  Traditionally, this servlet is mapped to the   -->
      <!-- URL pattern "*.shtml".  This servlet supports the following          -->
      <!-- initialization parameters (default values are in square brackets):   -->
      <!--                                                                      -->
      <!--   buffered            Should output from this servlet be buffered?   -->
      <!--                       (0=false, 1=true)  [0]                         -->
      <!--                                                                      -->
      <!--   debug               Debugging detail level for messages logged     -->
      <!--                       by this servlet.  [0]                          -->
      <!--                                                                      -->
      <!--   expires             The number of seconds before a page with SSI   -->
      <!--                       directives will expire.  [No default]          -->
      <!--                                                                      -->
      <!--   isVirtualWebappRelative                                            -->
      <!--                       Should "virtual" paths be interpreted as       -->
      <!--                       relative to the context root, instead of       -->
      <!--                       the server root?  (0=false, 1=true) [0]        -->
      <!--                                                                      -->
      <!--   inputEncoding       The encoding to assume for SSI resources if    -->
      <!--                       one is not available from the resource.        -->
      <!--                       [Platform default]                             -->
      <!--                                                                      -->
      <!--   outputEncoding      The encoding to use for the page that results  -->
      <!--                       from the SSI processing. [UTF-8]               -->
      <!--                                                                      -->
      <!--                                                                      -->
      <!-- IMPORTANT: To use the SSI servlet, you also need to rename the       -->
      <!--            $CATALINA_HOME/server/lib/servlets-ssi.renametojar file   -->
      <!--            to $CATALINA_HOME/server/lib/servlets-ssi.jar             -->
    
    <!--
        <servlet>
            <servlet-name>ssi</servlet-name>
            <servlet-class>
              org.apache.catalina.ssi.SSIServlet
            </servlet-class>
            <init-param>
              <param-name>buffered</param-name>
              <param-value>1</param-value>
            </init-param>
            <init-param>
              <param-name>debug</param-name>
              <param-value>0</param-value>
            </init-param>
            <init-param>
              <param-name>expires</param-name>
              <param-value>666</param-value>
            </init-param>
            <init-param>
              <param-name>isVirtualWebappRelative</param-name>
              <param-value>0</param-value>
            </init-param>
            <load-on-startup>4</load-on-startup>
        </servlet>
    -->
    
    
      <!-- Common Gateway Includes (CGI) processing servlet, which supports     -->
      <!-- execution of external applications that conform to the CGI spec      -->
      <!-- requirements.  Typically, this servlet is mapped to the URL pattern  -->
      <!-- "/cgi-bin/*", which means that any CGI applications that are         -->
      <!-- executed must be present within the web application.  This servlet   -->
      <!-- supports the following initialization parameters (default values     -->
      <!-- are in square brackets):                                             -->
      <!--                                                                      -->
      <!--   cgiPathPrefix        The CGI search path will start at             -->
      <!--                        webAppRootDir + File.separator + this prefix. -->
      <!--                        [WEB-INF/cgi]                                 -->
      <!--                                                                      -->
      <!--   debug                Debugging detail level for messages logged    -->
      <!--                        by this servlet.  [0]                         -->
      <!--                                                                      -->
      <!--   executable           Name of the exectuable used to run the        -->
      <!--                        script. [perl]                                -->
      <!--                                                                      -->
      <!--   parameterEncoding    Name of parameter encoding to be used with    -->
      <!--                        CGI servlet.                                  -->
      <!--                        [System.getProperty("file.encoding","UTF-8")] -->
      <!--                                                                      -->
      <!--   passShellEnvironment Should the shell environment variables (if    -->
      <!--                        any) be passed to the CGI script? [false]     -->
      <!--                                                                      -->
      <!-- IMPORTANT: To use the CGI servlet, you also need to rename the       -->
      <!--            $CATALINA_HOME/server/lib/servlets-cgi.renametojar file   -->
      <!--            to $CATALINA_HOME/server/lib/servlets-cgi.jar             -->
    
    <!--
        <servlet>
            <servlet-name>cgi</servlet-name>
            <servlet-class>org.apache.catalina.servlets.CGIServlet</servlet-class>
            <init-param>
              <param-name>debug</param-name>
              <param-value>0</param-value>
            </init-param>
            <init-param>
              <param-name>cgiPathPrefix</param-name>
              <param-value>WEB-INF/cgi</param-value>
            </init-param>
             <load-on-startup>5</load-on-startup>
        </servlet>
    -->
    
    
      <!-- ================ Built In Servlet Mappings ========================= -->
    
    
      <!-- The servlet mappings for the built in servlets defined above.  Note  -->
      <!-- that, by default, the CGI and SSI servlets are *not* mapped.  You    -->
      <!-- must uncomment these mappings (or add them to your application's own -->
      <!-- web.xml deployment descriptor) to enable these services              -->
    
        <!-- The mapping for the default servlet -->
        <servlet-mapping>
            <servlet-name>default</servlet-name>
            <url-pattern>/</url-pattern>
        </servlet-mapping>
    
        <!-- The mapping for the invoker servlet -->
    <!--
        <servlet-mapping>
            <servlet-name>invoker</servlet-name>
            <url-pattern>/servlet/*</url-pattern>
        </servlet-mapping>
    -->
    
        <!-- The mapping for the JSP servlet -->
        <servlet-mapping>
            <servlet-name>jsp</servlet-name>
            <url-pattern>*.jsp</url-pattern>
        </servlet-mapping>
    
        <servlet-mapping>
            <servlet-name>jsp</servlet-name>
            <url-pattern>*.jspx</url-pattern>
        </servlet-mapping>
    
        <!-- The mapping for the SSI servlet -->
    <!--
        <servlet-mapping>
            <servlet-name>ssi</servlet-name>
            <url-pattern>*.shtml</url-pattern>
        </servlet-mapping>
    -->
    
        <!-- The mapping for the CGI Gateway servlet -->
    
    <!--
        <servlet-mapping>
            <servlet-name>cgi</servlet-name>
            <url-pattern>/cgi-bin/*</url-pattern>
        </servlet-mapping>
    -->
    
    
      <!-- ================== Built In Filter Definitions ===================== -->
    
      <!-- NOTE: An SSI Servlet is also available as an alternative SSI         -->
      <!-- implementation. Use either the Servlet or the Filter but NOT both.   -->
      <!--                                                                      -->
      <!-- Server Side Includes processing filter, which processes SSI          -->
      <!-- directives in HTML pages consistent with similar support in web      -->
      <!-- servers like Apache.  Traditionally, this filter is mapped to the    -->
      <!-- URL pattern "*.shtml", though it can be mapped to "*" as it will     -->
      <!-- selectively enable/disable SSI processing based on mime types. For   -->
      <!-- this to work you will need to uncomment the .shtml mime type         -->
      <!-- definition towards the bottom of this file.                          -->
      <!-- The contentType init param allows you to apply SSI processing to JSP -->
      <!-- pages, javascript, or any other content you wish.  This filter       -->
      <!-- supports the following initialization parameters (default values are -->
      <!-- in square brackets):                                                 -->
      <!--                                                                      -->
      <!--   contentType         A regex pattern that must be matched before    -->
      <!--                       SSI processing is applied.                     -->
      <!--                       [text/x-server-parsed-html(;.*)?]              -->
      <!--                                                                      -->
      <!--   debug               Debugging detail level for messages logged     -->
      <!--                       by this servlet.  [0]                          -->
      <!--                                                                      -->
      <!--   expires             The number of seconds before a page with SSI   -->
      <!--                       directives will expire.  [No default]          -->
      <!--                                                                      -->
      <!--   isVirtualWebappRelative                                            -->
      <!--                       Should "virtual" paths be interpreted as       -->
      <!--                       relative to the context root, instead of       -->
      <!--                       the server root?  (0=false, 1=true) [0]        -->
      <!--                                                                      -->
      <!--                                                                      -->
      <!-- IMPORTANT: To use the SSI filter, you also need to rename the        -->
      <!--            $CATALINA_HOME/server/lib/servlets-ssi.renametojar file   -->
      <!--            to $CATALINA_HOME/server/lib/servlets-ssi.jar             -->
    
    <!--
        <filter>
            <filter-name>ssi</filter-name>
            <filter-class>
              org.apache.catalina.ssi.SSIFilter
            </filter-class>
            <init-param>
              <param-name>contentType</param-name>
              <param-value>text/x-server-parsed-html(;.*)?</param-value>
            </init-param>
            <init-param>
              <param-name>debug</param-name>
              <param-value>0</param-value>
            </init-param>
            <init-param>
              <param-name>expires</para