我的 Jersey Java 类如下所示:
@Component
...class...MyComponent...extends myParent
在父类中:
...abstract class myParent...
@Autowired
SomeBean myAutowiredBean
当我的服务器启动时,我收到一些奇怪的警告:
Nov 14, 2014 10:41:23 AM org.glassfish.jersey.server.spring.SpringComponentProvider bind SEVERE: None or multiple beans found in Spring context for type class ...myPackageAndClassHere..., skipping the type.
尽管有警告消息,但一切都按预期工作。 每个扩展父级的类都有此警告。这与父类的抽象性有关吗?
我找到了这个 page where someone else has a similar issue ,这是 Jersey / Spring 问题吗? 我使用 Jersey 2.11 和 Spring 3.2.3。
最佳答案
我遇到了同样的问题。我的 REST 资源响应正确,但我收到了相同的严重消息。实际上,如果尝试将我的一些 bean 注入(inject)到一些 REST 服务中,我会在任何 bean 注入(inject)调用中得到 NullPointerException。
发生的事情是 Jersey 初始化了其余服务但没有初始化我的 spring bean(让我说......正确,我不得不!!)
我解决了只是让 spring 知道我的 bean :)
只需添加context:component-scan base-package="myPackage"
警告(和 NullPointers)消失了!
关于java - 在类型类 ...myPackageHere... 的 Spring 上下文中找不到一个或多个 bean,跳过该类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26928425/