Skip to content
Snippets Groups Projects
Commit ea1d6a71 authored by Christoph Thelen's avatar Christoph Thelen
Browse files

Merge branch 'master' into msp-team6-pq

parents 013a598c 2084f33a
Branches
Tags
No related merge requests found
package de.thm.arsnova.web;
import java.io.IOException;
import javax.servlet.FilterChain;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.stereotype.Component;
import org.springframework.web.filter.OncePerRequestFilter;
@Component
public class CorsFilter extends OncePerRequestFilter {
@Override
protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain filterChain)
throws ServletException, IOException {
response.addHeader("Access-Control-Allow-Credentials", "true");
response.addHeader("Access-Control-Allow-Methods", "GET");
response.addHeader("Access-Control-Allow-Headers", "Content-Type, Authorization, X-Requested-With");
if (request.getHeader("origin") != null) {
response.addHeader("Access-Control-Allow-Origin", request.getHeader("origin"));
}
filterChain.doFilter(request, response);
}
}
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" <beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:aop="http://www.springframework.org/schema/aop" xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:context="http://www.springframework.org/schema/context"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.2.xsd xsi:schemaLocation="http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.2.xsd
http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.2.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.2.xsd
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.2.xsd http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.2.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.2.xsd"> http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.2.xsd">
<!-- ARSnova Servlet Context --> <!-- ARSnova Servlet Context -->
<context:component-scan base-package="de.thm.arsnova.controller" /> <context:component-scan base-package="de.thm.arsnova.controller,de.thm.arsnova.web" />
<mvc:annotation-driven content-negotiation-manager="contentNegotiationManager" /> <mvc:annotation-driven
content-negotiation-manager="contentNegotiationManager" />
<bean id="contentNegotiationManager" class="org.springframework.web.accept.ContentNegotiationManagerFactoryBean">
<property name="favorPathExtension" value="false" /> <bean id="contentNegotiationManager"
<property name="favorParameter" value="true" /> class="org.springframework.web.accept.ContentNegotiationManagerFactoryBean">
<property name="mediaTypes" > <property name="favorPathExtension" value="false" />
<value> <property name="favorParameter" value="true" />
html=text/html <property name="mediaTypes">
json=application/json <value>
</value> html=text/html
</property> json=application/json
</value>
</property>
</bean> </bean>
<mvc:annotation-driven /> <mvc:annotation-driven />
<mvc:resources mapping="/**" location="/" /> <mvc:resources mapping="/**" location="/" />
<!-- --> <!-- -->
<bean class="org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping" /> <bean
<bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter"> class="org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping" />
<bean
class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">
<property name="messageConverters"> <property name="messageConverters">
<list> <list>
<bean class = "org.springframework.http.converter.StringHttpMessageConverter"> <bean
<property name="supportedMediaTypes" value = "text/plain;charset=UTF-8" /> class="org.springframework.http.converter.StringHttpMessageConverter">
</bean> <property name="supportedMediaTypes" value="text/plain;charset=UTF-8" />
<bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter" /> </bean>
<bean
class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter" />
</list> </list>
</property> </property>
</bean> </bean>
<!-- --> <!-- -->
<bean class="org.springframework.web.servlet.view.ContentNegotiatingViewResolver"> <bean
<property name="viewResolvers"> class="org.springframework.web.servlet.view.ContentNegotiatingViewResolver">
<list> <property name="viewResolvers">
<bean class="org.springframework.web.servlet.view.UrlBasedViewResolver"> <list>
<property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/> <bean class="org.springframework.web.servlet.view.UrlBasedViewResolver">
<property name="prefix" value="/WEB-INF/jsp/"/> <property name="viewClass"
<property name="suffix" value=".jsp"/> value="org.springframework.web.servlet.view.JstlView" />
</bean> <property name="prefix" value="/WEB-INF/jsp/" />
</list> <property name="suffix" value=".jsp" />
</property> </bean>
<property name="defaultViews"> </list>
<list> </property>
<bean class="org.springframework.web.servlet.view.json.MappingJackson2JsonView"> <property name="defaultViews">
<property name="prefixJson" value="false"/> <list>
</bean> <bean
</list> class="org.springframework.web.servlet.view.json.MappingJackson2JsonView">
</property> <property name="prefixJson" value="false" />
</bean>
</list>
</property>
</bean> </bean>
</beans> </beans>
...@@ -58,6 +58,15 @@ ...@@ -58,6 +58,15 @@
<listener-class>org.jasig.cas.client.session.SingleSignOutHttpSessionListener</listener-class> <listener-class>org.jasig.cas.client.session.SingleSignOutHttpSessionListener</listener-class>
</listener> </listener>
<filter>
<filter-name>corsFilter</filter-name>
<filter-class>de.thm.arsnova.web.CorsFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>corsFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<mime-mapping> <mime-mapping>
<extension>manifest</extension> <extension>manifest</extension>
<mime-type>text/cache-manifest</mime-type> <mime-type>text/cache-manifest</mime-type>
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment