2014-06-12 4 views
0

내 응용 프로그램의 로그인 페이지에 액세스하려고하면 다음 오류가 표시됩니다. 일부 세부 사항 :JBOSS 6.2에 배포 된 응용 프로그램을 실행할 때 java.lang.LinkageError

  1. 응용 프로그램은 Scala Lift 프레임 워크를 사용합니다.
  2. JBOSS 6.2.0 EAP. 배포
  3. 컨텍스트 루트는

가능한 이유는 무엇입니까 CPT /인가? 감사.!

Message: java.lang.LinkageError: Failed to link 
de/o2/bic/cpt/web/lift/snippet/Loginform 
(Module "deployment.cpt.war:main" from Service Module Loader) 
    org.jboss.modules.ModuleClassLoader.defineClass(ModuleClassLoader.java:428) 
    org.jboss.modules.ModuleClassLoader.loadClassLocal(ModuleClassLoader.java:261) 
    org.jboss.modules.ModuleClassLoader$1.loadClassLocal(ModuleClassLoader.java:76) 
    org.jboss.modules.Module.loadModuleClass(Module.java:548) 
    org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:189) 
    org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:443) 
    org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:431) 
    org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:373) 
    org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:118) 
    java.lang.Class.forName0(Native Method) 
    java.lang.Class.forName(Class.java:186) 
    net.liftweb.util.ClassHelpers$$anonfun$findClass$1$$anonfun$apply$3$$anonfun$apply$4.apply(ClassHelpers.scala:58) 
    net.liftweb.util.ClassHelpers$$anonfun$findClass$1$$anonfun$apply$3$$anonfun$apply$4.apply(ClassHelpers.scala:58) 
    net.liftweb.util.ControlHelpers$class.tryo(ControlHelpers.scala:46) 
    net.liftweb.util.Helpers$.tryo(Helpers.scala:34) 
    net.liftweb.util.ControlHelpers$class.tryo(ControlHelpers.scala:109) 
    net.liftweb.util.Helpers$.tryo(Helpers.scala:34) 
    net.liftweb.util.ClassHelpers$$anonfun$findClass$1$$anonfun$apply$3.apply(ClassHelpers.scala:58) 
    net.liftweb.util.ClassHelpers$$anonfun$findClass$1$$anonfun$apply$3.apply(ClassHelpers.scala:55) 
    scala.collection.Iterator$$anon$21.hasNext(Iterator.scala:371) 
    scala.collection.Iterator$class.toStream(Iterator.scala:1024) 
    scala.collection.Iterator$$anon$21.toStream(Iterator.scala:368) 
    scala.collection.IterableLike$class.toStream(IterableLike.scala:284) 
    scala.collection.SeqViewLike$$anon$4.toStream(SeqViewLike.scala:78) 
    scala.collection.TraversableLike$class.toIterator(TraversableLike.scala:570) 
    scala.collection.SeqViewLike$$anon$4.toIterator(SeqViewLike.scala:78) 
    scala.collection.Iterator$$anon$21.hasNext(Iterator.scala:371) 
    scala.collection.Iterator$class.foreach(Iterator.scala:660) 
    scala.collection.Iterator$$anon$21.foreach(Iterator.scala:368) 
    scala.collection.IterableViewLike$Transformed$class.foreach(IterableViewLike.scala:41) 
    scala.collection.SeqViewLike$$anon$4.foreach(SeqViewLike.scala:78) 
    scala.collection.TraversableViewLike$Transformed$class.headOption(TraversableViewLike.scala:89) 
    scala.collection.SeqViewLike$$anon$4.headOption(SeqViewLike.scala:78) 
    net.liftweb.util.ClassHelpers$class.findClass(ClassHelpers.scala:59) 
    net.liftweb.util.Helpers$.findClass(Helpers.scala:34) 
    net.liftweb.util.ClassHelpers$class.findType(ClassHelpers.scala:74) 
    net.liftweb.util.Helpers$.findType(Helpers.scala:34) 
    net.liftweb.util.ClassHelpers$class.findClass(ClassHelpers.scala:88) 
    net.liftweb.util.Helpers$.findClass(Helpers.scala:34) 
    net.liftweb.util.ClassHelpers$class.findClass(ClassHelpers.scala:126) 
    net.liftweb.util.Helpers$.findClass(Helpers.scala:34) 
    net.liftweb.http.LiftSession.net$liftweb$http$LiftSession$$findSnippetClass(LiftSession.scala:1253) 
    net.liftweb.http.LiftSession$$anonfun$net$liftweb$http$LiftSession$$findSnippetInstance$1$$anonfun$apply$64.apply(LiftSession.scala:1390) 
    net.liftweb.http.LiftSession$$anonfun$net$liftweb$http$LiftSession$$findSnippetInstance$1$$anonfun$apply$64.apply(LiftSession.scala:1390) 
    net.liftweb.common.EmptyBox.or(Box.scala:576) 
    net.liftweb.http.LiftSession$$anonfun$net$liftweb$http$LiftSession$$findSnippetInstance$1.apply(LiftSession.scala:1389) 
    net.liftweb.http.LiftSession$$anonfun$net$liftweb$http$LiftSession$$findSnippetInstance$1.apply(LiftSession.scala:1389) 
    net.liftweb.common.EmptyBox.or(Box.scala:576) 
    net.liftweb.http.LiftSession.net$liftweb$http$LiftSession$$findSnippetInstance(LiftSession.scala:1388) 
    net.liftweb.http.LiftSession$$anonfun$locateAndCacheSnippet$1$1$$anonfun$apply$78.apply(LiftSession.scala:1543) 
    ...  
    org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:246) 
    org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214) 
    org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230) 
    org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:149) 
    org.jboss.as.web.security.SecurityContextAssociationValve.invoke(SecurityContextAssociationValve.java:169) 
    org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:145) 
    org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:97) 
    org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:102) 
    org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:336) 
    org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856) 
    org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:653) 
    org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:920) 
    java.lang.Thread.run(Thread.java:722) 

