为什么@PetiteInject不能在DecoraManager中注入服务



我有一个DecoraManager实现:AppDecoraManager,并希望注入一个服务,例如:FooService作为:

@PetiteInject
FooService fooService;

当调用resolveDecorator((时,我想使用fooService来确定一些参数,但它的值为null。

这可能是什么原因,我该如何解决?

DecoraManagerDecoraServletFilter中的servlet容器创建。

目前,还没有与现有的Petite IOC集成,因此您必须执行以下操作:

  • 首先,您需要有一个对PetiteContainer的公共静态引用。例如,在创建容器的过程中存储它
  • 在实现中覆盖createDecoraManager()
  • DecoraManager的实现中使用PetiteContainer.wire(this)

到目前为止,这是唯一的方法。

另一种选择是:

  • DecoraManager注册为@PetiteBean
  • 再次获取对PetiteContainer的静态引用
  • createDecoraManager中,使用PetiteContainer.get()获取实例

在第一个示例中,DecoraManager刚刚连线;在第二个示例中,它也存储在Petite容器中。

相关内容

  • 没有找到相关文章

最新更新