2 Replies Latest reply on Feb 3, 2016 2:42 AM by suparna chakraborty

    EAP6.4.0 EAR lib cannot resolve dependency on WAR lib, works in WAS 7

    suparna chakraborty Newbie

      We are migrating our (Spring 2.5.6) application from WAS 7 to Jboss EAP 6.4.0. It has the following structure :
















      The WAR MANIFEST has Class-Path: entries for spring-security-core jar.

      While loading the application, the EAR throws Linkage Error (condensed) :

      Failed to define class org.springframework.security.SpringSecurityException in Module "deployment.MyEAR.ear:main" from Service Module Loader: java.lang.LinkageError: Failed to link org/springframework/security/SpringSecurityException (Module "deployment.MyEAR.ear:main" from Service Module Loader)

      Caused by: java.lang.NoClassDefFoundError: org/springframework/core/NestedRuntimeException

        at java.lang.ClassLoader.defineClass1(Native Method) [rt.jar:1.6.0_41]

        at java.lang.ClassLoader.defineClassCond(ClassLoader.java:631) [rt.jar:1.6.0_41]

        at java.lang.ClassLoader.defineClass(ClassLoader.java:615) [rt.jar:1.6.0_41]

        at org.jboss.modules.ModuleClassLoader.doDefineOrLoadClass(ModuleClassLoader.java:361) [jboss-modules.jar:1.3.6.Final-redhat-1]

        at org.jboss.modules.ModuleClassLoader.defineClass(ModuleClassLoader.java:482) [jboss-modules.jar:1.3.6.Final-redhat-1]

        ... 38 more


      Seems like the SpringSecurityException defined in spring-security-core.jar has an import of 'org.springframework.core.NestedRuntimeException' which in turn is defined in the spring-core.jar included in the WAR lib, but is unable to find it.Is there a reason why the EAR libs cannot find the WEB-INF / lib ones ? This works perfectly fine in WAS 7.