首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >java继承的spring自动配置属性为空。

java继承的spring自动配置属性为空。
EN

Stack Overflow用户
提问于 2015-10-12 14:46:37
回答 1查看 559关注 0票数 0

编辑:我的问题不是Spring为什么是空的,而是为什么继承的是空的?建议的答案解释了为什么新的运算符不适用于自动装配。但我的问题是关于遗产。我有两门课:

代码语言:javascript
复制
@Transactional
public class A {

    @Autowired
    protected SessionFactory sessionFactory;

    //other methods
}

public class B extends A {

    Session session = sessionFactory.getCurrentSession();

    //other methods
}

在Main.java中,我得到了NPE -B类不能访问属性A((我不明白为什么)()

代码语言:javascript
复制
A inst1 = new B(); - dont have access to body of B.
B inst2 = new B(); - inside class B sessionFactory is null(((

我做错了什么?我需要获得B的身体和上级阶级的属性。Bean sessionFactory正在工作:

代码语言:javascript
复制
ApplicationContext context = new ClassPathXmlApplicationContext("application-context.xml");
        SessionFactory sessionfactory = (SessionFactory) context.getBean("sessionFactory");
        Session session = sessionfactory.getCurrentSession();//works
EN

回答 1

Stack Overflow用户

发布于 2015-10-12 15:12:54

如果您正在获得NPE,是因为sessionFactory没有被注入,而是您无法访问sessionFactory属性。

如果您可以在加载应用程序上下文之后获得sessionFactory实例,那么这个bean是正确配置的。

因此,我认为您的问题必须与自动批注配置有关。您的应用程序上下文中有<context:annotation-config />吗?或者您是否在应用程序上下文中定义了类org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor的bean?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33084023

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档