Spring XxxxxPersistence null指针@BeanReference注释

Spring XxxxxPersistence null指针@BeanReference注释,spring,junit,nullpointerexception,annotations,liferay,Spring,Junit,Nullpointerexception,Annotations,Liferay,我尝试使用由服务生成器生成的xxxxxlocalServiceBaseImpl.java类中的public XxxxxLocalService getXxxxxLocalService()方法,但变量xxxxx localservice中的值为空 public xxxxxLocalService getClientLocalService() { return xxxxxLocalService; } 该变量由@BeanReference注释实例化,我们可以在java文件的开头看到: @Bea

我尝试使用由服务生成器生成的xxxxxlocalServiceBaseImpl.java类中的public XxxxxLocalService getXxxxxLocalService()方法,但变量xxxxx localservice中的值为空

public xxxxxLocalService getClientLocalService() {
return xxxxxLocalService;
}
该变量由@BeanReference注释实例化,我们可以在java文件的开头看到:

@BeanReference(type = xxxxxLocalService.class)
protected XxxxxLocalService xxxxxLocalService;
@BeanReference(type = XxxxxPersistence.class)
protected XxxxxPersistence xxxxxPersistence;
ServieBaseImpl包包含带有@BeanReference注释的服务,这些注释由使用BeanLocator之一的BeanReferenceAnnotationBeanPostProcessor处理

我注意到有一个鸡和蛋的问题。如果没有已填充了包含@BeanReferenced bean的应用程序上下文的BeanLocator,则无法加载这些bean

但是您不能为要填充的BeanLocator创建应用程序上下文,因为如果您这样做,并且BeanReferenceAnotationBeanPostProcessor是上下文的一部分,它将使用未初始化的BeanLocator

BeanReferenceAnnotationBeanPostProcessor在base-spring.xml中声明,需要与其他bean定义(从portlet-spring.xml等)一起加载,因为它们相互依赖

我不知道为什么这个类不能设置变量值?事实上,我在配置中没有使用base-spring.xml。。所以我要问的是,为了能够使用bean引用注释,我必须在ressource文件中添加哪些行!!
谢谢

ServiceBuilder通常会为您实例化适当的XxxxxLocalServiceImpl对象-完成后,您还可以访问其超类的成员。您调用此操作的对象是如何构造的?您好,先生,您说过“ServiceBuilder通常为您实例化适当的XxxxxLocalServiceImpl对象”。。。我同意你的看法,但如果我使用@BeanReference注释,这是可能的。。。但是在我的代码中,我没有添加任何行来解决这个问题。。。例如,base-spring.xml包含此声明,即使我添加了以下行。。。我还是不能用!