Java Tomcat中存在的筛选器不';在Jetty,我如何让Jetty忽略它?

Java Tomcat中存在的筛选器不';在Jetty,我如何让Jetty忽略它?,java,tomcat,servlets,jetty,Java,Tomcat,Servlets,Jetty,我们有一个在Tomcat和Jetty中运行的项目。我在我的web.xml中添加了一个过滤器: 克斯菲尔特 org.apache.catalina.filters.CorsFilter CorsFilter类随Tomcat一起提供,但Jetty找不到它(因此无法启动) 有没有办法让Jetty忽略这个声明?或者将其仅应用于Tomcat?显而易见的解决方案是将其从web.xml中删除。这毕竟是部署描述符,它的存在正是为了定制应用程序的部署 如果您真的想在两台服务器上都部署一个war文件而不被触碰,

我们有一个在Tomcat和Jetty中运行的项目。我在我的web.xml中添加了一个过滤器:


克斯菲尔特
org.apache.catalina.filters.CorsFilter
CorsFilter类随Tomcat一起提供,但Jetty找不到它(因此无法启动)


有没有办法让Jetty忽略这个声明?或者将其仅应用于Tomcat?

显而易见的解决方案是将其从web.xml中删除。这毕竟是部署描述符,它的存在正是为了定制应用程序的部署

如果您真的想在两台服务器上都部署一个war文件而不被触碰,那么您可以编写自己的过滤器,使catalina CorsFilter的代理可用,如果不可用,则不做任何事情


您可以通过执行
Class.forName(“org.apache.catalina.filters.CorsFilter”)
来测试过滤器是否可用,并查看是否出现异常。

谢谢。这正是我最后所做的,我把它移到原来的位置,并通过我们的部署过程将它放到Tomcats global web.xml中。在我们的例子中,这种设置也可能是全局的。