Java 弹簧Webflux返回404(非Foud)
我必须使用SpringWebFlux以被动的方式保存一些值。但是当我发送请求时,404状态作为响应返回 pom.xmlJava 弹簧Webflux返回404(非Foud),java,spring,spring-boot,reactive-programming,spring-webflux,Java,Spring,Spring Boot,Reactive Programming,Spring Webflux,我必须使用SpringWebFlux以被动的方式保存一些值。但是当我发送请求时,404状态作为响应返回 pom.xml org.springframework.boot 这很奇怪,但当我删除了jersey依赖项后,它就工作了。仍然不确定背后的原因。 引发拉请求您合并相同的内容以接受我所做的更改 JAX-RS是javaee中关于如何编写restapi的规范。几个库随后实现了上述规范,如Jersey或restEasy。在构建JavaEE应用程序时,您需要这些库中的一个来构建RESTAPI Spri
org.springframework.boot
这很奇怪,但当我删除了jersey
依赖项后,它就工作了。仍然不确定背后的原因。
引发拉请求您合并相同的内容以接受我所做的更改
JAX-RS
是javaee
中关于如何编写restapi的规范。几个库随后实现了上述规范,如Jersey
或restEasy
。在构建JavaEE应用程序时,您需要这些库中的一个来构建RESTAPI
Spring为非反应式应用程序构建了自己的RESTAPISpringWeb
,为反应式应用程序构建了自己的RESTAPISpringWebFlux
Jersey
和restEasy
(据我所知)仅在构建非反应式应用程序时有效
为了使代码正常工作,您需要删除:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jersey</artifactId>
</dependency>
org.springframework.boot
您需要删除以下依赖项
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jersey</artifactId>
</dependency>
您还必须在JerseyConfig中注册这个类
import com.zetcode.endpoint.HelloService;
import org.glassfish.jersey.server.ResourceConfig;
import org.springframework.context.annotation.Configuration;
@Configuration
public class JerseyConfig extends ResourceConfig {
public JerseyConfig() {
register(HelloService.class);
}
}
如果您想继续使用spring内置函数并使用reactive,只需删除jersey依赖项并使用webflux依赖项来创建rest api。确保您的EmpController
在@ComponentScan
下。如果未放置任何@ComponentScan
,请确保已将文件放置在存在main()
的相同或子包下。您可以在此处共享项目结构以获得更多了解,也可以创建GitHub repo并共享URL。@Vipul Kumar here GitHub repo链接jersey依赖项不需要。Spring不使用球衣它在移除球衣
@ThomasAndolf后工作。如果可能的话,让我知道为什么我甚至不确定球衣是否可以用于反应性应用。你能确认吗?是的,它不能用于反应性应用。对于反应式,我们必须使用webflux删除jersey依赖项。
import com.zetcode.endpoint.HelloService;
import org.glassfish.jersey.server.ResourceConfig;
import org.springframework.context.annotation.Configuration;
@Configuration
public class JerseyConfig extends ResourceConfig {
public JerseyConfig() {
register(HelloService.class);
}
}