首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java Web开发 >

The server encountered an internal error () that prevented it from fulfilling th

2013-09-11 
hibernate 报错代码如下:第63行 (LoginDAO loginDAO new LoginDAO())Login login new Login()login.

hibernate 报错
代码如下:第63行 (LoginDAO loginDAO = new LoginDAO();)
  Login login = new Login();
login.setUsername("ad");
login.setPassword("12");
LoginDAO loginDAO = new LoginDAO();
Transaction tra = loginDAO.getSession().beginTransaction();
loginDAO.attachDirty(login);
tra.commit();
loginDAO.getSession().close();
return null;
如下报错:

type Exception report

message 

description The server encountered an internal error () that prevented it from fulfilling this request.

exception 

javax.servlet.ServletException: Servlet execution threw an exception


root cause 

java.lang.NoClassDefFoundError: org/hibernate/criterion/Criterion
com.yourcompany.struts.action.LoginAction.execute(LoginAction.java:63)
org.apache.struts.chain.commands.servlet.ExecuteAction.execute(ExecuteAction.java:58)
org.apache.struts.chain.commands.AbstractExecuteAction.execute(AbstractExecuteAction.java:67)
org.apache.struts.chain.commands.ActionCommandBase.execute(ActionCommandBase.java:51)
org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:190)
org.apache.commons.chain.generic.LookupCommand.execute(LookupCommand.java:304)
org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:190)
org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:283)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:449)
javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)


root cause 

java.lang.ClassNotFoundException: org.hibernate.criterion.Criterion
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1358)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1204)
java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
com.yourcompany.struts.action.LoginAction.execute(LoginAction.java:63)
org.apache.struts.chain.commands.servlet.ExecuteAction.execute(ExecuteAction.java:58)
org.apache.struts.chain.commands.AbstractExecuteAction.execute(AbstractExecuteAction.java:67)
org.apache.struts.chain.commands.ActionCommandBase.execute(ActionCommandBase.java:51)
org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:190)
org.apache.commons.chain.generic.LookupCommand.execute(LookupCommand.java:304)
org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:190)
org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:283)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:449)
javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)


note The full stack trace of the root cause is available in the Apache Tomcat/6.0.10 logs.


------解决方案--------------------
LoginDAO loginDAO = new LoginDAO();中的LoginDAO 是接口还是类?如果是接口,肯定不能new出来了..不然的话我想出来这里怎么会出错..
------解决方案--------------------
java.lang.ClassNotFoundException: org.hibernate.criterion.Criterion

没找到类 不是缺jar包就是有冲突
------解决方案--------------------
LoginDAO loginDAO = new LoginDAO();

这个不能直接new 接口的。帅哥。你要动态绑定实现它的实体类。而不是new 这个借口

应该是这样吧:LoginDAO loginDAO = new LoginDAOImpl();
------解决方案--------------------
org/hibernate/criterion/Criterion

没有这个类,少jar包了吧
------解决方案--------------------


java.lang.NoClassDefFoundError: org/hibernate/criterion/Criterion
少jar包

------解决方案--------------------

从 最顶层抛出的description The server encountered an internal error () that prevented it from fulfilling this request.异常是由底层

java.lang.NoClassDefFoundError: org/hibernate/criterion/Criterion异常造成的,把相关的jar包补齐即可解决;

同理,description The server encountered an internal error () that prevented it from fulfilling this request.异常必须要解决底层异常才可解决,

底层异常千万种,要视具体情况而定;

热点排行