spring autowired注解失败 空指针异常

q455295165 2014-08-19 05:08:04
在 applicationContext.xml中

<context:component-scan base-package="com.xiaohao">
<context:exclude-filter type="annotation"
expression="org.springframework.stereotype.Controller" />
</context:component-scan>

在loginAction中

@Autowired
private UserService userService;
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
LoginForm loginForm = (LoginForm) form;// TODO Auto-generated method stub
String username = loginForm.getUsernmae();
String password = loginForm.getPassword();
String val = userService.user_login(username, password);
System.out.println(val);
return null;
}

然后 String val = userService.user_login(username, password);这一句空指针异常

UserService.java

@Service(value="userService")
public class UserServiceImp implements UserService{
@Autowired
private UserDao userdao;
public String user_login(String username, String password) {
// TODO Auto-generated method stub
System.out.println("======"+username);
return userdao.user_login(username, password);
}

}

UserDao

@Repository(value = "UserDao")
public class UserDaoImp implements UserDao{
public String user_login(String username, String password) {
// TODO Auto-generated method stub
if(username.equals("xiaohao")||password.equals("123")){
return "success";
}
else return "failed";
}

}


请问下错误原因。
...全文
5292 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
stephen9527 2014-08-20
  • 打赏
  • 举报
回复
String val = userService.user_login(username, password);这一句空指针异常那应该就是userService没有注入进去,就为空然后调用user_login方法就报空指针了; 在你的配置文件里面下面这个配置有问题,exclude-filter 表示不会去扫描Controller,所以你这里userService就注入不进去! <context:component-scan base-package="com.xiaohao"> <context:exclude-filter type="annotation" expression="org.springframework.stereotype.Controller" /> </context:component-scan>
  • 打赏
  • 举报
回复
你是部署在weblogic下面么? 如果是,你看看你web.xml的 classpath配置,把*号的去掉,weblogic不支持这个
q455295165 2014-08-19
  • 打赏
  • 举报
回复
引用 3 楼 shijing266 的回复:
[quote=引用 2 楼 q455295165 的回复:] [quote=引用 1 楼 shijing266 的回复:] 最近经常看到这种错.. 楼主是发布到weblogic上的么? 如果不是,参照这个地址http://zhongzhihua.iteye.com/blog/613305
我看了下这个,貌似不出这个问题,我这3个条件都满足。[/quote 那你有没有配置spring自动扫描包什么的。仔细看看包的路径[/quote] 是这个吗 <context:component-scan base-package="com.xiaohao"> <context:exclude-filter type="annotation" expression="org.springframework.stereotype.Controller" /> </context:component-scan> 在applicationContext.xml中配置了
  • 打赏
  • 举报
回复
引用 2 楼 q455295165 的回复:
[quote=引用 1 楼 shijing266 的回复:] 最近经常看到这种错.. 楼主是发布到weblogic上的么? 如果不是,参照这个地址http://zhongzhihua.iteye.com/blog/613305
我看了下这个,貌似不出这个问题,我这3个条件都满足。[/quote 那你有没有配置spring自动扫描包什么的。仔细看看包的路径
q455295165 2014-08-19
  • 打赏
  • 举报
回复
引用 1 楼 shijing266 的回复:
最近经常看到这种错.. 楼主是发布到weblogic上的么? 如果不是,参照这个地址http://zhongzhihua.iteye.com/blog/613305
我看了下这个,貌似不出这个问题,我这3个条件都满足。
  • 打赏
  • 举报
回复
最近经常看到这种错.. 楼主是发布到weblogic上的么? 如果不是,参照这个地址http://zhongzhihua.iteye.com/blog/613305

67,550

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