简体   繁体   English

java.lang.NoClassDefFoundError:无法初始化类DataLayer.HibernateAdapter

[英]java.lang.NoClassDefFoundError: Could not initialize class DataLayer.HibernateAdapter

I have modified my Java project(Web service) into Dynamic web module. 我已经将Java项目(Web服务)修改为Dynamic Web模块。 I'm using Tomcat 7.0.59 as server. 我正在使用Tomcat 7.0.59作为服务器。 While starting server it is getting started without any issues. 启动服务器时,它开始运行没有任何问题。 But once if I tried to access the Web service method then I will end up with the error saying that -" Could not initialize class DataLayer.HibernateAdapter java.lang.NoClassDefFoundError: Could not initialize class DataLayer.HibernateAdapter ". 但是,一旦尝试访问Web服务方法,我将得到以下错误:-“ 无法初始化类DataLayer.HibernateAdapter java.lang.NoClassDefFoundError:无法初始化类DataLayer.HibernateAdapter ”。 Anyone please help me than just marking it a "Duplicate". 除了将其标记为“重复”以外,任何人都请帮助我。 If code has to be modified, please provide me detail steps. 如果必须修改代码,请提供详细步骤。 Thanks!! 谢谢!!

Console Log: 控制台日志:

Mar 10, 2015 2:09:07 PM com.sun.xml.ws.server.sei.EndpointMethodHandler invoke
SEVERE: Could not initialize class DataLayer.HibernateAdapter
java.lang.NoClassDefFoundError: Could not initialize class DataLayer.HibernateAdapter
    at DataLayer.DatabaseContext.<init>(DatabaseContext.java:12)
    at DataLayer.ConsumerDetails.getConsumerdetails(ConsumerDetail.java:84)
    at ManageLayer.Authenticate(AuthenticationManager.java:50)
    at ManageLayer.Console.GetProductsList(Console.java:484)
    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 com.sun.xml.ws.api.server.InstanceResolver$1.invoke(InstanceResolver.java:246)
    at com.sun.xml.ws.server.InvokerTube$2.invoke(InvokerTube.java:146)

DatabaseContext.java : DatabaseContext.java:

public class DatabaseContext
{
    private final Session session;

    public DatabaseContext() {
        this.session = HibernateAdapter.getSessionFactory().openSession();
    }

    public Session delegate() {
        return session;
    }

    public void close() {
        session.flush();
        session.close();
    }
}

class HibernateAdapter
   {
    private static final SessionFactory sessionFactory = buildSessionFactory();

    private static SessionFactory buildSessionFactory() {
        try 
        {

            return new AnnotationConfiguration()
            .addAnnotatedClass(Consumer.class)
            .addAnnotatedClass(Product.class)
            .addAnnotatedClass(PriceTag.class)
            .addAnnotatedClass(Barcode.class)
            .configure().buildSessionFactory();
        } 
        catch (Throwable e) 
        {
            System.err.println("Exception while creating Initial SessionFactory" + e);
            throw new ExceptionInInitializerError(e);
        }
    }

    public static SessionFactory getSessionFactory() 
    {
        return sessionFactory;
    }

    public static void shutdown() {
        getSessionFactory().close();
    }
}

A NoClassDefFoundError usually indicates that your class path is not correct. NoClassDefFoundError通常指示您的类路径不正确。 Check if you have the right Hibernate libraries in your class path. 检查您的类路径中是否具有正确的Hibernate库。 eg in the project settings, if you are using Eclipse. 例如,在项目设置中(如果使用Eclipse)。 Right now, you are not including the DataLayer.HibernateAdapter class correctly, so Tomcat cannot find it. 现在,您没有正确包括DataLayer.HibernateAdapter类,因此Tomcat无法找到它。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 java.lang.NoClassDefFoundError:无法初始化类 - java.lang.NoClassDefFoundError: Could not initialize class java.lang.NoClassDefFoundError:无法初始化类 - java.lang.NoClassDefFoundError: Could not initialize class java.lang.NoClassDefFoundError:无法初始化类x - java.lang.NoClassDefFoundError: Could not initialize class x Tomcat java.lang.NoClassDefFoundError:无法初始化类 - Tomcat java.lang.NoClassDefFoundError: Could not initialize class ECLIPSE:java.lang.NoClassDefFoundError:无法初始化类**** - ECLIPSE: java.lang.NoClassDefFoundError: Could not initialize class **** java.lang.NoClassDefFoundError:无法初始化类business.HibernateUtil - java.lang.NoClassDefFoundError: Could not initialize class business.HibernateUtil Spring:java.lang.NoClassDefFoundError:无法初始化类 - Spring: java.lang.NoClassDefFoundError: Could not initialize class java.lang.NoClassDefFoundError:无法初始化类 XXX - java.lang.NoClassDefFoundError: Could not initialize class XXX java.lang.NoClassDefFoundError: 无法初始化类 | 静态块 - java.lang.NoClassDefFoundError: Could not initialize class | static block java.lang.NoClassDefFoundError: 无法初始化 class - Kotlin Object - java.lang.NoClassDefFoundError: Could not initialize class - Kotlin Object
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM