I keep having a NoClassDefFoundException (java.lang.NoClassDefFoundError:
com/successfactors/pm/ui/messages/SFMessages) when jsf components try to load one of our
classes (SFMessages).
I'm running jboss4.0.5, jdk5 and using the default classloader settings(Tomcat uses it
own class loader for isolation).
The directory structure looks like:
serverconfig/lib - Contains jsf libs(Removed the jbossweb-tomcat55.sar/jsf-libs
directory)
serverconfig/deploy/sfv4.ear/sfv4-ejb.jar - Contains all of our ejb classes
serverconfig/deploy/sfv4.ear/sfv4-comon.jar - Contains common classes used by ejbs and web
code.
serverconfig/deploy/sfv4.ear/xi.war/WEB-INF/classes - contains web code
The SFMessages class lives in sfv4-common.jar currently.
I tried putting the SFMessages into the web-inf/classes but still get the same issue.
I also tried to move the jsf libs into the sfv4.ear and added entries to the
application.xml but I still get the same issue.
All manifests in the jars have no references to other jars.
I turned on ucl tracing and the exception is below. According to some post on the jboss
forums it indicates that the shared class is being reference by the war and ejb
classloader which is not allowed. I tried making sure the only instance of SFMessages is
in sfv4-common.jar and then
tried adding sfv4-common.jar to the application.xml (as a java module), but still having
the same issue.
This is holding up development on a major project and I need it resolved quickly.
Any Ideas?
Thanks, Dan
Here is the exception:
[3420200,LoadMgr3,http-0.0.0.0-8080-2] Notifying task of thread completion,
loadTask:org.jboss.mx.loading.ClassLoadingTask@1bace2b{classname:
com.successfactors.pm.ui.messages.SFMessages, requestingThread:
Thread[http-0.0.0.0-8080-2,5,jboss], requestingClassLoader:
org.jboss.mx.loading.UnifiedClassLoader3@1814dd0{
url=file:/C:/jboss-4.0.5.GA-ejb/server/main/deploy/sfv4.ear/ ,addedOrder=43}, loadedClass:
nullnull, loadOrder: 2147483647, loadException: java.lang.LinkageError: Class
com/successfactors/pm/ui/messages/SFMessages violates loader constraints, threadTaskCount:
0, state: 1, #CCE: 0}loadException details:
java.lang.LinkageError: Class com/successfactors/pm/ui/messages/SFMessages violates loader
constraints
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:260)
at java.net.URLClassLoader.access$100(URLClassLoader.java:56)
at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at
org.jboss.mx.loading.RepositoryClassLoader.findClassLocally(RepositoryClassLoader.java:672)
at org.jboss.mx.loading.RepositoryClassLoader.findClass(RepositoryClassLoader.java:652)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at
org.jboss.mx.loading.RepositoryClassLoader.loadClassLocally(RepositoryClassLoader.java:190)
at org.jboss.mx.loading.ClassLoadingTask$ThreadTask.run(ClassLoadingTask.java:131)
at org.jboss.mx.loading.LoadMgr3.nextTask(LoadMgr3.java:399)
at
org.jboss.mx.loading.RepositoryClassLoader.loadClassImpl(RepositoryClassLoader.java:517)
at org.jboss.mx.loading.RepositoryClassLoader.loadClass(RepositoryClassLoader.java:405)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
at java.lang.Class.getDeclaredMethods0(Native Method)
at java.lang.Class.privateGetDeclaredMethods(Class.java:2365)
at java.lang.Class.getDeclaredMethods(Class.java:1763)
at java.beans.Introspector$1.run(Introspector.java:1265)
at java.security.AccessController.doPrivileged(Native Method)
at java.beans.Introspector.getPublicDeclaredMethods(Introspector.java:1263)
at java.beans.Introspector.getTargetMethodInfo(Introspector.java:1129)
at java.beans.Introspector.getBeanInfo(Introspector.java:387)
at java.beans.Introspector.getBeanInfo(Introspector.java:159)
at
org.apache.myfaces.el.PropertyResolverImpl.getPropertyDescriptor(PropertyResolverImpl.java:454)
at org.apache.myfaces.el.PropertyResolverImpl.getProperty(PropertyResolverImpl.java:417)
at org.apache.myfaces.el.PropertyResolverImpl.getValue(PropertyResolverImpl.java:82)
at
com.sun.facelets.el.LegacyELContext$LegacyELResolver.getValue(LegacyELContext.java:141)
at com.sun.el.parser.AstValue.getValue(AstValue.java:117)
at com.sun.el.parser.AstDeferredExpression.getValue(AstDeferredExpression.java:46)
at com.sun.el.parser.AstCompositeExpression.getValue(AstCompositeExpression.java:51)
at com.sun.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:192)
at com.sun.facelets.el.TagValueExpression.getValue(TagValueExpression.java:71)
at com.sun.facelets.el.LegacyValueBinding.getValue(LegacyValueBinding.java:56)
at javax.faces.component.UIGraphic.getValue(UIGraphic.java:96)
at javax.faces.component.UIGraphic.getUrl(UIGraphic.java:35)
at
org.apache.myfaces.shared_impl.renderkit.html.HtmlImageRendererBase.encodeEnd(HtmlImageRendererBase.java:53)
at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:536)
at com.sun.facelets.tag.jsf.ComponentSupport.encodeRecursive(ComponentSupport.java:242)
at com.sun.facelets.tag.jsf.ComponentSupport.encodeRecursive(ComponentSupport.java:239)
at com.sun.facelets.tag.jsf.ComponentSupport.encodeRecursive(ComponentSupport.java:239)
at com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:580)
at org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:384)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:138)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.jboss.seam.servlet.SeamExceptionFilter.doFilter(SeamExceptionFilter.java:46)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.jboss.seam.servlet.SeamRedirectFilter.doFilter(SeamRedirectFilter.java:32)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at
com.successfactors.pm.ui.security.AuthenticationFilter.doFilter(AuthenticationFilter.java:81)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at
org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175)
at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at
org.jboss.web.tomcat.tc5.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:156)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
at
org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at
org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
at java.lang.Thread.run(Thread.java:595)
View the original post :
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4026809#...
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&a...