[jboss-jira] [JBoss JIRA] (DROOLS-1004) classloading errors in kie-server

David Ward (JIRA) issues at jboss.org
Tue Dec 8 22:27:00 EST 2015


     [ https://issues.jboss.org/browse/DROOLS-1004?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

David Ward updated DROOLS-1004:
-------------------------------
    Description: 
There appear to be some classloading errors in kie-server.war 6.3.0.Final-redhat-5 being deployed on JBoss EAP 6.4.4.

*First, you get multiple jaxb and parser warnings like this:*

{code}
11:58:47,603 WARN [org.jboss.as.server.deployment] (MSC service thread 1-3) JBAS015960: Class Path entry jaxb-api.jar in /opt/eap/standalone/deployments/kie-server.war/WEB-INF/lib/jaxb-core-2.2.11.jar does not point to a valid jar for a Class-Path reference.
11:58:47,606 WARN [org.jboss.as.server.deployment] (MSC service thread 1-3) JBAS015960: Class Path entry jaxb-core.jar in /opt/eap/standalone/deployments/kie-server.war/WEB-INF/lib/jaxb-impl-2.2.11.jar does not point to a valid jar for a Class-Path reference.
11:58:47,644 WARN [org.jboss.as.server.deployment] (MSC service thread 1-3) JBAS015960: Class Path entry jaxb-core.jar in /opt/eap/standalone/deployments/kie-server.war/WEB-INF/lib/jaxb-xjc-2.2.11.jar does not point to a valid jar for a Class-Path reference.
11:58:47,644 WARN [org.jboss.as.server.deployment] (MSC service thread 1-3) JBAS015960: Class Path entry jaxb-impl.jar in /opt/eap/standalone/deployments/kie-server.war/WEB-INF/lib/jaxb-xjc-2.2.11.jar does not point to a valid jar for a Class-Path reference.
11:58:47,713 WARN [org.jboss.as.server.deployment] (MSC service thread 1-3) JBAS015893: Encountered invalid class name 'org.xmlpull.mxp1.MXParser,org.xmlpull.mxp1_serializer.MXSerializer' for service type 'org.xmlpull.v1.XmlPullParserFactory'
{code}

The above was noticed as part of CLOUD-421.  Please refer to the jira issue and note Kev's comment, {quote}"The jaxb jars are duplicates that are unnecessary in the EAP deployments however the upstream war file contains all dependencies. Removing the jaxb jars from within the kie-server.war/WEB-INF/lib directory will likely work however I'm loathed to do this since we would need to verify this through the BRMS QE team.
The warning about the parser is caused by the kie-server.war/WEB-INF/lib/xpp3_min-1.1.4c.jar"{quote}

*Second, there can be missing osgi classes:*

If kjar model classes contain certain annotations, it seems to trigger the kie-server to try to load osgi classes.  For example, annotating kjar model classes with Position, PropertyReactive, and Remotable as per this test case:
http://git.app.eng.bos.redhat.com/git/xpaas-qe.git/tree/test-brms/src/test/resources/apps/clustering-scaling/src/main/java/com/redhat/xpaas/brms
, you end up with errors like this in the log when the KieContainer is being installed:

{code}
Caused by: java.lang.NoClassDefFoundError: org/osgi/util/tracker/ServiceTrackerCustomizer
	at java.lang.ClassLoader.defineClass1(Native Method) [rt.jar:1.8.0_65]
	at java.lang.ClassLoader.defineClass(ClassLoader.java:760) [rt.jar:1.8.0_65]
	at org.jboss.modules.ModuleClassLoader.doDefineOrLoadClass(ModuleClassLoader.java:361) [jboss-modules.jar:1.3.7.Final-redhat-1]
	at org.jboss.modules.ModuleClassLoader.defineClass(ModuleClassLoader.java:482) [jboss-modules.jar:1.3.7.Final-redhat-1]
	... 77 more
Caused by: java.lang.ClassNotFoundException: org.osgi.util.tracker.ServiceTrackerCustomizer from [Module "deployment.kie-server.war:main" from Service Module Loader]
	at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:213) [jboss-modules.jar:1.3.7.Final-redhat-1]
	at org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:459) [jboss-modules.jar:1.3.7.Final-redhat-1]
	at org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:408) [jboss-modules.jar:1.3.7.Final-redhat-1]
	at org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:389) [jboss-modules.jar:1.3.7.Final-redhat-1]
	at org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:134) [jboss-modules.jar:1.3.7.Final-redhat-1]
	... 81 more
{code}

The above was noticed as part of CLOUD-418. To get around this issue, I had to add a kie-server.war/WEB-INF/jboss-deployment-structure.xml like so:
{code:xml}
<?xml version="1.0" encoding="UTF-8"?>
<jboss-deployment-structure>
    <deployment>
        <dependencies>
            <module name="org.osgi.core"/>
            <module name="org.osgi.enterprise"/>
        </dependencies>
    </deployment>
