| <?xml version="1.0" encoding="UTF-8"?> |
| <!-- |
| Licensed to the Apache Software Foundation (ASF) under one or more |
| contributor license agreements. See the NOTICE file distributed with |
| this work for additional information regarding copyright ownership. |
| The ASF licenses this file to You under the Apache License, Version 2.0 |
| (the "License"); you may not use this file except in compliance with |
| the License. You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
| --> |
| |
| <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd"> |
| <web-app> |
| <display-name>Jackrabbit JCR Server</display-name> |
| |
| <listener> |
| <!-- Releases all Derby resources when the webapp is undeployed. --> |
| <!-- See https://issues.apache.org/jira/browse/JCR-1301 --> |
| <listener-class> |
| org.apache.jackrabbit.j2ee.DerbyShutdown |
| </listener-class> |
| </listener> |
| |
| <!-- ====================================================================== --> |
| <!-- R E P O S I T O R Y S T A R T U P S E R V L E T --> |
| <!-- ====================================================================== --> |
| <servlet> |
| <servlet-name>RepositoryStartup</servlet-name> |
| <description> |
| Repository servlet that starts the repository and registers it to JNDI ans RMI. |
| If you already have the repository registered in this appservers JNDI context, |
| or if its accessible via RMI, you do not need to use this servlet. |
| </description> |
| <servlet-class>org.apache.jackrabbit.j2ee.RepositoryStartupServlet</servlet-class> |
| |
| <init-param> |
| <param-name>bootstrap-config</param-name> |
| <param-value>jackrabbit/bootstrap.properties</param-value> |
| <description> |
| Property file that hold the same initialization properties than |
| the init-params below. If a parameter is specified in both |
| places the one in the bootstrap-config wins. |
| </description> |
| </init-param> |
| |
| <!-- |
| <init-param> |
| <param-name>repository-config</param-name> |
| <param-value>/WEB-INF/repository/repository.xml</param-value> |
| <description>the repository config location</description> |
| </init-param> |
| |
| <init-param> |
| <param-name>repository-home</param-name> |
| <param-value>jackrabbit/repository</param-value> |
| <description>the repository home</description> |
| </init-param> |
| |
| <init-param> |
| <param-name>repository-name</param-name> |
| <param-value>jackrabbit.repository</param-value> |
| <description>Repository Name under which the repository is registered via JNDI/RMI</description> |
| </init-param> |
| --> |
| |
| <!-- |
| the following 3 parameters deal with registering the repository to |
| a RMI registry. if all parameters are omitted, the repository will |
| not be registered. |
| --> |
| <!-- |
| <init-param> |
| <param-name>rmi-port</param-name> |
| <param-value>0</param-value> |
| <description> |
| The RMI port for registering the repository in the RMI Registry. |
| If equals 0, the default port is used. |
| </description> |
| </init-param> |
| <init-param> |
| <param-name>rmi-host</param-name> |
| <param-value>localhost</param-value> |
| <description> |
| The RMI host for registering the repository in the RMI Registry. |
| If equals "" or missing, the default host is used. |
| </description> |
| </init-param> |
| <init-param> |
| <param-name>rmi-uri</param-name> |
| <param-value></param-value> |
| <description> |
| The RMI uri for registering the repository in the RMI Registry. |
| If missing, the uri is composed using the other rmi parameters |
| and will have the format: //{rmi-host}:{rmi-port}/{repository-name} |
| </description> |
| </init-param> |
| --> |
| <!-- |
| JNDI environment variables for creating the initial context |
| (all init parameters starting with java.naming.* will be added to the initial context environment). |
| --> |
| <!-- |
| <init-param> |
| <param-name>java.naming.provider.url</param-name> |
| <param-value>http://www.apache.org/jackrabbit</param-value> |
| </init-param> |
| <init-param> |
| <param-name>java.naming.factory.initial</param-name> |
| <param-value>org.apache.jackrabbit.core.jndi.provider.DummyInitialContextFactory</param-value> |
| </init-param> |
| --> |
| <load-on-startup>2</load-on-startup> |
| </servlet> |
| |
| |
| <!-- ====================================================================== --> |
| <!-- R E P O S I T O R Y S E R V L E T --> |
| <!-- ====================================================================== --> |
| <servlet> |
| <servlet-name>Repository</servlet-name> |
| <description> |
| This servlet provides other servlets and jsps a common way to access |
| the repository. The repository can be accessed via JNDI, RMI or Webdav. |
| </description> |
| <servlet-class>org.apache.jackrabbit.j2ee.RepositoryAccessServlet</servlet-class> |
| |
| <init-param> |
| <param-name>bootstrap-config</param-name> |
| <param-value>jackrabbit/bootstrap.properties</param-value> |
| <description> |
| Property file that hold the same initialization properties than |
| the init-params below. If a parameter is specified in both |
| places the one in the bootstrap-config wins. |
| </description> |
| </init-param> |
| <!-- |
| <init-param> |
| <param-name>repository.context.attribute.name</param-name> |
| <param-value>javax.jcr.Repository</param-value> |
| <description> |
| If this is set, the RepositoryAccessServlet expects a Repository in the ServletContext |
| attribute having this name. This allows servlets of this module to be used with repositories |
| initialized by the jackrabbit-jcr-servlet module utilities. |
| </description> |
| </init-param> |
| --> |
| <!-- |
| <init-param> |
| <param-name>repository-name</param-name> |
| <param-value>jackrabbit.repository</param-value> |
| <description>Repository Name that is used to retrieve it via JNDI</description> |
| </init-param> |
| --> |
| <!-- |
| JNDI environment variables for creating the initial context |
| (all init parameters starting with java.naming.* will be added to the initial context environment). |
| --> |
| <!-- |
| <init-param> |
| <param-name>java.naming.provider.url</param-name> |
| <param-value>http://www.apache.org/jackrabbit</param-value> |
| </init-param> |
| <init-param> |
| <param-name>java.naming.factory.initial</param-name> |
| <param-value>org.apache.jackrabbit.core.jndi.provider.DummyInitialContextFactory</param-value> |
| </init-param> |
| --> |
| <!-- |
| RMI url, if RMI remoting is needed |
| --> |
| <!-- |
| <init-param> |
| <param-name>rmi-uri</param-name> |
| <param-value>///jackrabbit.repository</param-value> |
| <description>The URI for the RMI connection.</description> |
| </init-param> |
| --> |
| |
| <load-on-startup>3</load-on-startup> |
| </servlet> |
| |
| <!-- ====================================================================== --> |
| <!-- W E B D A V S E R V L E T --> |
| <!-- ====================================================================== --> |
| <servlet> |
| <servlet-name>Webdav</servlet-name> |
| <description> |
| The webdav servlet that connects HTTP request to the repository. |
| </description> |
| <servlet-class>org.apache.jackrabbit.j2ee.SimpleWebdavServlet</servlet-class> |
| |
| <init-param> |
| <param-name>resource-path-prefix</param-name> |
| <param-value>/repository</param-value> |
| <description> |
| defines the prefix for spooling resources out of the repository. |
| </description> |
| </init-param> |
| <!-- |
| <init-param> |
| <param-name>missing-auth-mapping</param-name> |
| <param-value>anonymous:anonymous</param-value> |
| <description> |
| Defines how a missing authorization header should be handled. |
| 1) If this init-param is missing, a 401 response is generated. |
| This is suitable for clients (eg. webdav clients) for which |
| sending a proper authorization header is not possible if the |
| server never sent a 401. |
| 2) If this init-param is present with an empty value, |
| null-credentials are returned, thus forcing an null login |
| on the repository. |
| 3) If this init-param is present with the value 'guestcredentials' |
| java.jcr.GuestCredentials are used to login to the repository. |
| 4) If this init-param has a 'user:password' value, the respective |
| simple credentials are generated. |
| </description> |
| </init-param> |
| --> |
| <!-- |
| Optional parameter to define the value of the 'WWW-Authenticate' header |
| --> |
| <!-- |
| <init-param> |
| <param-name>authenticate-header</param-name> |
| <param-value>Basic realm="Jackrabbit Webdav Server"</param-value> |
| <description> |
| Defines the value of the 'WWW-Authenticate' header. |
| </description> |
| </init-param> |
| --> |
| <!-- |
| Parameter used to configure behaviour of webdav resources such as: |
| - distinction between collections and non-collections |
| - resource filtering |
| --> |
| <init-param> |
| <param-name>resource-config</param-name> |
| <param-value>/WEB-INF/config.xml</param-value> |
| <description> |
| Defines various dav-resource configuration parameters. |
| </description> |
| </init-param> |
| <!-- |
| Optional parameter to define the behaviour of the referrer-based CSRF protection |
| --> |
| <!-- |
| <init-param> |
| <param-name>csrf-protection</param-name> |
| <param-value>host1.domain.com,host2.domain.org</param-value> |
| <description> |
| Defines the behaviour of the referrer based CSRF protection |
| 1) If omitted or left empty the (default) behaviour is to allow only requests with |
| an empty referrer header or a referrer host equal to the server host |
| 2) May also contain a comma separated list of additional allowed referrer hosts |
| 3) If set to 'disabled' no referrer checking will be performed at all |
| </description> |
| </init-param> |
| --> |
| <load-on-startup>4</load-on-startup> |
| </servlet> |
| |
| <!-- ====================================================================== --> |
| <!-- J C R R E M O T I N G S E R V L E T --> |
| <!-- ====================================================================== --> |
| <servlet> |
| <servlet-name>JCRWebdavServer</servlet-name> |
| <description> |
| The servlet used to remote JCR calls over HTTP. |
| </description> |
| <servlet-class>org.apache.jackrabbit.j2ee.JcrRemotingServlet</servlet-class> |
| <init-param> |
| <param-name>missing-auth-mapping</param-name> |
| <param-value></param-value> |
| <description> |
| Defines how a missing authorization header should be handled. |
| 1) If this init-param is missing, a 401 response is generated. |
| This is suitable for clients (eg. webdav clients) for which |
| sending a proper authorization header is not possible if the |
| server never sent a 401. |
| 2) If this init-param is present with an empty value, |
| null-credentials are returned, thus forcing an null login |
| on the repository. |
| 3) If this init-param is present with the value 'guestcredentials' |
| java.jcr.GuestCredentials are used to login to the repository. |
| 4) If this init-param has a 'user:password' value, the respective |
| simple credentials are generated. |
| </description> |
| </init-param> |
| <!-- |
| Optional parameter to define the value of the 'WWW-Authenticate' header |
| --> |
| <!-- |
| <init-param> |
| <param-name>authenticate-header</param-name> |
| <param-value>Basic realm="Jackrabbit Webdav Server"</param-value> |
| <description> |
| Defines the value of the 'WWW-Authenticate' header. |
| </description> |
| </init-param> |
| --> |
| <init-param> |
| <param-name>resource-path-prefix</param-name> |
| <param-value>/server</param-value> |
| <description> |
| defines the prefix for spooling resources out of the repository. |
| </description> |
| </init-param> |
| <!-- |
| Init parameters specific for JcrRemotingServlet |
| --> |
| <!-- |
| <init-param> |
| <param-name>home</param-name> |
| <param-value></param-value> |
| <description>JcrRemotingServlet: Optional home directory for JcrRemotingServlet temporary files (default: "jackrabbit")</description> |
| </init-param> |
| <init-param> |
| <param-name>temp-directory</param-name> |
| <param-value></param-value> |
| <description>JcrRemotingServlet: Optional temporary directory name (under home, default: "tmp")</description> |
| </init-param> |
| --> |
| <init-param> |
| <param-name>batchread-config</param-name> |
| <param-value>/WEB-INF/batchread.properties</param-value> |
| <description>JcrRemotingServlet: Optional mapping from node type names to default depth.</description> |
| </init-param> |
| <init-param> |
| <param-name>protectedhandlers-config</param-name> |
| <param-value>/WEB-INF/protectedHandlersConfig.xml</param-value> |
| <description>JcrRemotingServlet: Handlers for removing protected items.</description> |
| </init-param> |
| <!-- init-param> |
| <param-name>concurrency-level</param-name> |
| <param-value>50</param-value> |
| <description>Number of concurrent requests expected. Default value is 50.</description> |
| </init-param --> |
| <!-- |
| Optional parameter to define the behaviour of the referrer-based CSRF protection |
| --> |
| <!-- |
| <init-param> |
| <param-name>csrf-protection</param-name> |
| <param-value>host1.domain.com,host2.domain.org</param-value> |
| <description> |
| Defines the behaviour of the referrer based CSRF protection |
| 1) If omitted or left empty the (default) behaviour is to allow only requests with |
| an empty referrer header or a referrer host equal to the server host |
| 2) May also contain a comma separated list of additional allowed referrer hosts |
| 3) If set to 'disabled' no referrer checking will be performed at all |
| </description> |
| </init-param> |
| --> <load-on-startup>5</load-on-startup> |
| </servlet> |
| |
| <!-- ====================================================================== --> |
| <!-- R M I B I N D I N G S E R V L E T --> |
| <!-- ====================================================================== --> |
| <!-- <servlet>--> |
| <!-- <servlet-name>RMI</servlet-name>--> |
| <!-- <servlet-class>org.apache.jackrabbit.servlet.remote.RemoteBindingServlet</servlet-class>--> |
| <!-- </servlet>--> |
| |
| <!-- ====================================================================== --> |
| <!-- S E R V L E T M A P P I N G --> |
| <!-- ====================================================================== --> |
| <servlet-mapping> |
| <servlet-name>RepositoryStartup</servlet-name> |
| <url-pattern>/admin/*</url-pattern> |
| </servlet-mapping> |
| <servlet-mapping> |
| <servlet-name>Webdav</servlet-name> |
| <url-pattern>/repository/*</url-pattern> |
| </servlet-mapping> |
| <servlet-mapping> |
| <servlet-name>JCRWebdavServer</servlet-name> |
| <url-pattern>/server/*</url-pattern> |
| </servlet-mapping> |
| <!-- <servlet-mapping>--> |
| <!-- <servlet-name>RMI</servlet-name>--> |
| <!-- <url-pattern>/rmi</url-pattern>--> |
| <!-- </servlet-mapping>--> |
| |
| <!-- ====================================================================== --> |
| <!-- W E L C O M E F I L E S --> |
| <!-- ====================================================================== --> |
| <welcome-file-list> |
| <welcome-file>index.jsp</welcome-file> |
| </welcome-file-list> |
| |
| <error-page> |
| <exception-type>org.apache.jackrabbit.j2ee.JcrApiNotFoundException</exception-type> |
| <location>/error/classpath.jsp</location> |
| </error-page> |
| <error-page> |
| <exception-type>javax.jcr.RepositoryException</exception-type> |
| <location>/error/repository.jsp</location> |
| </error-page> |
| |
| </web-app> |