按照http://www.eclipse.org/jetty/documentation/current/cross-origin-filter.html的说明,为了在jetty-8.1.18.v20150929(与BaseX 8.5捆绑在一起)上启用跨源请求,我下载了jetty-servlets-8.1.18.v20150929.jar
,并将其放在WEB-INF / lib中
另外,在web.xml中,我添加了:
<filter>
<filter-name>cross-origin</filter-name>
<filter-class>org.eclipse.jetty.servlets.CrossOriginFilter</filter-class>
<init-param>
<param-name>allowedOrigins</param-name>
<param-value>*</param-value>
</init-param>
<init-param>
<param-name>allowedMethods</param-name>
<param-value>GET,POST,OPTIONS</param-value>
</init-param>
<init-param>
<param-name>allowedHeaders</param-name>
<param-value>*</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>cross-origin</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
但是,这会导致Jetty在启动时崩溃。我错过了什么?
答案 0 :(得分:0)
Jetty 8中不存在该类。它会暂停启动,因为您引用了一个无法找到/加载/实例化的类。
编写自己的CrossOriginFilter,完成您需要它做的事情。
确保它支持:
注意:不要从Jetty 9(您尝试使用的版本)复制/粘贴版本,因为它也支持Servlet 3.1中的功能,但在Jetty 8中不起作用。