当前位置:编程学习 > JAVA >>

求助贴,急!!!

今天整合Strut1.3写了个小应用,运行时报下列错:
java.lang.NullPointerException
at com.gis.action.UserAction.addUser(UserAction.java:45)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:269)
at org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:170)
at org.apache.struts.chain.commands.servlet.ExecuteAction.execute(ExecuteAction.java:58)
at org.apache.struts.chain.commands.AbstractExecuteAction.execute(AbstractExecuteAction.java:67)
at org.apache.struts.chain.commands.ActionCommandBase.execute(ActionCommandBase.java:51)
at org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:191)
at org.apache.commons.chain.generic.LookupCommand.execute(LookupCommand.java:305)
at org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:191)
at org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:283)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:864)
at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:579)
at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1665)
at java.lang.Thread.run(Unknown Source)

下面是我UserAction的代码:
public class UserAction extends DispatchAction
{
private UserService service;

public ActionForward addUser(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) 
throws Exception
{
User user = new User();

user.setUsername(request.getParameter("username"));
user.setPassword(request.getParameter("password"));
user.setGender(request.getParameter("gender"));
user.setUnitcode(request.getParameter("unitcode"));
user.setMemo(request.getParameter("memo"));

System.out.println(request.getParameter("username"));
System.out.println(request.getParameter("password"));
System.out.println(request.getParameter("gender"));
System.out.println(request.getParameter("memo"));
System.out.println(request.getParameter("unitcode"));

service.addUser(user);

PrintWriter out = response.getWriter();

out.println("{success:true}");

out.flush();

out.close();
return null;
}
}
请问各位大神,这可能是什么原因。
其中service层与dao层我都只是实现简单的添加功能。
求助呀,急!!! --------------------编程问答-------------------- private UserService service;
这个没有赋值,如果是用spring注入的话检查一下spring的配置 --------------------编程问答-------------------- 看不懂 --------------------编程问答-------------------- java.lang.NullPointerException
at com.gis.action.UserAction.addUser(UserAction.java:45)
空指针啊 
addUser(user) 这个user是空的吧! --------------------编程问答-------------------- 45行要是这行(service.addUser(user);)的话,service是空,看一下配置文件吧 --------------------编程问答-------------------- service可能没有注入进来,检查spring配置 --------------------编程问答-------------------- at com.gis.action.UserAction.addUser(UserAction.java:45)
是不是你service没有注入进来  添加service的set方法
--------------------编程问答-------------------- java.lang.NullPointerException
说明UserService没有注入成功,首先你要检查下你的配置问题,其次加上set方法,spring是从过set方法或构造方法注入的。
  --------------------编程问答-------------------- 空指针

private UserService service;
这个没有赋值,如果是用spring注入的话检查一下spring的配置

祝楼主好运 --------------------编程问答-------------------- private UserService service估计是这的问题,LZ你那几句打印语句有值没? --------------------编程问答-------------------- UserAction.addUser(UserAction.java:45)
    45行,是不是添加的时候有哪一个属性为空这样试试看就知道哪个为空了

       

System.out.println("用户名"+request.getParameter("username"));
System.out.println("密码"+request.getParameter("password"));
System.out.println("性别"+request.getParameter("gender"));
System.out.println("memo="+request.getParameter("memo"));
System.out.println("unitcode="+request.getParameter("unitcode"));




        User user = new User();

user.setUsername(request.getParameter("username"));
user.setPassword(request.getParameter("password"));
user.setGender(request.getParameter("gender"));
user.setUnitcode(request.getParameter("unitcode"));
user.setMemo(request.getParameter("memo"));


      
--------------------编程问答-------------------- 空指针啊 --------------------编程问答-------------------- 报错信息已经很明显了,只要你懂java基础,我相信你能搞定。

给你的建议:

没搞清楚不要动不动就分层,动不动就用框架。

为框架而框架,为分层而分层,不如不分层,不如不用框架。你个简单的增加改查,用这个框架那个框架的,有这些搭建环境的时间,功能早完成了。如果你只是想学习的话,建议你找本书,把里面的例子都敲一遍再说。
补充:Java ,  Web 开发
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,