WebFilter Java8 和 Maven
WebFilter Java8 and Maven
我正在玩教程并且有以下内容:
*maven 项目
<dependency>
<groupId>javax</groupId>
<artifactId>javaee-api</artifactId>
<version>8.0</version>
<scope>provided</scope>
</dependency>
*Docker 野蝇 10
FROM jboss/wildfly:10.1.0.Final
*Java代码
@WebFilter(urlPatterns = "/*")
public class TokenFilter extends HttpFilter {...}
*当然还有错误:)
Caused by: java.lang.ClassNotFoundException: javax.servlet.http.HttpFilter from [Module "deployment.api.war:main" from Service Module Loader]
Maven 标记 Java 8 作为提供,wildfly 应该有它。
我很确定我缺少对 Maven 的依赖,但不确定是哪一个。
该软件的其他部分工作正常(REST 部分)
有什么提示吗?
我认为问题在于,您的 wildfly 版本比您指定的 java-ee 版本旧。 (java-ee 8 比你的 wildfly 版本晚 1 年发布。并且 HttpFilter class 从这个版本开始可用)
如果你删除提供的它应该工作(除非发生一些依赖不一致。如果是这种情况你必须升级 wildfly 版本)
https://www.oracle.com/corporate/pressrelease/java-se-9-and-ee-8-092117.html
我正在玩教程并且有以下内容:
*maven 项目
<dependency>
<groupId>javax</groupId>
<artifactId>javaee-api</artifactId>
<version>8.0</version>
<scope>provided</scope>
</dependency>
*Docker 野蝇 10
FROM jboss/wildfly:10.1.0.Final
*Java代码
@WebFilter(urlPatterns = "/*")
public class TokenFilter extends HttpFilter {...}
*当然还有错误:)
Caused by: java.lang.ClassNotFoundException: javax.servlet.http.HttpFilter from [Module "deployment.api.war:main" from Service Module Loader]
Maven 标记 Java 8 作为提供,wildfly 应该有它。 我很确定我缺少对 Maven 的依赖,但不确定是哪一个。 该软件的其他部分工作正常(REST 部分)
有什么提示吗?
我认为问题在于,您的 wildfly 版本比您指定的 java-ee 版本旧。 (java-ee 8 比你的 wildfly 版本晚 1 年发布。并且 HttpFilter class 从这个版本开始可用)
如果你删除提供的它应该工作(除非发生一些依赖不一致。如果是这种情况你必须升级 wildfly 版本)
https://www.oracle.com/corporate/pressrelease/java-se-9-and-ee-8-092117.html