You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@servicemix.apache.org by Matthieu Cormier <Ma...@concertia.com> on 2010/12/14 18:55:54 UTC

java.lang.IncompatibleClassChangeError: Implementing class

Hello all,

I am using servicemix 3.3.2 and following the servicemix tutorial.  I am currently on this page:
http://servicemix.apache.org/33-adding-a-jms-su.html

Section 3, adding a JMS SU to the camel example and I am getting the following error when I build.

[FATAL ERROR] Container realm = plexus.core
urls[0] = file:/C:/Software/apache-maven-2.2.1/lib/maven-2.2.1-uber.jar
[INFO] ------------------------------------------------------------------------
[ERROR] FATAL ERROR
[INFO] ------------------------------------------------------------------------
[INFO] Implementing class
[INFO] ------------------------------------------------------------------------
[INFO] Trace
java.lang.IncompatibleClassChangeError: Implementing class
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
        at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
...

I have traced the error to the <jms:provider> tag defined in the xbean.xml file of the jms su.  If I change <jms:provider> to <jms:endpoint>  the project builds fine, <jms:consumer> does not cause an issue.

Any ideas?
Is this a servicemix or a maven error?


<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns:jms="http://servicemix.apache.org/jms/1.0"
       xmlns:tutorial="urn:org:apache:servicemix:tutorial:camel"
>

    <jms:provider service="tutorial:jms"
                  endpoint="provider"
                  destinationName="tutorial.camel.queue"
                  connectionFactory="#connectionFactory" />

    <jms:consumer service="tutorial:jms"
            endpoint="consumer"
            destinationName="tutorial.camel.queue"
            connectionFactory="#connectionFactory"
            targetService="tutorial:jms"
            targetEndpoint="consumer" />

  <bean id="connectionFactory" class="org.apache.activemq.ActiveMQConnectionFactory">
    <property name="brokerURL" value="tcp://localhost:51616" />
  </bean>

Matthieu Cormier
Cell: (902) 229-1677
concertia Technologies Inc.
1869 Upper Water Street
Halifax NS B3J 1S9
www.concertia.com


RE: java.lang.IncompatibleClassChangeError: Implementing class

Posted by Matthieu Cormier <Ma...@concertia.com>.
Hello Jean-Baptiste,

I'm using Java 1.6.  I just tracked the error down to ${servicemix-version} in the pom.xml for the JMS SU.  Setting the version to a valid number fixed the issue.

Thanks,

<plugins>
   <plugin>
     <groupId>org.apache.servicemix.tooling</groupId>
     <artifactId>jbi-maven-plugin</artifactId>
     <version>${servicemix-version}</version>
     <extensions>true</extensions>
     <configuration>
       <type>service-unit</type>
     </configuration>
   </plugin>
 </plugins>

-----Original Message-----
From: Jean-Baptiste Onofré [mailto:jb@nanthrax.net] 
Sent: Tuesday, December 14, 2010 6:36 PM
To: users@servicemix.apache.org
Subject: Re: java.lang.IncompatibleClassChangeError: Implementing class

Hi Matthieu,

Which JVM version do you use ?

Regards
JB

