Sto utilizzando Tomcat 7. Ho impostato il filtro nativo CORS come suggerito nella documentazione Tomcat ufficiale.Filtro CORS Tomcat e Spring Security
Ho provato tutto ciò che potevo, ma non funziona. Dato che sto usando un'applicazione del fornitore che conosco sta usando i filtri Spring Security, mi chiedo se c'è un bug noto qui.
Ecco di cosa sto parlando:
<!-- Spring Security START -->
<filter>
<filter-name>springSecurityFilterChain</filter-name>
<filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
</filter>
<filter-mapping>
<filter-name>springSecurityFilterChain</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>springSecurityFilterChain</filter-name>
<url-pattern>/</url-pattern>
</filter-mapping>
<!-- Spring Security END -->
ho aggiunto le seguenti configurazioni per Web.xml:
<filter>
<filter-name>CorsFilter</filter-name>
<filter-class>org.apache.catalina.filters.CorsFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>CorsFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
So che è minima, ma dovrebbe funzionare.
Ho anche provato in precedenza una versione più lunga:
<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,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>
Non ha funzionato neanche.
Qualcuno ha esperienza con l'installazione di filtri CORS con Spring Security?
Potresti essere più specifico su "non funziona"? – Djizeus
qual è la tua versione esatta di tomcat? – salyh
Hai provato a mettere il filtro cors davanti al filtro a molla? – user467257