تهيئة السبات مع مشكلة GWT
سؤال
أحاول استخدام السبات مع GWT (باستخدام Gilead) لكنني حصلت على الخطأ التالي
[WARN] /hibernate/greet
java.lang.NoClassDefFoundError: Could not initialize class net.jaffa.hibernate.server.NewHibernateUtil
at net.jaffa.hibernate.server.GreetingServiceImpl.<init>(GreetingServiceImpl.java:26)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at java.lang.Class.newInstance0(Class.java:355)
at java.lang.Class.newInstance(Class.java:308)
at org.mortbay.jetty.servlet.Holder.newInstance(Holder.java:153)
at org.mortbay.jetty.servlet.ServletHolder.getServlet(ServletHolder.java:339)
at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:463)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:362)
at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:729)
at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
at org.mortbay.jetty.handler.RequestLogHandler.handle(RequestLogHandler.java:49)
at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
at org.mortbay.jetty.Server.handle(Server.java:324)
at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:505)
at org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:843)
at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:647)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)
at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380)
at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:395)
at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:488)
[ERROR] 500 - POST /hibernate/greet (127.0.0.1) 3632 bytes
Request headers
Host: 127.0.0.1:8888
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 115
Connection: keep-alive
Referer: http://127.0.0.1:8888/hibernate/hosted.html?hibernate
X-GWT-Permutation: HostedMode
X-GWT-Module-Base: http://127.0.0.1:8888/hibernate/
Content-Type: text/x-gwt-rpc; charset=utf-8
Content-Length: 175
Pragma: no-cache
Cache-Control: no-cache
Response headers
Content-Type: text/html; charset=iso-8859-1
Content-Length: 3632
لا يزال هذا مشروعًا جديدًا ، فأنا أحاول فقط إجراء دليل على المفهوم.
شكرا فيراس
المحلول
java.lang.noclassdeffounderror: لم يستطع تهيئة فئة NJHSNewHibernateUtil
هذا الخطأ يعني أنه تم العثور على الفصل لكن تهيئةه فشل. وتشمل الأسباب المحتملة
- بعض التبعيات غير راضية ~ أو ~
- يتم طرح استثناء عند تنفيذ كتلة تهيئة ثابتة في الفصل.
في حالة معينة من النموذجية HibernateUtil
الفصل ، كنت أراهن على الخيار الثاني. استخراج رمز كتلة التهيئة الثابتة وقم بتشغيله / تصحيحه بشكل منتظم main
, ، خارج الحاوية (وربما حاول تحسين الإبلاغ عن الخطأ في حالة المشكلة).
نصائح أخرى
java.lang.noclassdeffounderror يعني أن وقت التشغيل لم يتمكن من تحديد موقع الفصل في classpath. يبدو أنك تفتقد جرة تحتوي على net.jaffa.hibernate.server.newhibernateutil.
لا تنتمي إلى StackOverflow