我正在为我的微服务编写一个支持 Zuul
的 API 网关,
但是,在启动包含 zuul
的微服务时,出现以下错误
Error: Caused by: java.lang.ClassNotFoundException: javax.servlet.http.HttpServletRequest
经过多次搜索,我找到了以下两个对我没有帮助的解决方案。所以我在这里
- 启用
Apache tomcat facet
。由于某些原因,这在Dynamic web module 3.0
中被禁用。 - 创建自定义
dispatcher servlet
。但是这个方案在我们使用servlet 2.5的时候应该是可行的。
因为我使用的是从 https://spring.io
导入的 spring-boot 应用程序,所以它巩固了我使用的是 servlet 3.0
。
我的API网关pom.xml
:
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
<spring-cloud.version>Finchley.SR1</spring-cloud.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-zuul</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
我已经用 @EnableZuulProxy
注释了我的 API 网关类。
说了这些,你能帮我解决上面突出显示的错误吗。
Edit: When I change the 1.
spring-starter-parent
to 1.5.3RELEASE instead of the latest. 2.spring-cloud.version
to Edgware.SR2 from Finchley.SR1. I face no issue at all.
我猜这是最新的 Spring Activity ?任何想法!
最佳答案
我已尝试简化您的 pom,但没有遇到任何问题。
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-zuul</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-eureka</artifactId>
</dependency>
让我知道在放置这些依赖项之后,它仍然无法正常工作。你也可以提供源代码的 githhb 链接吗
关于java - 由于找不到 `HttpServletRequest` 类,@EnableZuulProxy 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51821786/