6.2.0.FINAL SETUP: NoClassDefFoundError for com/thoughtworks/xstream/io/HierarchicalStreamDriver

752 views
Skip to first unread message

Edward Cai

unread,
Jul 18, 2016, 5:22:30 PM7/18/16
to Drools Setup
Hi All,

I am in the process of upgrading to 6.2.0.FINAL from 5.4.0.FINAL. I'm running my JUnit tests which invoke Kie sessions, and all tests were running fine. Now I'm trying to bring up the actual app in LINUX environment, and have encountered two type of error messages. Could anybody shed any color what these errors might mean? I have done research on the Internet, and didn't find much information.

Instance 1, err logs:

Exception in thread "main" java.lang.NoClassDefFoundError: com/thoughtworks/xstream/io/HierarchicalStreamDriver
        at org.drools.compiler.kproject.models.KieModuleModelImpl.<clinit>(KieModuleModelImpl.java:146)
        at org.kie.spring.KModuleBeanFactoryPostProcessor.fetchKieModuleModel(KModuleBeanFactoryPostProcessor.java:208)
        at org.kie.spring.KModuleBeanFactoryPostProcessor.postProcessBeanFactory(KModuleBeanFactoryPostProcessor.java:120)
        at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:265)
        at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:177)
        at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:606)
        at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:462)
        at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:139)
        at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:93)
        at com.jpmorgan.d1.ptg.aia.at.ATServiceMain.init(ATServiceMain.java:90)
        at com.jpmorgan.d1.ptg.aia.at.ATServiceMain.<init>(ATServiceMain.java:83)
        at com.jpmorgan.d1.ptg.aia.at.ATServiceMain.main(ATServiceMain.java:307)
Caused by: java.lang.ClassNotFoundException: com.thoughtworks.xstream.io.HierarchicalStreamDriver
        at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
        ... 12 more

Instance 2, err logs:

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'UserProfileCacheActive' defined in class path resource [config/ioiStaticData.xml]: Cannot resolve reference to bean 'deskCacheManager' while setting constructor argument; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'deskCacheManager' defined in class path resource [config/ioiStaticData.xml]: Cannot resolve reference to bean 'staticDataInit' while setting constructor argument; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'staticDataInit' defined in class path resource [config/ioiStaticData.xml]: Cannot resolve reference to bean 'kStaticDataSession' while setting bean property 'kStateless'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'kStaticDataSession': Cannot resolve reference to bean 'kBaseStaticData' while setting bean property 'kBase'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'kBaseStaticData': Invocation of init method failed; nested exception is java.lang.IllegalArgumentException: Cannot resolve a KieContainer using a null ReleaseId
        at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:359)
        at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:108)
        at org.springframework.beans.factory.support.ConstructorResolver.resolveConstructorArguments(ConstructorResolver.java:634)
        at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:140)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1139)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1042)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:504)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:476)
        at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:303)
        at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
        at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:299)
        at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:194)
        at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:755)
        at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:757)
        at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:480)
        at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:139)
        at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:93)
        at com.jpmorgan.d1.ptg.aia.ioi.IOIServerDisruptor.init(IOIServerDisruptor.java:106)
        at com.jpmorgan.d1.ptg.aia.ioi.IOIServerDisruptor.<init>(IOIServerDisruptor.java:99)
        at com.jpmorgan.d1.ptg.aia.ioi.IOIServerDisruptor.main(IOIServerDisruptor.java:333)
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'deskCacheManager' defined in class path resource [config/ioiStaticData.xml]: Cannot resolve reference to bean 'staticDataInit' while setting constructor argument; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'staticDataInit' defined in class path resource [config/ioiStaticData.xml]: Cannot resolve reference to bean 'kStaticDataSession' while setting bean property 'kStateless'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'kStaticDataSession': Cannot resolve reference to bean 'kBaseStaticData' while setting bean property 'kBase'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'kBaseStaticData': Invocation of init method failed; nested exception is java.lang.IllegalArgumentException: Cannot resolve a KieContainer using a null ReleaseId
        at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:359)
        at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:108)
        at org.springframework.beans.factory.support.ConstructorResolver.resolveConstructorArguments(ConstructorResolver.java:634)
        at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:140)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1139)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1042)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:504)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:476)
        at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:303)
        at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
        at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:299)
        at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:194)
        at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:351)
        ... 19 more

My Kie setup:

    <bean id="kiePostProcessor"
              class="org.kie.spring.KModuleBeanFactoryPostProcessor"/>

     <kie:kmodule id="at-kmodule">
      <kie:kbase name="kbase1" packages="${drools.config.intraday}">
        <kie:ksession name="ksession1" type="stateless"/>
        <kie:ksession name="ksession2" type="stateful"/>
      </kie:kbase>

      <kie:kbase name="kbaseEOD" packages="${drools.config.eod}">
        <kie:ksession name="kEODSession" type="stateless"/>
      </kie:kbase>
    </kie:kmodule>

Pom.xml:

            <dependency>
                <groupId>org.kie</groupId>
                <artifactId>kie-api</artifactId>
                <version>6.2.0.Final</version>
            </dependency>
            <dependency>
                <groupId>org.kie</groupId>
                <artifactId>kie-spring</artifactId>
                <version>6.2.0.CR2</version>
                  <exclusions>
                    <exclusion>
                      <groupId>org.springframework</groupId>
                      <artifactId>spring-core</artifactId>
                    </exclusion>
                    <exclusion>
                      <groupId>org.springframework</groupId>
                      <artifactId>spring-beans</artifactId>
                    </exclusion>
                    <exclusion>
                      <groupId>org.springframework</groupId>
                      <artifactId>spring-orm</artifactId>
                    </exclusion>
                    <exclusion>
                      <groupId>org.springframework</groupId>
                      <artifactId>spring-jdbc</artifactId>
                    </exclusion>
                    <exclusion>
                      <groupId>org.springframework</groupId>
                      <artifactId>spring-context</artifactId>
                    </exclusion>
                  </exclusions>
            </dependency>
            <dependency>
                <groupId>org.kie</groupId>
                <artifactId>kie-internal</artifactId>
                <version>6.2.0.Final</version>
            </dependency>
            <dependency>
                <groupId>org.drools</groupId>
                <artifactId>drools-core</artifactId>
                <version>6.2.0.Final</version>
            </dependency>
            <dependency>
                <groupId>org.drools</groupId>
                <artifactId>drools-compiler</artifactId>
                <version>6.2.0.Final</version>
            </dependency>
            <dependency>
               <groupId>com.miglayout</groupId>
               <artifactId>miglayout</artifactId>
               <version>3.7.4</version>
            </dependency>
            <dependency>
              <groupId>com.thoughtworks.xstream</groupId>
              <artifactId>xstream</artifactId>
              <version>1.4.7</version>
            </dependency>
            <dependency>
              <groupId>commons-io</groupId>
              <artifactId>commons-io</artifactId>
              <version>2.4</version>
            </dependency>
            <dependency>
                <groupId>org.mvel</groupId>
                <artifactId>mvel2</artifactId>
                <version>2.2.4.FINAL</version>
            </dependency>
            <dependency>
                <groupId>org.antlr</groupId>
                <artifactId>antlr-runtime</artifactId>
                <version>3.4</version>
            </dependency>

Reply all
Reply to author
Forward
0 new messages