2 Replies Latest reply on Jul 23, 2013 5:53 PM by moraleslos

    jackson switchyard lib conflict

    moraleslos

      I'm currently using the new Jackson libs (2.2.2) and when I deploy the SY app onto JBoss EAP 6.1, I get what looks to be a classloading issue:

       

      Caused by: java.lang.NoClassDefFoundError: com/fasterxml/jackson/core/type/TypeReference
                at java.lang.ClassLoader.defineClass1(Native Method) [rt.jar:1.6.0_34]
                at java.lang.ClassLoader.defineClassCond(Unknown Source) [rt.jar:1.6.0_34]
                at java.lang.ClassLoader.defineClass(Unknown Source) [rt.jar:1.6.0_34]
                at org.jboss.modules.ModuleClassLoader.doDefineOrLoadClass(ModuleClassLoader.java:344) [jboss-modules.jar:1.2.0.Final-redhat-1]
                at org.jboss.modules.ModuleClassLoader.defineClass(ModuleClassLoader.java:422) [jboss-modules.jar:1.2.0.Final-redhat-1]
                ... 20 more
      Caused by: java.lang.ClassNotFoundException: com.fasterxml.jackson.core.type.TypeReference from [Module "deployment.switchyard-example.jar:main" from Service Module Loader]
                at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:196) [jboss-modules.jar:1.2.0.Final-redhat-1]
      

       

       

      I've looked this up and seems like I can add a jboss-deployment-structure.xml file with the proper exclusions, however I do not know where to place this file since all the examples have in under META-INF in the war file, which SY is not.  Any ideas?

        • 1. Re: jackson switchyard lib conflict
          dward

          SwitchYard uses codehaus jackson 1.9.9, because that's what is included in JBoss EAP.

           

          Are you replacing JBoss' jackson libs with your own?  If so, that would be an unsupported configuration.

           

          If not, how are you packaging them?

          1 of 1 people found this helpful
          • 2. Re: jackson switchyard lib conflict
            moraleslos

            Based on what you said, I went ahead and reverted back to the one EAP uses.  It wasn't necessary to use Jackson 2.2.2 but I originally put it in there not knowing that JBoss EAP already had that packaged (although older version).