blob: e9a9498508d75b411564c0706b41763f200f4a87 [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<!--
============LICENSE_START=======================================================
ECOMP MSO
================================================================================
Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
================================================================================
Licensed 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.
============LICENSE_END=========================================================
-->
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<display-name>camunda bpm webapp</display-name>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/applicationContext.xml</param-value>
</context-param>
<!-- Added for MSO: use our log4j configuration file -->
<context-param>
<param-name>log.configuration</param-name>
<param-value>logback.bpmn.xml</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<!-- cockpit bootstrap listener -->
<listener>
<listener-class>org.camunda.bpm.cockpit.impl.web.bootstrap.CockpitContainerBootstrap</listener-class>
</listener>
<!-- admin bootstrap listener -->
<listener>
<listener-class>org.camunda.bpm.admin.impl.web.bootstrap.AdminContainerBootstrap</listener-class>
</listener>
<!-- tasklist bootstrap listener -->
<listener>
<listener-class>org.camunda.bpm.tasklist.impl.web.bootstrap.TasklistContainerBootstrap</listener-class>
</listener>
<!-- Authentication filter -->
<filter>
<filter-name>Authentication Filter</filter-name>
<filter-class>org.camunda.bpm.webapp.impl.security.auth.AuthenticationFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>Authentication Filter</filter-name>
<url-pattern>/*</url-pattern>
<dispatcher>REQUEST</dispatcher>
</filter-mapping>
<!-- Security filter -->
<filter>
<filter-name>SecurityFilter</filter-name>
<filter-class>org.camunda.bpm.webapp.impl.security.filter.SecurityFilter</filter-class>
<init-param>
<param-name>configFile</param-name>
<param-value>/WEB-INF/securityFilterRules.json</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>SecurityFilter</filter-name>
<url-pattern>/*</url-pattern>
<dispatcher>REQUEST</dispatcher>
</filter-mapping>
<!-- engines filter -->
<filter>
<filter-name>Engines Filter</filter-name>
<filter-class>org.camunda.bpm.webapp.impl.engine.ProcessEnginesFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>Engines Filter</filter-name>
<url-pattern>/app/*</url-pattern>
<dispatcher>REQUEST</dispatcher>
</filter-mapping>
<!-- REST cache control filter -->
<filter>
<filter-name>CacheControlFilter</filter-name>
<filter-class>org.camunda.bpm.engine.rest.filter.CacheControlFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>CacheControlFilter</filter-name>
<url-pattern>/api/*</url-pattern>
</filter-mapping>
<!-- cockpit rest api -->
<servlet>
<servlet-name>Cockpit Api</servlet-name>
<servlet-class>org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher</servlet-class>
<init-param>
<param-name>javax.ws.rs.Application</param-name>
<param-value>org.camunda.bpm.cockpit.impl.web.CockpitApplication</param-value>
</init-param>
<init-param>
<param-name>resteasy.servlet.mapping.prefix</param-name>
<param-value>/api/cockpit</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>Cockpit Api</servlet-name>
<url-pattern>/api/cockpit/*</url-pattern>
</servlet-mapping>
<!-- admin rest api -->
<servlet>
<servlet-name>Admin Api</servlet-name>
<servlet-class>org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher</servlet-class>
<init-param>
<param-name>javax.ws.rs.Application</param-name>
<param-value>org.camunda.bpm.admin.impl.web.AdminApplication</param-value>
</init-param>
<init-param>
<param-name>resteasy.servlet.mapping.prefix</param-name>
<param-value>/api/admin</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>Admin Api</servlet-name>
<url-pattern>/api/admin/*</url-pattern>
</servlet-mapping>
<!-- tasklist rest api -->
<servlet>
<servlet-name>Tasklist Api</servlet-name>
<servlet-class>org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher</servlet-class>
<init-param>
<param-name>javax.ws.rs.Application</param-name>
<param-value>org.camunda.bpm.tasklist.impl.web.TasklistApplication</param-value>
</init-param>
<init-param>
<param-name>resteasy.servlet.mapping.prefix</param-name>
<param-value>/api/tasklist</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>Tasklist Api</servlet-name>
<url-pattern>/api/tasklist/*</url-pattern>
</servlet-mapping>
<!-- engine rest api (embedded) -->
<servlet>
<servlet-name>Engine Api</servlet-name>
<servlet-class>org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher</servlet-class>
<init-param>
<param-name>javax.ws.rs.Application</param-name>
<param-value>org.camunda.bpm.webapp.impl.engine.EngineRestApplication</param-value>
</init-param>
<init-param>
<param-name>resteasy.servlet.mapping.prefix</param-name>
<param-value>/api/engine</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>Engine Api</servlet-name>
<url-pattern>/api/engine/*</url-pattern>
</servlet-mapping>
</web-app>