初学SSH,做用户登录,出现nullpointer错误,请高手指正
--------------------编程问答-------------------- debug。 --------------------编程问答-------------------- public void setUserService(UserService userService) { this.userService = userService; }这个方法的入参是不是应该写(UserServiceImpl userService)??
--------------------编程问答-------------------- UserCheck.java:38
flag = userService.loginUser(username, password);
你的这个userService为空吧。
没有注入进来的。 --------------------编程问答-------------------- userService 注入有問題 --------------------编程问答-------------------- 是不是少了<property name="target">
--------------------编程问答-------------------- 看下是不是这个原因, struts里的配置文件 要引用spring里面的注入的action
<action name="xxxAction" method="xxx" class="userCheckAction">
<result name="success">index.jsp</result>
<result name="error">error.jsp</result>
</action> --------------------编程问答-------------------- 你的spring配置文件中的配置文件写错了,ref的写法是 <ref="userService"/>而不是你写的<ref bean="userDao"/>,你可以参考一下。 --------------------编程问答-------------------- List本来只是个声明,如果返货的list为空,那么调用isempty()方法就会报空指针错误 --------------------编程问答-------------------- 我帮你调我帮你调我帮你调 --------------------编程问答-------------------- 即使你注入成功,你的service 22行 也会有问题。
List<User> userList = userDao.findByUsername(username);
return userList.get(0).getUpsw().equals(password);
如果username不存在呢, 你get(0) 肯定空指针了。 --------------------编程问答--------------------
的确是没注入成功,但是哪里有问题呢? --------------------编程问答-------------------- <bean id="userCheckAction" class="com.play.action.UserCheck">
<property name="userService">
<ref bean="userService"/>
</property>
</bean>
改成下面试试:
<bean id="userCheckAction" class="com.play.action.UserCheck">
<property name="userService" ref="userService"></property>
</bean> --------------------编程问答-------------------- 除 --------------------编程问答-------------------- http://blog.csdn.net/peng_hao1988/article/details/7417634
里面有示例代码,供参考。 --------------------编程问答-------------------- 没有取到username吧
补充:Java , Java EE