Spring DI丢失方法注释

时间:2018-09-12 11:43:15

标签: spring-boot dependency-injection annotations vert.x

我有一个spring boot Web应用程序,我想使其与vert.x而不是Tomcat一起使用。我正在尝试使用@PathVariable和@RequestBody开发Get / Post等批注。实际上我可以使它们工作,但是在vertical中注册控制器时会遇到问题。 假设我有一些控制器

@Component
public class TestController {

    @Resource
    private TestService testService;

    @GET("/test")
    public void test(RoutingContext ctx) {
        //testService.doSmth();
        ctx.response().end("Hello!");
    }
}

当我向新操作员注册时,我的注释处理工作正常,但是我在TestController中使用服务方法,并且丢失了Spring DI。

 @Component
public class SimpleREST extends AbstractVerticle {

    @Override
    public void start() {
        Router router = AnnotatedRouter.create(vertx, new TestController());
        vertx.createHttpServer().requestHandler(router::accept).listen(9003);
    }
}

当我尝试像这样使用spring DI时,从测试方法获取注释的方法返回空,并且带有注释的路由失败。

@Resource
private TestController testController;

Router router = AnnotatedRouter.create(vertx, testController);

我已经看到Spring AOP有一些类似的问题,但是这里没有AOP。丢失方法注释的原因可能是什么?

0 个答案:

没有答案