Caught and thrown by: 
Message: java.lang.NoClassDefFoundError: de/o2/bic/cpt/web/lift/snippet/Loginform (wrong name: de/o2/bic/cpt/web/lift/snippet/loginform) 
    java.lang.ClassLoader.defineClass1(Native Method) 
    java.lang.ClassLoader.defineClass(ClassLoader.java:791) 
    org.jboss.modules.ModuleClassLoader.doDefineOrLoadClass(ModuleClassLoader.java:345) 
    org.jboss.modules.ModuleClassLoader.defineClass(ModuleClassLoader.java:423) 
    org.jboss.modules.ModuleClassLoader.loadClassLocal(ModuleClassLoader.java:261) 
    org.jboss.modules.ModuleClassLoader$1.loadClassLocal(ModuleClassLoader.java:76) 
    org.jboss.modules.Module.loadModuleClass(Module.java:548) 
    org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:189) 
    org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:443) 
    org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:431) 
    org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:373) 
    org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:118) 
    java.lang.Class.forName0(Native Method) 
    java.lang.Class.forName(Class.java:186) 
    net.liftweb.util.ClassHelpers$$anonfun$findClass$1$$anonfun$apply$3$$anonfun$apply$4.apply(ClassHelpers.scala:58) 
    net.liftweb.util.ClassHelpers$$anonfun$findClass$1$$anonfun$apply$3$$anonfun$apply$4.apply(ClassHelpers.scala:58) 
    net.liftweb.util.ControlHelpers$class.tryo(ControlHelpers.scala:46) 
    net.liftweb.util.Helpers$.tryo(Helpers.scala:34) 
    net.liftweb.util.ControlHelpers$class.tryo(ControlHelpers.scala:109) 
    net.liftweb.util.Helpers$.tryo(Helpers.scala:34) 
    net.liftweb.util.ClassHelpers$$anonfun$findClass$1$$anonfun$apply$3.apply(ClassHelpers.scala:58) 
    ... 
    org.jboss.as.web.security.SecurityContextAssociationValve.invoke(SecurityContextAssociationValve.java:169) 
    org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:145) 
    org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:97) 
    org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:102) 
    org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:336) 
    org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856) 
    org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:653) 
    org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:920) 
    java.lang.Thread.run(Thread.java:722) 

답변

0

아직 답변이 없습니다. JBoss EAP 6.2 (LinkageError, NoClassDefFoundError, ClassNotFoundError)와 유사한 오류가 발생했지만 해결책을 찾지 못했습니다. 우리는 "새로운"모듈 식 클래스 로더의 버그를 의심합니다.

0

TL - DR - 의존성없이 프로젝트를 다시 빌드하려고 시도합니다 - 특히 log4j.

답변은 JBOSS가 라이브러리를로드하는 과정입니다. 서버 라이브러리로 이미 가지고있는 프로젝트 라이브러리를 만나면 클래스 로더가 깨집니다. 흔히 로거 log4j lib입니다. 따라서이 종속성을 제거하고 대체 로거를 사용하십시오. 물론 코드를 변경해야합니다.

적어도이 상황이 우리에게 있습니다.