java.lang.NullPointerException问题

fengguang0051 2011-05-22 02:00:48
MyEclipse控制台异常代码:
Servlet.service() for servlet [default] in context with path [/T1] threw exception [java.lang.NullPointerException] with root cause
java.lang.NullPointerException
at action.UsersAction.login(UsersAction.java:59)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)

Tomcate报的异常:
exception :
javax.servlet.ServletException: java.lang.NullPointerException
org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:515)
org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:419)

root cause
java.lang.NullPointerException
action.UsersAction.login(UsersAction.java:59)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
java.lang.reflect.Method.invoke(Method.java:597)

源程序:
jsp:

<s:form action="login" theme="simple" >
<tr><s:textfield label="用户名" name="username"/></tr>
<tr><s:password label="密码" name="password"/></tr>
<tr><s:submit value="登录"/></tr>
</s:form>

action:
public String login() {
int i = ud.checkLogin(username, password);
if( i > 0){

user = ud.getUserName(i);
HttpServletRequest request = ServletActionContext.getRequest();
HttpSession session = request.getSession();
session.setAttribute("loginUser", user);
return "Loginsuccess";
}

return "loginError";
}


Struts.xml:

<struts>
<constant name="struts.i18n.encoding" value="utf8"/>
<package name="default" extends="struts-default">
<action name="login" class="action.UsersAction" method="login">
<result name="Loginsuccess">/index.jsp</result>
<result name="Loginerror">/login.jsp</result>
</action>
</package>
</struts>
...全文
435 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
wl_ldy 2011-05-22
  • 打赏
  • 举报
回复
对public String login() 这个方法进行单步调试看看问题原因。。。
lizhongyi188 2011-05-22
  • 打赏
  • 举报
回复
at action.UsersAction.login(UsersAction.java:59) 这里很明显了,可能是没有获得值
jornye 2011-05-22
  • 打赏
  • 举报
回复
JAVA的代码怎么都是这么一大串,看的头昏·
gplxbxc 2011-05-22
  • 打赏
  • 举报
回复
int i = ud.checkLogin(username, password);
在这句前,加上
System.out.println("username: " + username);
System.out.println("password: " + password);

还可以单步调试看错误
tom_66 2011-05-22
  • 打赏
  • 举报
回复
action.UsersAction.login(UsersAction.java:59)
找到UserAction的第59行,空指针就在那里
fengguang0051 2011-05-22
  • 打赏
  • 举报
回复
多谢各位了,我发现了是我调用UserDao这个类的时候 没有新建一个对象!

67,538

社区成员

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

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