</jboss-deployment-structure>
{code}


  was:
There appear to be some classloading errors in kie-server.war.

First, you get multiple warnings like this:
{code}
11:58:47,603 WARN [org.jboss.as.server.deployment] (MSC service thread 1-3) JBAS015960: Class Path entry jaxb-api.jar in /opt/eap/standalone/deployments/kie-server.war/WEB-INF/lib/jaxb-core-2.2.11.jar does not point to a valid jar for a Class-Path reference.
11:58:47,606 WARN [org.jboss.as.server.deployment] (MSC service thread 1-3) JBAS015960: Class Path entry jaxb-core.jar in /opt/eap/standalone/deployments/kie-server.war/WEB-INF/lib/jaxb-impl-2.2.11.jar does not point to a valid jar for a Class-Path reference.
11:58:47,644 WARN [org.jboss.as.server.deployment] (MSC service thread 1-3) JBAS015960: Class Path entry jaxb-core.jar in /opt/eap/standalone/deployments/kie-server.war/WEB-INF/lib/jaxb-xjc-2.2.11.jar does not point to a valid jar for a Class-Path reference.
11:58:47,644 WARN [org.jboss.as.server.deployment] (MSC service thread 1-3) JBAS015960: Class Path entry jaxb-impl.jar in /opt/eap/standalone/deployments/kie-server.war/WEB-INF/lib/jaxb-xjc-2.2.11.jar does not point to a valid jar for a Class-Path reference.
11:58:47,713 WARN [org.jboss.as.server.deployment] (MSC service thread 1-3) JBAS015893: Encountered invalid class name 'org.xmlpull.mxp1.MXParser,org.xmlpull.mxp1_serializer.MXSerializer' for service type 'org.xmlpull.v1.XmlPullParserFactory'
{code}

The above was noticed as part of CLOUD-421.  Please refer to the jira issue and note Kev's comment, {quote}"The jaxb jars are duplicates that are unnecessary in the EAP deployments however the upstream war file contains all dependencies. Removing the jaxb jars from within the kie-server.war/WEB-INF/lib directory will likely work however I'm loathed to do this since we would need to verify this through the BRMS QE team.
The warning about the parser is caused by the kie-server.war/WEB-INF/lib/xpp3_min-1.1.4c.jar"{quote}

Second, if kjar model classes contain certain annotations, it seems to trigger the kie-server to try to load osgi classes.  For example, annotating kjar model classes with Position, PropertyReactive, and Remotable as per this test case:
http://git.app.eng.bos.redhat.com/git/xpaas-qe.git/tree/test-brms/src/test/resources/apps/clustering-scaling/src/main/java/com/redhat/xpaas/brms
, you end up with errors like this in the log when the KieContainer is being installed:

{code}
Caused by: java.lang.NoClassDefFoundError: org/osgi/util/tracker/ServiceTrackerCustomizer
	at java.lang.ClassLoader.defineClass1(Native Method) [rt.jar:1.8.0_65]
	at java.lang.ClassLoader.defineClass(ClassLoader.java:760) [rt.jar:1.8.0_65]
	at org.jboss.modules.ModuleClassLoader.doDefineOrLoadClass(ModuleClassLoader.java:361) [jboss-modules.jar:1.3.7.Final-redhat-1]
	at org.jboss.modules.ModuleClassLoader.defineClass(ModuleClassLoader.java:482) [jboss-modules.jar:1.3.7.Final-redhat-1]
	... 77 more
Caused by: java.lang.ClassNotFoundException: org.osgi.util.tracker.ServiceTrackerCustomizer from [Module "deployment.kie-server.war:main" from Service Module Loader]
	at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:213) [jboss-modules.jar:1.3.7.Final-redhat-1]
	at org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:459) [jboss-modules.jar:1.3.7.Final-redhat-1]
	at org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:408) [jboss-modules.jar:1.3.7.Final-redhat-1]
	at org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:389) [jboss-modules.jar:1.3.7.Final-redhat-1]
	at org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:134) [jboss-modules.jar:1.3.7.Final-redhat-1]
	... 81 more
{code}

The above was noticed as part of CLOUD-418. To get around this issue, I had to add a kie-server.war/WEB-INF/jboss-deployment-structure.xml like so:
{code:xml}
<?xml version="1.0" encoding="UTF-8"?>
<jboss-deployment-structure>
    <deployment>
        <dependencies>
            <module name="org.osgi.core"/>
            <module name="org.osgi.enterprise"/>
        </dependencies>
    </deployment>
</jboss-deployment-structure>
{code}




