java.lang.ExceptionInInitializerError(HIBERNATE问题)

第一次运行时候是这个错误!

exception

javax.servlet.ServletException: Servlet execution threw an exception

root cause

java.lang.ExceptionInInitializerError
        classmate.HibernateUtil.<clinit>(HibernateUtil.java:35)
        classmate.DbOperate.getUser(DbOperate.java:25)
        classmate.LoginAction.execute(LoginAction.java:27)
        org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:419)
        org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224)
        org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194)
        org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
        javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
        javax.servlet.http.HttpServlet.service(HttpServlet.java:802





程序中的对应语句是THROW语句 throw new ExceptionInInitializerError(ex);




具体如下:

   try {
            
            
                        
   sessionFactory=new   Configuration().configure().buildSessionFactory();

         
          } catch (Throwable ex) {
            ex.printStackTrace();// TODO: handle exception
            throw new ExceptionInInitializerError(ex);
        }


第二次运行时候是这个错误!

上面那个错误只出现一次!
然后一直是出现这个错误!


错误提示:Root cause

java.lang.NoClassDefFoundError

程序中对应的这句:


    Session session=HibernateUtil.currentSession();



解决方法:

把HIBERNATE的JAR10个 需要的包

COPY到工程的LIB目录下
(如果你在JAVA构建路径,通过添加外部JAR包,添加了那几个必须的包,在此还要把他们COPY到工   程的LIB目录下!)


android. java.lang.ExceptionInInitializerError是一个Java运行时异常,表示类初始化时发生的错误。 当一个类被加载并准备进行初始化工作时,如果其中的静态代码块或静态成员变量的初始化过程中发生异常,就会抛出ExceptionInInitializerError异常。这个异常会导致类的初始化失败,从而使得该类无法使用。 这个异常通常有两种情况会发生:静态代码块或静态成员变量的初始化过程中出现了异常,或者静态代码块或静态成员变量引用的其他类的初始化过程中出现了异常。 在开发Android应用时,常见的ExceptionInInitializerError异常可能发生在以下情况下: 1. 在静态代码块中引用的其他类未能正确进行初始化,例如在使用数据库时,未能正确加载数据库驱动。 2. 静态成员变量的初始化过程中发生了异常,例如在类的静态成员变量的初始化方法中访问了不存在的资源文件。 当出现ExceptionInInitializerError异常时,应该仔细查看异常的详细信息,以确定具体的错误原因。在解决该异常时,一般需要检查静态代码块的内容、静态成员变量的初始化方法以及相关依赖的类的初始化过程是否正确。可以通过调查相关代码、日志信息和堆栈跟踪来定位并解决问题。 总之,android. java.lang.ExceptionInInitializerError是一个表示类初始化错误的异常,通常发生在静态代码块或静态成员变量的初始化过程中。在出现该异常时,需要仔细分析异常的原因,并进行相应的修复。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值