Address @XmlSeeAlso limitation. Provide the ability to inject the JAXB types
[controller.git] / opendaylight / northbound / flowprogrammer / src / main / resources / WEB-INF / web.xml
index 83f7e4b35d89e9891ef99e0cebd38ec17d45b213..f5c1ae5f9234afd435928bb9f2b8e0e1770af4d2 100644 (file)
@@ -1,51 +1,90 @@
 <?xml version="1.0" encoding="ISO-8859-1"?>
 <web-app 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_3_0.xsd"
-       version="3.0">
-  
-       <servlet>
-         <servlet-name>JAXRSFlowProgrammer</servlet-name>
-         <servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class>
-         <init-param>
-           <param-name>javax.ws.rs.Application</param-name>
-           <param-value>org.opendaylight.controller.flowprogrammer.northbound.FlowProgrammerNorthboundRSApplication</param-value>
-         </init-param>
-         <load-on-startup>1</load-on-startup>
-       </servlet>
-       
-       <servlet-mapping>
-         <servlet-name>JAXRSFlowProgrammer</servlet-name>
-         <url-pattern>/*</url-pattern>
-       </servlet-mapping>
+        xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
+        version="3.0">
+
+        <servlet>
+          <servlet-name>JAXRSFlowProgrammer</servlet-name>
+          <servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class>
+          <init-param>
+            <param-name>javax.ws.rs.Application</param-name>
+            <param-value>org.opendaylight.controller.northbound.commons.NorthboundApplication</param-value>
+          </init-param>
+          <load-on-startup>1</load-on-startup>
+        </servlet>
+
+        <servlet-mapping>
+          <servlet-name>JAXRSFlowProgrammer</servlet-name>
+          <url-pattern>/*</url-pattern>
+        </servlet-mapping>
+
+        <filter>
+          <filter-name>CorsFilter</filter-name>
+          <filter-class>org.apache.catalina.filters.CorsFilter</filter-class>
+          <init-param>
+            <param-name>cors.allowed.origins</param-name>
+            <param-value>*</param-value>
+          </init-param>
+          <init-param>
+            <param-name>cors.allowed.methods</param-name>
+            <param-value>GET,POST,HEAD,OPTIONS,PUT</param-value>
+          </init-param>
+          <init-param>
+            <param-name>cors.allowed.headers</param-name>
+            <param-value>Content-Type,X-Requested-With,accept,authorization, origin,Origin,Access-Control-Request-Method,Access-Control-Request-Headers</param-value>
+          </init-param>
+          <init-param>
+            <param-name>cors.exposed.headers</param-name>
+            <param-value>Access-Control-Allow-Origin,Access-Control-Allow-Credentials</param-value>
+          </init-param>
+          <init-param>
+            <param-name>cors.support.credentials</param-name>
+            <param-value>true</param-value>
+          </init-param>
+          <init-param>
+            <param-name>cors.preflight.maxage</param-name>
+            <param-value>10</param-value>
+          </init-param>
+        </filter>
+        <filter-mapping>
+          <filter-name>CorsFilter</filter-name>
+          <url-pattern>/*</url-pattern>
+        </filter-mapping>
+
+        <security-constraint>
+          <web-resource-collection>
+            <web-resource-name>NB api</web-resource-name>
+            <url-pattern>/*</url-pattern>
+            <http-method>POST</http-method>
+            <http-method>GET</http-method>
+            <http-method>PUT</http-method>
+            <http-method>PATCH</http-method>
+            <http-method>DELETE</http-method>
+            <http-method>HEAD</http-method>
+          </web-resource-collection>
+          <auth-constraint>
+            <role-name>System-Admin</role-name>
+            <role-name>Network-Admin</role-name>
+            <role-name>Network-Operator</role-name>
+            <role-name>Container-User</role-name>
+          </auth-constraint>
+        </security-constraint>
 
-       <security-constraint>
-               <web-resource-collection>
-                       <web-resource-name>NB api</web-resource-name>
-                       <url-pattern>/*</url-pattern>
-               </web-resource-collection>
-               <auth-constraint>
-                       <role-name>System-Admin</role-name>
-                       <role-name>Network-Admin</role-name>
-                       <role-name>Network-Operator</role-name>
-                       <role-name>Container-User</role-name>
-               </auth-constraint>
-       </security-constraint>
-    
     <security-role>
-               <role-name>System-Admin</role-name>
-       </security-role>
-       <security-role>
-               <role-name>Network-Admin</role-name>
-       </security-role>
-       <security-role>
-               <role-name>Network-Operator</role-name>
-       </security-role>
-       <security-role>
-               <role-name>Container-User</role-name>
-       </security-role>
-       
-       <login-config>
-               <auth-method>BASIC</auth-method>
-               <realm-name>opendaylight</realm-name>
-       </login-config>
-</web-app>
\ No newline at end of file
+                <role-name>System-Admin</role-name>
+        </security-role>
+        <security-role>
+                <role-name>Network-Admin</role-name>
+        </security-role>
+        <security-role>
+                <role-name>Network-Operator</role-name>
+        </security-role>
+        <security-role>
+                <role-name>Container-User</role-name>
+        </security-role>
+
+        <login-config>
+                <auth-method>BASIC</auth-method>
+                <realm-name>opendaylight</realm-name>
+        </login-config>
+</web-app>