当前位置: 代码迷 >> J2EE >> struts2报错:com.opensymphony.xwork2.util.logging.jdk.JdkLogger warn解决方案
  详细解决方案

struts2报错:com.opensymphony.xwork2.util.logging.jdk.JdkLogger warn解决方案

热度:780   发布时间:2016-04-21 22:00:40.0
struts2报错:com.opensymphony.xwork2.util.logging.jdk.JdkLogger warn
1,update.jsp
<%@page language="java" pageEncoding="GB2312"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<html>
<head>
<title>修改用户信息</title>
</head>
<body>
<form action="updateUser" method="post">
<div><input type="submit" value="修改" /></div>
</form>
</body>
</html>
2,
struts2
部分配置
  <package name="user" extends="struts-default">

<action name="login" class="com.hy.user.action.LoginAction" method="login">
<result name="success">/user/index.jsp</result>
<result name="input">/login.jsp</result>
</action>
<action name="userExit" class="com.hy.user.action.LoginAction" method="exit">
<result name="success">/login.jsp</result>
<result name="input">/index.jsp</result>
</action>
<action name="registUser" class="com.hy.user.action.UserOperateAction" method="regist">
<result name="success">/user/index.jsp</result>
<result name="input">/registUser.jsp</result>
</action>
<action name="updateUser" class="com.hy.user.action.UserOperateAction" method="updateUser">
<result name="success">/user/showUser.jsp</result>
<result name="input">/user/updateUser.jsp</result>
</action>
</package>
3,处理的action---->com.hy.user.action.UserOperateAction的updateUser()方法。
//修改用户信息
public String updateUser(){
System.out.println("修改用户信息----->update()");
UserDAO userDAO=new UserDAO();
if(userDAO.updateUser(user)){
System.out.println("修改成功");
//修改成功重新设置session,判断是管理员还是用户修改
User sessionUser=(User)ActionContext.getContext().getSession().get("user");
if(sessionUser!=null){
if(user.getUserName().equals(sessionUser.getUserName())){
user=userDAO.findUserInfo(user.getUserName());
ActionContext.getContext().getSession().put("user", user);
}else{
users=userDAO.findAllUser(new User());
}
}else{
users=userDAO.findAllUser(new User());
}
return SUCCESS;
}else{
System.out.println("修改失败");
return INPUT;
}
}

问题:tomcat后台,没执行update()方法。?
只输出以下,报错信息:
...
2011-5-30 13:25:33 org.apache.coyote.http11.Http11Protocol start
信息: Starting Coyote HTTP/1.1 on http-8888
2011-5-30 13:25:33 org.apache.jk.common.ChannelSocket init
信息: JK: ajp13 listening on /0.0.0.0:8009
2011-5-30 13:25:33 org.apache.jk.server.JkMain start
信息: Jk running ID=0 time=0/47  config=null
2011-5-30 13:25:34 org.apache.catalina.startup.Catalina start
信息: Server startup in 7349 ms
2011-5-30 13:27:26 com.opensymphony.xwork2.util.logging.jdk.JdkLogger warn
警告: Got result of null when trying to get Boolean.


各位高手,这是什么原因,感觉代码没错。如何解决。

------解决方案--------------------
if(userDAO.updateUser(user)){

看看这句话 判断这个值是boolean  还是 null 
------解决方案--------------------
userDAO.updateUser(user)这个方法是没有返回值的啊,我看你在if里面还在将它作为判断条件:
public void updateUser(User user){
this.getHibernateTemeplate.update(user);
}
------解决方案--------------------
com.hy.user.action.UserOperateAction

public String updateUser(){
System.out.println("修改用户信息----->update()");
UserDAO userDAO=new UserDAO();
System.out.println("Debug updateUser is --->" + userDAO.updateUser(user));
//try if(userDAO.updateUser(user)!=null)
if(userDAO.updateUser(user)){
System.out.println("修改成功");
//修改成功重新设置session,判断是管理员还是用户修改
User sessionUser=(User)ActionContext.getContext().getSession().get("user");
if(sessionUser!=null){
if(user.getUserName().equals(sessionUser.getUserName())){
user=userDAO.findUserInfo(user.getUserName());
ActionContext.getContext().getSession().put("user", user);
}else{
users=userDAO.findAllUser(new User());
}
}else{
users=userDAO.findAllUser(new User());
}
return SUCCESS;
}else{
System.out.println("修改失败");
return INPUT;
}
}


------解决方案--------------------
你的uptateUser里面的user是哪来的??if里面的updateUser怎么会有参数了??那个带参数的updateUser方法又是怎样的??
  相关解决方案