Add winery source code
[vfc/nfvo/wfengine.git] / winery / org.eclipse.winery.repository / src / main / webapp / WEB-INF / web.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!--
3 /*******************************************************************************
4  * Copyright (c) 2012-2013,2015 University of Stuttgart.
5  * All rights reserved. This program and the accompanying materials
6  * are made available under the terms of the Eclipse Public License v1.0
7  * and the Apache License 2.0 which both accompany this distribution,
8  * and are available at http://www.eclipse.org/legal/epl-v10.html
9  * and http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Contributors:
12  *    Oliver Kopp - initial API and implementation and/or initial documentation
13  *******************************************************************************/
14 -->
15 <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="winery" version="3.0">
16         <display-name>Winery Repository</display-name>
17         <filter>
18                 <filter-name>WineryResources</filter-name>
19                 <filter-class>com.sun.jersey.spi.container.servlet.ServletContainer</filter-class>
20                 <init-param>
21                         <param-name>com.sun.jersey.spi.container.ContainerResponseFilters</param-name>
22                         <!-- RestDocFilter is required for RESTDoc. CORSFilter is required for the BPMN4TOSCA Plan Modeler -->
23                         <param-value>org.eclipse.winery.repository.RestDocFilter;org.eclipse.winery.repository.CORSFilter</param-value>
24                 </init-param>
25                 <init-param>
26                         <param-name>com.sun.jersey.config.property.packages</param-name>
27                         <param-value>org.eclipse.winery.repository.resources</param-value>
28                 </init-param>
29                 <init-param>
30                         <param-name>com.sun.jersey.config.feature.FilterForwardOn404</param-name>
31                         <param-value>false</param-value>
32                 </init-param>
33                 <init-param>
34                         <param-name>com.sun.jersey.config.feature.CanonicalizeURIPath</param-name>
35                         <param-value>true</param-value>
36                 </init-param>
37                 <init-param>
38                         <param-name>com.sun.jersey.config.feature.NormalizeURI</param-name>
39                         <param-value>true</param-value>
40                 </init-param>
41                 <init-param>
42                         <param-name>com.sun.jersey.config.feature.Redirect</param-name>
43                         <param-value>true</param-value>
44                 </init-param>
45
46                 <!-- enables @Consumes(MediaType.APPLICATION_JSON) and @Produces(MediaType.APPLICATION_JSON), see https://jersey.java.net/nonav/documentation/1.7/json.html -->
47                 <init-param>
48                         <param-name>com.sun.jersey.api.json.POJOMappingFeature</param-name>
49                         <param-value>true</param-value>
50                 </init-param>
51
52         </filter>
53         <filter-mapping>
54                 <filter-name>WineryResources</filter-name>
55
56                 <!--
57                         Each resource handled by JAX-RS has to be written separately.
58                         Reason:
59                          * /components, /css, /images, /js are not provided by JAX-RS
60                          * FilterForwardOn404 is a Jersey feature, not standardized
61                          * It also forwards if a resource itself returns 404 (without an entity)
62                          * The JAX-RS code should not be cluttered with Jersey specifics
63                 -->
64
65                 <!--  ordering as in TOSCA-v1.0.xsd of TOSCA CSD08 -->
66
67                 <url-pattern>/imports/*</url-pattern>
68                 <url-pattern>/servicetemplates/*</url-pattern>
69                 <url-pattern>/nodetypes/*</url-pattern>
70                 <url-pattern>/nodetypeimplementations/*</url-pattern>
71                 <url-pattern>/relationshiptypes/*</url-pattern>
72                 <url-pattern>/relationshiptypeimplementations/*</url-pattern>
73                 <url-pattern>/requirementtypes/*</url-pattern>
74                 <url-pattern>/capabilitytypes/*</url-pattern>
75                 <url-pattern>/artifacttypes/*</url-pattern>
76                 <url-pattern>/artifacttemplates/*</url-pattern>
77                 <url-pattern>/policytypes/*</url-pattern>
78                 <url-pattern>/policytemplates/*</url-pattern>
79
80                 <!--  additional resources -->
81                 <url-pattern>/</url-pattern>
82                 <url-pattern>/admin/*</url-pattern>
83                 <url-pattern>/API/*</url-pattern>
84                 <url-pattern>/other/*</url-pattern>
85                 <url-pattern>/test/*</url-pattern>
86
87         </filter-mapping>
88         <listener>
89                 <listener-class>org.eclipse.winery.repository.Prefs</listener-class>
90         </listener>
91
92         <session-config>
93                 <tracking-mode>COOKIE</tracking-mode>
94         </session-config>
95 </web-app>