0

I am having a wicket application and I am using Ebean ORM mapping. I have set all the credential in ebean.properties. But I am getting an error message "Could not initialize class com.avaje.ebean.Ebean" when I deployed it on server, Its gives error as follows

Last cause: Could not initialize class com.avaje.ebean.Ebean
WicketMessage: Can't instantiate page using constructor 'public com.zipgrocery.pages.HomePageNew(org.apache.wicket.request.mapper.parameter.PageParameters)' and argument ''. Might be it doesn't exist, may be it is not visible (public).

Stacktrace

Root cause:

java.lang.NoClassDefFoundError: Could not initialize class com.avaje.ebean.Ebean
     at com.zipgrocery.data.Merchant.getMerchantsByZone(Merchant.java:374)
     at com.zipgrocery.pages.HomePageNew.<init>(HomePageNew.java:77)
     at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
     at org.apache.wicket.session.DefaultPageFactory.newPage(DefaultPageFactory.java:173)
     at org.apache.wicket.session.DefaultPageFactory.newPage(DefaultPageFactory.java:77)
     at org.apache.wicket.session.DefaultPageFactory.newPage(DefaultPageFactory.java:47)
     at org.apache.wicket.DefaultMapperContext.newPageInstance(DefaultMapperContext.java:103)
     at org.apache.wicket.request.handler.PageProvider.resolvePageInstance(PageProvider.java:264)
     at org.apache.wicket.request.handler.PageProvider.getPageInstance(PageProvider.java:165)
     at org.apache.wicket.request.handler.render.PageRenderer.getPage(PageRenderer.java:78)
     at org.apache.wicket.request.handler.render.WebPageRenderer.renderPage(WebPageRenderer.java:105)
     at org.apache.wicket.request.handler.render.WebPageRenderer.respond(WebPageRenderer.java:224)
     at org.apache.wicket.request.handler.RenderPageRequestHandler.respond(RenderPageRequestHandler.java:167)
     at org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:784)
     at org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)
     at org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:255)
     at org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:212)
     at org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:283)
     at org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:188)
     at org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:244)
     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
     at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
     at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
     at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
     at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
     at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
     at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
     at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:190)
     at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:311)
     at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:776)
     at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:705)
     at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:898)
     at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:690)
     at java.lang.Thread.run(Thread.java:619)

Complete stack:

org.apache.wicket.WicketRuntimeException: Can't instantiate page using constructor 'public com.zipgrocery.pages.HomePageNew(org.apache.wicket.request.mapper.parameter.PageParameters)' and argument ''. Might be it doesn't exist, may be it is not visible (public).
     at org.apache.wicket.session.DefaultPageFactory.newPage(DefaultPageFactory.java:196)
     at org.apache.wicket.session.DefaultPageFactory.newPage(DefaultPageFactory.java:77)
     at org.apache.wicket.session.DefaultPageFactory.newPage(DefaultPageFactory.java:47)
     at org.apache.wicket.DefaultMapperContext.newPageInstance(DefaultMapperContext.java:103)
     at org.apache.wicket.request.handler.PageProvider.resolvePageInstance(PageProvider.java:264)
     at org.apache.wicket.request.handler.PageProvider.getPageInstance(PageProvider.java:165)
     at org.apache.wicket.request.handler.render.PageRenderer.getPage(PageRenderer.java:78)
     at org.apache.wicket.request.handler.render.WebPageRenderer.renderPage(WebPageRenderer.java:105)
     at org.apache.wicket.request.handler.render.WebPageRenderer.respond(WebPageRenderer.java:224)
     at org.apache.wicket.request.handler.RenderPageRequestHandler.respond(RenderPageRequestHandler.java:167)
     at org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:784)
     at org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)
     at org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:255)
     at org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:212)
     at org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:283)
     at org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:188)

java.lang.reflect.InvocationTargetException
     at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
     at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
     at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
     at org.apache.wicket.session.DefaultPageFactory.newPage(DefaultPageFactory.java:173)
     at org.apache.wicket.session.DefaultPageFactory.newPage(DefaultPageFactory.java:77)
     at org.apache.wicket.session.DefaultPageFactory.newPage(DefaultPageFactory.java:47)
     at org.apache.wicket.DefaultMapperContext.newPageInstance(DefaultMapperContext.java:103)
     at org.apache.wicket.request.handler.PageProvider.resolvePageInstance(PageProvider.java:264)
     at org.apache.wicket.request.handler.PageProvider.getPageInstance(PageProvider.java:165)
     at org.apache.wicket.request.handler.render.PageRenderer.getPage(PageRenderer.java:78)
     at org.apache.wicket.request.handler.render.WebPageRenderer.renderPage(WebPageRenderer.java:105)
     at org.apache.wicket.request.handler.render.WebPageRenderer.respond(WebPageRenderer.java:224)
     at org.apache.wicket.request.handler.RenderPageRequestHandler.respond(RenderPageRequestHandler.java:167)
     at org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:784)
     at org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)
     at org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:255)
     at org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:212)
     at org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:283)
     at org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:188)

But it works fine when I deploy it on my localhost. I tried to find the solutions for this but not getting. So Help me out...

Xavi López
  • 27,550
  • 11
  • 97
  • 161
  • This question might be related: [java.lang.NoClassDefFoundError: Could not initialize class XXX](http://stackoverflow.com/q/7325579/851811). Can you show us what's in `com.zipgrocery.data.Merchant.getMerchantsByZone()` around line 374? – Xavi López Feb 01 '13 at 13:07

1 Answers1

1

I'm not familiar with this guy "Ebean ORM", but the error track is pretty generic and seems has nothing really to do with "Ebean ORM" itself. Based on my past exp, it is more like a classloader issue. You said it was running fine locally and then? where is it broken? when you have such issues like "NoClassDefFoundError", always check what classloader is being used. And also it is worth to check whether your broken environment has multiple versions of the class/jar as well as if the server has its embedded version of this class/jar.

spiritwalker
  • 2,257
  • 14
  • 9