[英]WebFilter Java8 and Maven
我正在玩教程並具有以下內容:
* Maven 項目
<dependency>
<groupId>javax</groupId>
<artifactId>javaee-api</artifactId>
<version>8.0</version>
<scope>provided</scope>
</dependency>
*Docker Wildfly 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 類從這個版本開始可用)
如果您刪除所提供的它應該可以工作(除非發生某些依賴性不一致。如果是這種情況,您必須升級wildfly版本)
https://www.oracle.com/corporate/pressrelease/java-se-9-and-ee-8-092117.html
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.