我有程序一运行就出现这样的错误:严重: Servlet.service() for servlet action threw exception
java.lang.NullPointerException
at org.tie.struts.action.InsertAction.execute(InsertAction.java:38)
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:419)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194)
at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
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:175)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
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:263)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:619)
相关代码:applicationcontext.xml:
<?xml version="1.0" encoding="UTF-8"?>
<beans
xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">
<bean name="/insert" class="org.tie.struts.action.InsertAction"
abstract="false" lazy-init="default" autowire="default"
dependency-check="default">
</bean>
<bean id="sessionfactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="configLocation"
value="classpath:hibernate.cfg.xml">
</property>
</bean>
<bean id="LoginDAO" class="dao.LoginDAO">
<property name="sessionFactory">
<ref bean="sessionfactory" />
</property>
</bean>
<bean id="loginDAOservice" class="service.LoginDAOservice">
<property name="dao">
<ref local="LoginDAO"/>
</property>
</bean>
<bean id="service" class="org.tie.struts.action.InsertAction">
<property name="service">
<ref local="loginDAOservice"/>
</property>
</bean>
</beans>
Isertacton:/*
* Generated by MyEclipse Struts
* Template path: templates/java/JavaClass.vtl
*/
package org.tie.struts.action;import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.tie.struts.form.InsertForm;import dao.Login;import service.Ilogindaoservice;
public class InsertAction extends Action {
private Ilogindaoservice service;
public Ilogindaoservice getService() {
return service;
} public void setService(Ilogindaoservice service) {
this.service = service;
}
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
InsertForm insertForm = (InsertForm) form;
String username=insertForm.getDdd();
String password=insertForm.getSss();
Login users=new Login(username,password);
service.save(users);
if (service!=null)
{
request.setAttribute("users",users);
}
return mapping.findForward("su");
}
}loginDAOservice:package service;import java.util.List;
import dao.IloginDAO;
import dao.Login;
import dao.LoginDAO;public class LoginDAOservice implements Ilogindaoservice{
private IloginDAO dao; public IloginDAO getDao() {
return dao;
} public void setDao(IloginDAO dao) {
this.dao = dao;
} public void delete(Login users) {
dao.delete(users);
} public Login getid(Integer id) { Login user= dao.findById(id);
return user ;
} public void save(Login users) {
dao.save(users);
} public List select() {
List userlist=dao.findAll();
return userlist;
} public void update(Login users) {
dao.save(users);
}}
请各位多多帮忙,谢谢了,如果分不够立刻加!小弟绝不吝啬。
java.lang.NullPointerException
at org.tie.struts.action.InsertAction.execute(InsertAction.java:38)
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:419)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194)
at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
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:175)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
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:263)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:619)
相关代码:applicationcontext.xml:
<?xml version="1.0" encoding="UTF-8"?>
<beans
xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">
<bean name="/insert" class="org.tie.struts.action.InsertAction"
abstract="false" lazy-init="default" autowire="default"
dependency-check="default">
</bean>
<bean id="sessionfactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="configLocation"
value="classpath:hibernate.cfg.xml">
</property>
</bean>
<bean id="LoginDAO" class="dao.LoginDAO">
<property name="sessionFactory">
<ref bean="sessionfactory" />
</property>
</bean>
<bean id="loginDAOservice" class="service.LoginDAOservice">
<property name="dao">
<ref local="LoginDAO"/>
</property>
</bean>
<bean id="service" class="org.tie.struts.action.InsertAction">
<property name="service">
<ref local="loginDAOservice"/>
</property>
</bean>
</beans>
Isertacton:/*
* Generated by MyEclipse Struts
* Template path: templates/java/JavaClass.vtl
*/
package org.tie.struts.action;import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.tie.struts.form.InsertForm;import dao.Login;import service.Ilogindaoservice;
public class InsertAction extends Action {
private Ilogindaoservice service;
public Ilogindaoservice getService() {
return service;
} public void setService(Ilogindaoservice service) {
this.service = service;
}
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
InsertForm insertForm = (InsertForm) form;
String username=insertForm.getDdd();
String password=insertForm.getSss();
Login users=new Login(username,password);
service.save(users);
if (service!=null)
{
request.setAttribute("users",users);
}
return mapping.findForward("su");
}
}loginDAOservice:package service;import java.util.List;
import dao.IloginDAO;
import dao.Login;
import dao.LoginDAO;public class LoginDAOservice implements Ilogindaoservice{
private IloginDAO dao; public IloginDAO getDao() {
return dao;
} public void setDao(IloginDAO dao) {
this.dao = dao;
} public void delete(Login users) {
dao.delete(users);
} public Login getid(Integer id) { Login user= dao.findById(id);
return user ;
} public void save(Login users) {
dao.save(users);
} public List select() {
List userlist=dao.findAll();
return userlist;
} public void update(Login users) {
dao.save(users);
}}
请各位多多帮忙,谢谢了,如果分不够立刻加!小弟绝不吝啬。
楼主【xdjzxy】截止到2008-07-30 14:39:21的历史汇总数据(不包括此帖):
发帖的总数量:23 发帖的总分数:653 每贴平均分数:28
回帖的总数量:15 得分贴总数量:1 回帖的得分率:6%
结贴的总数量:20 结贴的总分数:483
无满意结贴数:7 无满意结贴分:310
未结的帖子数:3 未结的总分数:170
结贴的百分比:86.96 % 结分的百分比:73.97 %
无满意结贴率:35.00 % 无满意结分率:64.18 %
楼主加油
取消马甲机器人,请点这里:http://www.java2000.net/mycsdn/robotStop.jsp?usern=xdjzxy
at org.tie.struts.action.InsertAction.execute(InsertAction.java:38)
看下InsertAction.java:38这里出现空指针
public void setService(Ilogindaoservice service) {
this.service = service;
}应该就是这里没有获得值,但不知道是什么原因,请各位多多帮忙,让大家费心了。
private Ilogindaoservice loginDAOservice;换成: private Ilogindaoservice loginDAOservice;重新生成get/set
<ref local="loginDAOservice"/>
</property>
放入到
<bean name="/insert" class="org.tie.struts.action.InsertAction"
abstract="false" lazy-init="default" autowire="default"
dependency-check="default">
</bean>
之后“service”不为空了,而且程序也顺利的跳转了,但是打开数据库的时候,里面什么也没有,一片空白,只有把tomcat关上之后,才能正常打开,而且数据也没有写进去,不知道是为什么,小弟,先谢谢大伙了!