当前位置: 首页 > 知识库问答 >
问题:

spring-cloud-starter-oauth2和spring-boot-starter-webflux启动时没有服务器

洪黎昕
2023-03-14

我有一个简单spring应用程序

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.0.0.BUILD-SNAPSHOT</version>
    <relativePath/> <!-- lookup parent from repository -->
</parent>

我的其他依赖项是:

    <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-starter-oauth2</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-webflux</artifactId>
    </dependency>
@RestController
public class Controller {
    @GetMapping("/")
    String get(){
        return "HELLO";
    }
}

当我启动应用程序时,我有一个奇怪的错误:

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'requestMappingHandlerMapping' defined in class path resource [org/springframework/boot/autoconfigure/web/servlet/WebMvcAutoConfiguration$Enable WebMvcConfiguration.class]: Invocation of init method failed; nested exception is java.lang.ArrayStoreException: sun.reflect.annotation.TypeNotPresentExceptionProxy

看来我和spring-webmvc和WebFlux有冲突。我想要反应和webmvc没有发挥好与spring reactive根据我读到的,所以我排除了spring-web-starter,但然后我有...

org.springframework.context.ApplicationContextException: Unable to start reactive web server; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'httpHandler' defined in class path resource [org/springframework/boot/autoconfigure/web/reactive/HttpHandlerAutoConfiguration$AnnotationConfig.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.springframework.http.server.reactive.HttpHandler]: Factory method 'httpHandler' threw exception; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'webHandler' defined in class path resource [org/springframework/boot/autoconfigure/web/reactive/WebFluxAnnotationAutoConfiguration$EnableWebFluxConfiguration.class]: Initialization of bean failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'requestMappingHandlerMapping' defined in class path resource [org/springframework/boot/autoconfigure/web/reactive/WebFluxAnnotationAutoConfiguration$EnableWebFluxConfiguration.class]: Invocation of init method failed; nested exception is java.lang.ArrayStoreException: sun.reflect.annotation.TypeNotPresentExceptionProxy

需要什么使spring oauth2与spring-webflux一起工作?

提前致谢

共有1个答案

郗亦
2023-03-14

目前不支持这一点(Spring Security的反应位也不支持)。

 类似资料:
  • 当时我试着将其中一个依赖项包括在内,但我找不到任何区别: Spring boot starter Web:我可以看到Flux和Mono类,并制作一个反应性rest控制器 Spring boot starter WebFlux:我可以看到rest控制器类和注释,并且可以制作一个规范的rest控制器 那么,我错过了什么?使用spring boot 2.2.5-释放。

  • 我不想重复前面的其他线程。虽然这是一个已知的问题,但我没有看到任何地方对此进行跟踪。如果它被跟踪,请给我指出正确的方向。 目前spring-授权-server与Spring Boot 2.5. x一起使用。众所周知,与spring-boot-starter-oauth2-client实现以及Jwt令牌和spring-授权-server的令牌不一致。 这意味着您可以使用spring Boot 2.6

  • 当我开始学习spring-webflux时,我有一个关于这个组件的问题。 我构建了一个简单的项目,使用maven管理该项目,并添加了关于spring-boot-starter-web和spring-boot-starter-webflux的依赖关系“,例如:

  • 我想使用Springs新的reactive webflux扩展在客户机和服务器应用程序之间建立通信。 对于依赖关系管理,我使用Gradle。我在服务器和客户端上的build.gradle文件基本上是: (需要注意的是,2.0.0.build-snapshot是一个移动的目标,手头的问题有一天可能会因为依赖关系内部的变化而消失) 我的问题是:为什么netty一开始是在客户端启动的,我该如何预防? 根

  • 我正在努力学习spring boot,我注意到有两种选择。 > spring-boot-starter-web-根据文档,它支持全栈web开发,包括Tomcat和web-mvc spring-Boot-Starter-Tomcat 既然#1支持Tomcat,为什么要使用#2呢? 有什么不同? 谢谢

  • 我已经创建了 2 个微服务,其中包含 Spring Boot(版本 1.5.1 RELEASE)、Spring Cloud(Edgware.SR3)、Spring Cloud Starter Config(版本 1.4.3 RELEASE)和 Netflix 的 Eureka 命名服务器(Spring Cloud Starter Netflix Eureka Client/Server 1.4.4