> classloading errors in kie-server
> ---------------------------------
>
>                 Key: DROOLS-1004
>                 URL: https://issues.jboss.org/browse/DROOLS-1004
>             Project: Drools
>          Issue Type: Bug
>          Components: kie server
>    Affects Versions: 6.3.0.Final
>            Reporter: David Ward
>            Assignee: Maciej Swiderski
>
> There appear to be some classloading errors in kie-server.war 6.3.0.Final-redhat-5 being deployed on JBoss EAP 6.4.4.
> *First, you get multiple jaxb and parser warnings like this:*
> {code}
> 11:58:47,603 WARN [org.jboss.as.server.deployment] (MSC service thread 1-3) JBAS015960: Class Path entry jaxb-api.jar in /opt/eap/standalone/deployments/kie-server.war/WEB-INF/lib/jaxb-core-2.2.11.jar does not point to a valid jar for a Class-Path reference.
> 11:58:47,606 WARN [org.jboss.as.server.deployment] (MSC service thread 1-3) JBAS015960: Class Path entry jaxb-core.jar in /opt/eap/standalone/deployments/kie-server.war/WEB-INF/lib/jaxb-impl-2.2.11.jar does not point to a valid jar for a Class-Path reference.
> 11:58:47,644 WARN [org.jboss.as.server.deployment] (MSC service thread 1-3) JBAS015960: Class Path entry jaxb-core.jar in /opt/eap/standalone/deployments/kie-server.war/WEB-INF/lib/jaxb-xjc-2.2.11.jar does not point to a valid jar for a Class-Path reference.
> 11:58:47,644 WARN [org.jboss.as.server.deployment] (MSC service thread 1-3) JBAS015960: Class Path entry jaxb-impl.jar in /opt/eap/standalone/deployments/kie-server.war/WEB-INF/lib/jaxb-xjc-2.2.11.jar does not point to a valid jar for a Class-Path reference.
> 11:58:47,713 WARN [org.jboss.as.server.deployment] (MSC service thread 1-3) JBAS015893: Encountered invalid class name 'org.xmlpull.mxp1.MXParser,org.xmlpull.mxp1_serializer.MXSerializer' for service type 'org.xmlpull.v1.XmlPullParserFactory'
> {code}
> The above was noticed as part of CLOUD-421.  Please refer to the jira issue and note Kev's comment, {quote}"The jaxb jars are duplicates that are unnecessary in the EAP deployments however the upstream war file contains all dependencies. Removing the jaxb jars from within the kie-server.war/WEB-INF/lib directory will likely work however I'm loathed to do this since we would need to verify this through the BRMS QE team.
> The warning about the parser is caused by the kie-server.war/WEB-INF/lib/xpp3_min-1.1.4c.jar"{quote}
> *Second, there can be missing osgi classes:*
> If kjar model classes contain certain annotations, it seems to trigger the kie-server to try to load osgi classes.  For example, annotating kjar model classes with Position, PropertyReactive, and Remotable as per this test case:
> http://git.app.eng.bos.redhat.com/git/xpaas-qe.git/tree/test-brms/src/test/resources/apps/clustering-scaling/src/main/java/com/redhat/xpaas/brms
> , you end up with errors like this in the log when the KieContainer is being installed:
> {code}
> Caused by: java.lang.NoClassDefFoundError: org/osgi/util/tracker/ServiceTrackerCustomizer
> 	at java.lang.ClassLoader.defineClass1(Native Method) [rt.jar:1.8.0_65]
> 	at java.lang.ClassLoader.defineClass(ClassLoader.java:760) [rt.jar:1.8.0_65]
> 	at org.jboss.modules.ModuleClassLoader.doDefineOrLoadClass(ModuleClassLoader.java:361) [jboss-modules.jar:1.3.7.Final-redhat-1]
> 	at org.jboss.modules.ModuleClassLoader.defineClass(ModuleClassLoader.java:482) [jboss-modules.jar:1.3.7.Final-redhat-1]
> 	... 77 more
> Caused by: java.lang.ClassNotFoundException: org.osgi.util.tracker.ServiceTrackerCustomizer from [Module "deployment.kie-server.war:main" from Service Module Loader]
> 	at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:213) [jboss-modules.jar:1.3.7.Final-redhat-1]
> 	at org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:459) [jboss-modules.jar:1.3.7.Final-redhat-1]
> 	at org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:408) [jboss-modules.jar:1.3.7.Final-redhat-1]
> 	at org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:389) [jboss-modules.jar:1.3.7.Final-redhat-1]
> 	at org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:134) [jboss-modules.jar:1.3.7.Final-redhat-1]
> 	... 81 more
> {code}
> The above was noticed as part of CLOUD-418. To get around this issue, I had to add a kie-server.war/WEB-INF/jboss-deployment-structure.xml like so:
> {code:xml}
> <?xml version="1.0" encoding="UTF-8"?>
> <jboss-deployment-structure>
>     <deployment>
>         <dependencies>
>             <module name="org.osgi.core"/>
>             <module name="org.osgi.enterprise"/>
>         </dependencies>
>     </deployment>
> </jboss-deployment-structure>
> {code}



--
This message was sent by Atlassian JIRA
(v6.4.11#64026)


More information about the jboss-jira mailing list