我有一个DecoraManager实现:AppDecoraManager,并且想要注入服务,例如:FooService as:
@PetiteInject
FooService fooService;
当调用resolveDecorator()时,我想使用fooService来确定一些参数,但是它具有空值。
这可能是什么原因,我该如何解决?
答案 0 :(得分:1)
DecoraManager
是由servlet容器在DecoraServletFilter
中创建的。
目前,没有与现有的Petite IOC集成,因此您必须执行以下操作:
PetiteContainer
有一个公共静态引用。例如,在创建容器期间将其存储。createDecoraManager()
PetiteContainer.wire(this)
的实现中使用DecoraManager
。到目前为止,这是唯一的方法。
替代方法是:
DecoraManager
注册为@PetiteBean
。PetiteContainer
的静态引用createDecoraManager
中使用PetiteContainer.get()
获取实例。在第一个示例中,DecoraManager
仅被连接;在第二个示例中,它也存储在Petite容器中。