ssh 注入了bean 但是取值为null
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ssh 注入了bean 但是取值为null相关的知识,希望对你有一定的参考价值。
application.xml中的部分配置:
<!--配置 Hibernate Template -->
<bean id="hibernateTemplate" class="org.springframework.orm.hibernate3.HibernateTemplate">
<property name="sessionFactory">
<ref bean="sessionFactory" />
</property>
</bean>
<!-- 配置student的相关业务bean -->
<bean id="StuDAO" class="com.haitu.dao.StuDAO">
<property name="hibernateTemplate">
<ref local="hibernateTemplate" />
</property>
</bean>
<bean id="StuService" class="com.haitu.service.StuService" >
<property name="StuDAO">
<ref bean="StuDAO"></ref>
</property>
struts中的配置:
<struts>
<constant name="struts.ognl.allowStaticMethodAccess" value="true" />
<package name="student" extends="struts-default">
<action name="addStudent" class="com.haitu.action.StudentAction" method="addStudent">
<result name="success">index.jsp</result>
<result name="error">error.jsp</result>
</action>
</package>
</struts>
public class StudentAction extends ActionSupport
private Stu stu;
private StuService service;
@Override
public String execute() throws Exception
// TODO Auto-generated method stub
return super.execute();
action中的配置:
public String addStudent()
System.out.println("this is service11111.................."+this.service);
boolean res=service.addStudent(stu);
if(res)
return ActionSupport.SUCCESS;
else
return ActionSupport.ERROR;
public Stu getStu()
return stu;
public void setStu(Stu stu)
this.stu = stu;
public StuService getService()
return service;
public void setStuService(StuService service)
this.service = service;
System.out.println("this is service.................."+service);
</bean>
<bean id="StudentAction" class="com.haitu.action.StudentAction">
<property name="StuService" >
<ref bean="StuService" ></ref>
</property>
</bean>
启动服务器是后台输出:this is service..................com.haitu.model.StuService@1d978ea
执行addStudent方法时this is service11111..................null
service为空,导致空指针异常。
那怎么知道 当前请求用哪个类的方法来处理
追答spring配置文件
struts配置文件
index.jsp
error.jsp
注意struts里 相关action中 class属性的写法, 等同于此action在spring配置文件中的id
那是为什么没注入进去呢
追答看看你的服务器的日志,是否有一些记录,或者控制台报错了没有,这些信息很重要。
单凭说没有注入类,我也确实不好判断是什么地方出错了。
或者看看是否是数据库没连接上,还是什么原因,这个应该还是挺简单的
good luck
activiti中实现TaskListener注入Spring的bean
一开始我写的bpmn中
然后在我的监听器中注入的Spring的bean为空,注入不进来。
像这样,tenderService为null 注入不了。
此时需要把bpmn中这样设置,sendDocumentStartListener是监听器的类名(在这里首字母要小写)
监听器里要这么写(注意要加上@Component注解)
此时就可以注入Spring的bean了
以上是关于ssh 注入了bean 但是取值为null的主要内容,如果未能解决你的问题,请参考以下文章
springBoot Interceptor拦截器注入mapper 为null
spring springboot websocket 不能注入( @Autowired ) service bean 报 null 错误
解决SpringBoot中webScocket不能注入bean的问题
使用 Spring 注入 bean 时出现 nullPointerException