关于org.springframework.beans.factory.BeanFactory的getBean(),报NullPointerException
具体问题如下:
【主要在jsp中用org.springframework.beans.factory.BeanFactory
的getBean()方法。】
所以我在项目中写SystemFactory类的代码如下:
public class SystemFactory {
private static SystemFactory instance;
public static SystemFactory getInstance(){
return instance;
}
public static void init(){
instance = new SystemFactory();
}
private Log log = LogFactory.getLog(SystemFactory.class);
private final Properties applicationProperties = new Properties();
private final Map dbProperties = new HashMap();
private BeanFactory beanFactory;
public void setBeanFactory(BeanFactory beanFactory){
this.beanFactory = beanFactory;
}
public BeanFactory getBeanFactory(){
return beanFactory;
}
public Object getBean(String beanId){
return getBeanFactory().getBean(beanId);
}
public SubjectSetDao getSubjectDao() {
return (SubjectSetDao)this.getBean("subjectSetDao");
}
}
其中subjectSetDao也在applicationContext-hibernate.xml中注入了。
然后我在jsp页面中调用它,代码如下:
<%
SubjectSetDao subjectSetDao = SystemFactory.getInstance().getSubjectDao();
//根据id得到科目
TbKmye kmye = subjectSetDao.getKmyeByKmdm1(topChannelIDStr);
System.out.println("kmye="+kmye.getId().getKmdm());
%>
页面报异常:126行就是“SubjectSetDao subjectSetDao = SystemFactory.getInstance().getSubjectDao();”
Caused by: java.lang.NullPointerException
at org.apache.jsp.subject.subject_jsp._jspService(subject_jsp.java:126)
请教高手,想问下是什么原因?还是我少配了什么东西?