Java论坛网»Java技术»struts+hibernate的问题,请大家指教!
struts+hibernate的问题,请大家指教!
问?:
调试了很久都调不过去,一直在报这个错误!
信息: Reloading this Context has started
2006-10-31 16:52:00 org.apache.catalina.core.StandardWrapperValve invoke
严重: Servlet.service() for servlet action threw exception
java.lang.NoClassDefFoundError: org/hibernate/Session
at struts.action.AddAction.execute(AddAction.java:17)
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:709)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Thread.java:595)
2006-10-31 16:55:12 org.apache.catalina.core.StandardContext reload
信息: Reloading this Context has started
2006-10-31 17:03:40 org.apache.catalina.core.StandardWrapperValve invoke
严重: Servlet.service() for servlet action threw exception
java.lang.NoClassDefFoundError: org/hibernate/Session
at struts.action.AddAction.execute(AddAction.java:17)
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:709)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Thread.java:595)
信息: Reloading this Context has started
2006-10-31 16:52:00 org.apache.catalina.core.StandardWrapperValve invoke
严重: Servlet.service() for servlet action threw exception
java.lang.NoClassDefFoundError: org/hibernate/Session
at struts.action.AddAction.execute(AddAction.java:17)
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:709)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Thread.java:595)
2006-10-31 16:55:12 org.apache.catalina.core.StandardContext reload
信息: Reloading this Context has started
2006-10-31 17:03:40 org.apache.catalina.core.StandardWrapperValve invoke
严重: Servlet.service() for servlet action threw exception
java.lang.NoClassDefFoundError: org/hibernate/Session
at struts.action.AddAction.execute(AddAction.java:17)
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:709)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Thread.java:595)
答!: 1:
我的Action 是这样写的!
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
AddForm addForm = (AddForm) form;
Test test=new Test();//第17行
test.add(addForm);
return null;
}
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
AddForm addForm = (AddForm) form;
Test test=new Test();//第17行
test.add(addForm);
return null;
}
答!: 2:
Test类是这样写的,能正确执行!
public class Test {
public Test(){
System.out.println("???????????????????????");
}
public void add(ActionForm form){
System.out.println("begin Test Class..........");
AddForm addForm=(AddForm)form;
String name=addForm.getName();
String sex=addForm.getSex();
String age=addForm.getAge();
String classid=addForm.getClassid();
Team team=new Team();
team.setClassid(new Integer(classid));
SessionFactory sf =new Configuration().configure().buildSessionFactory();
Session session = sf.openSession();
Transaction tx = session.beginTransaction();
Student stu = new Student();
stu.setName(name);
stu.setSex(sex);
stu.setAge(age);
stu.setTeam(team);
session.save(stu);
tx.commit();
session.close();
}
public void add(){
System.out.println("add() begin Test Class..........");
String name="dd";
String sex="w";
String age="12";
String classid="101";
Team team=new Team();
team.setClassid(new Integer(classid));
SessionFactory sf =new Configuration().configure().buildSessionFactory();
Session session = sf.openSession();
Transaction tx = session.beginTransaction();
Student stu = new Student();
stu.setName(name);
stu.setSex(sex);
stu.setAge(age);
stu.setTeam(team);
session.save(stu);
tx.commit();
session.close();
}
public static void main(String[] args){
new Test().add();
}
}
public class Test {
public Test(){
System.out.println("???????????????????????");
}
public void add(ActionForm form){
System.out.println("begin Test Class..........");
AddForm addForm=(AddForm)form;
String name=addForm.getName();
String sex=addForm.getSex();
String age=addForm.getAge();
String classid=addForm.getClassid();
Team team=new Team();
team.setClassid(new Integer(classid));
SessionFactory sf =new Configuration().configure().buildSessionFactory();
Session session = sf.openSession();
Transaction tx = session.beginTransaction();
Student stu = new Student();
stu.setName(name);
stu.setSex(sex);
stu.setAge(age);
stu.setTeam(team);
session.save(stu);
tx.commit();
session.close();
}
public void add(){
System.out.println("add() begin Test Class..........");
String name="dd";
String sex="w";
String age="12";
String classid="101";
Team team=new Team();
team.setClassid(new Integer(classid));
SessionFactory sf =new Configuration().configure().buildSessionFactory();
Session session = sf.openSession();
Transaction tx = session.beginTransaction();
Student stu = new Student();
stu.setName(name);
stu.setSex(sex);
stu.setAge(age);
stu.setTeam(team);
session.save(stu);
tx.commit();
session.close();
}
public static void main(String[] args){
new Test().add();
}
}
答!: 3:
请大家指点一下!
相关JAVA教程:
小学生的提问
大家有没有感觉到WEB开发配置文件很烦人?现在还有人做胖客户端程序吗?
实际项目中(Jsf+Spring+Hibernate)的多层调用时.xml文件的配置问题,对依赖注入的困惑
新人初学jsp,使用Fileupload文件上传遇到难题,在线等
急:怎么用javascript判断网址的合法性?
Tomcat 如何配置容器驗証
熟悉Proxool连接池的朋友进来下!有个低级问题!
哪位大虾来看看啊,EJB中奇怪的问题,关于Timestamp 的
请高手介绍几本hibernet相关的书下栽
你们用tomcat开发吗?
关于Swing相当有难度的问题??
spring 加載問題?