On 12/14/2010 06:55 PM, Matthieu Cormier wrote:
> Hello all,
>
> I am using servicemix 3.3.2 and following the servicemix tutorial.  I am currently on this page:
> http://servicemix.apache.org/33-adding-a-jms-su.html
>
> Section 3, adding a JMS SU to the camel example and I am getting the following error when I build.
>
> [FATAL ERROR] Container realm = plexus.core
> urls[0] = file:/C:/Software/apache-maven-2.2.1/lib/maven-2.2.1-uber.jar
> [INFO] ------------------------------------------------------------------------
> [ERROR] FATAL ERROR
> [INFO] ------------------------------------------------------------------------
> [INFO] Implementing class
> [INFO] ------------------------------------------------------------------------
> [INFO] Trace
> java.lang.IncompatibleClassChangeError: Implementing class
>          at java.lang.ClassLoader.defineClass1(Native Method)
>          at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
>          at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
> ...
>
> I have traced the error to the<jms:provider>  tag defined in the xbean.xml file of the jms su.  If I change<jms:provider>  to<jms:endpoint>   the project builds fine,<jms:consumer>  does not cause an issue.
>
> Any ideas?
> Is this a servicemix or a maven error?
>
>
> <?xml version="1.0" encoding="UTF-8"?>
> <beans xmlns:jms="http://servicemix.apache.org/jms/1.0"
>         xmlns:tutorial="urn:org:apache:servicemix:tutorial:camel"
>>
>
>      <jms:provider service="tutorial:jms"
>                    endpoint="provider"
>                    destinationName="tutorial.camel.queue"
>                    connectionFactory="#connectionFactory" />
>
>      <jms:consumer service="tutorial:jms"
>              endpoint="consumer"
>              destinationName="tutorial.camel.queue"
>              connectionFactory="#connectionFactory"
>              targetService="tutorial:jms"
>              targetEndpoint="consumer" />
>
>    <bean id="connectionFactory" class="org.apache.activemq.ActiveMQConnectionFactory">
>      <property name="brokerURL" value="tcp://localhost:51616" />
>    </bean>
>
> Matthieu Cormier
> Cell: (902) 229-1677
> concertia Technologies Inc.
> 1869 Upper Water Street
> Halifax NS B3J 1S9
> www.concertia.com
>
>

Re: java.lang.IncompatibleClassChangeError: Implementing class

Posted by Jean-Baptiste Onofré <jb...@nanthrax.net>.
Hi Matthieu,

Which JVM version do you use ?

Regards
JB

On 12/14/2010 06:55 PM, Matthieu Cormier wrote:
> Hello all,
>
> I am using servicemix 3.3.2 and following the servicemix tutorial.  I am currently on this page:
> http://servicemix.apache.org/33-adding-a-jms-su.html
>
> Section 3, adding a JMS SU to the camel example and I am getting the following error when I build.
>
> [FATAL ERROR] Container realm = plexus.core
> urls[0] = file:/C:/Software/apache-maven-2.2.1/lib/maven-2.2.1-uber.jar
> [INFO] ------------------------------------------------------------------------
> [ERROR] FATAL ERROR
> [INFO] ------------------------------------------------------------------------
> [INFO] Implementing class
> [INFO] ------------------------------------------------------------------------
> [INFO] Trace
> java.lang.IncompatibleClassChangeError: Implementing class
>          at java.lang.ClassLoader.defineClass1(Native Method)
>          at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
>          at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
> ...
>
> I have traced the error to the<jms:provider>  tag defined in the xbean.xml file of the jms su.  If I change<jms:provider>  to<jms:endpoint>   the project builds fine,<jms:consumer>  does not cause an issue.
>
> Any ideas?
> Is this a servicemix or a maven error?
>
>
> <?xml version="1.0" encoding="UTF-8"?>
> <beans xmlns:jms="http://servicemix.apache.org/jms/1.0"
>         xmlns:tutorial="urn:org:apache:servicemix:tutorial:camel"
>>
>
>      <jms:provider service="tutorial:jms"
>                    endpoint="provider"
>                    destinationName="tutorial.camel.queue"
>                    connectionFactory="#connectionFactory" />
>
>      <jms:consumer service="tutorial:jms"
>              endpoint="consumer"
>              destinationName="tutorial.camel.queue"
>              connectionFactory="#connectionFactory"
>              targetService="tutorial:jms"
>              targetEndpoint="consumer" />
>
>    <bean id="connectionFactory" class="org.apache.activemq.ActiveMQConnectionFactory">
>      <property name="brokerURL" value="tcp://localhost:51616" />
>    </bean>
>
> Matthieu Cormier
> Cell: (902) 229-1677
> concertia Technologies Inc.
> 1869 Upper Water Street
> Halifax NS B3J 1S9
> www.concertia.com
>
>