You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@camel.apache.org by Igor Stepanov <st...@gmail.com> on 2013/03/03 18:22:36 UTC

Fwd: Dependencies for Camel Core 2.10

Failed to send the mail to "issues@camel.apache.org", so trying this one.

---------- Forwarded message ----------
From: Igor Stepanov <st...@gmail.com>
Date: 2013/3/3
Subject: Dependencies for Camel Core 2.10
To: issues@camel.apache.org


Hi Apache Camel Community,

I'm a new user of this cool integration framework. While starting to
use it, I've found several problems and had not a very good time
solving them, so now I'd like to share some of that solutions with
you.

First of all I've used this page for the list of dependencies:
http://camel.apache.org/what-are-the-dependencies.html
In my opinion it requires to be updated a bit.

I've found out that for my case it wasn't complete. I use Weblogic 10
with Java 6 and Red Hat Linux.
Error:
"NoClassDefFoundError: org/osgi/framework/BundleActivator"
Root cause:
Class "org.apache.camel.impl.osgi.Activator" has a dependency for OSGI
interfaces, so a jar with them was required for Camel deployment. I've
added "osgi.core.jar" to the list of my server's libraries.
        <dependency>
            <groupId>org.osgi</groupId>
            <artifactId>org.osgi.core</artifactId>
            <version>5.0.0</version>
            <scope>runtime</scope>
        </dependency>

Error:
Logging is not working for Apache Camel - the appropriate log files
are created, but stay empty.
Root cause:
Both jdk and log4j binding libraries of slf4j are deployed on the
server. In my case I've updated "slf4j-api.jar" and
"slf4j-log4j12.jar" to the versions required by Camel and removed
"slf4j-jdk14.jar" from the server.
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-api</artifactId>
            <version>1.6.1</version>
            <scope>compile</scope>
        </dependency>
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-log4j12</artifactId>
            <version>1.6.1</version>
            <scope>runtime</scope>
        </dependency>

Error:
                java.lang.IllegalArgumentException: Source parameter
of type 'org.apache.camel.StringSource' is not compatible with result
parameter of type 'javax.xml.transform.stream.StreamResult'.
                    at
org.apache.xerces.jaxp.validation.StreamValidatorHelper.validate(Unknown
Source)
                    at
org.apache.xerces.jaxp.validation.ValidatorImpl.validate(Unknown
Source)
                    at
org.apache.camel.processor.validation.ValidatingProcessor.process(ValidatingProcessor.java:127)
                    at
org.apache.camel.impl.ProcessorEndpoint.onExchange(ProcessorEndpoint.java:101)
                    at
org.apache.camel.impl.ProcessorEndpoint$1.process(ProcessorEndpoint.java:71)
Root cause:
I had Apache Xerces version 2.9.1 and tried to use Camel 2.10.3/2.10.4
- error occures any time I try to use XSD validation. Than I tried
Camel 2.9.2 - everything was great.
To fix the same on 2.10.3/2.10.4 you require to update Xerces to
2.11.0, at least it works for me:
  <dependency>
    <groupId>apache</groupId>
    <artifactId>xerces</artifactId>
    <version>2.11.0</version>
    <scope>runtime</scope>
    <type>pom</type>
  </dependency>

P.S.: I've decided to move from 2.9.2 to 2.10.4 because unit tests
fail to launch on 2.9.2 for some reason. This investigation is still
in progress.

--
BR,
Igor Stepanov


--
BR,
Igor Stepanov

Re: Dependencies for Camel Core 2.10

Posted by Christian Müller <ch...@gmail.com>.
The issues@ mailing list is where all our JIRA notifications are posted to.
You cannot send messages to this list. And the users@ list is the right one.

Camel camel-core 2.11-SNAPSHOT has the following dependencies (the same for
2.10.x):
[INFO] org.apache.camel:camel-core:bundle:2.11-SNAPSHOT
[INFO] +-
com.googlecode.concurrentlinkedhashmap:concurrentlinkedhashmap-lru:jar:1.3.2:compile
[INFO] +- org.slf4j:slf4j-api:jar:1.6.6:compile
[INFO] +- org.osgi:org.osgi.core:jar:4.3.1:provided
[INFO] +- junit:junit:jar:4.11:test
[INFO] |  \- org.hamcrest:hamcrest-core:jar:1.3:test
[INFO] +- org.slf4j:slf4j-log4j12:jar:1.7.2:test
[INFO] |  \- log4j:log4j:jar:1.2.17:test (version managed from 1.2.17)
[INFO] +- org.easymock:easymock:jar:3.1:test
[INFO] |  +- cglib:cglib-nodep:jar:2.2.2:test
[INFO] |  \- org.objenesis:objenesis:jar:1.2:test
[INFO] +- xml-resolver:xml-resolver:jar:1.2:test
[INFO] \- com.sun.xml.bind:jaxb-impl:jar:2.2.6:compile

As you can see, there is only a runtime dependency to slf4j. The dependency
to concurrentlinkedhashmap-lru is "inlined" (we renamed the package and
inlined all needed classes). If you run in an OSGI environment, the
dependency to org.osgi.core is provided by the container (version 4.2.0 -
not 5.0.0).
May you use another Camel component (not in camel-core) which introduce
this dependency to Xerces?

Best,
Christian

On Sun, Mar 3, 2013 at 6:22 PM, Igor Stepanov <st...@gmail.com> wrote:

> Failed to send the mail to "issues@camel.apache.org", so trying this one.
>
> ---------- Forwarded message ----------
> From: Igor Stepanov <st...@gmail.com>
> Date: 2013/3/3
> Subject: Dependencies for Camel Core 2.10
> To: issues@camel.apache.org
>
>
> Hi Apache Camel Community,
>
> I'm a new user of this cool integration framework. While starting to
> use it, I've found several problems and had not a very good time
> solving them, so now I'd like to share some of that solutions with
> you.
>
> First of all I've used this page for the list of dependencies:
> http://camel.apache.org/what-are-the-dependencies.html
> In my opinion it requires to be updated a bit.
>
> I've found out that for my case it wasn't complete. I use Weblogic 10
> with Java 6 and Red Hat Linux.
> Error:
> "NoClassDefFoundError: org/osgi/framework/BundleActivator"
> Root cause:
> Class "org.apache.camel.impl.osgi.Activator" has a dependency for OSGI
> interfaces, so a jar with them was required for Camel deployment. I've
> added "osgi.core.jar" to the list of my server's libraries.
>         <dependency>
>             <groupId>org.osgi</groupId>
>             <artifactId>org.osgi.core</artifactId>
>             <version>5.0.0</version>
>             <scope>runtime</scope>
>         </dependency>
>
> Error:
> Logging is not working for Apache Camel - the appropriate log files
> are created, but stay empty.
> Root cause:
> Both jdk and log4j binding libraries of slf4j are deployed on the
> server. In my case I've updated "slf4j-api.jar" and
> "slf4j-log4j12.jar" to the versions required by Camel and removed
> "slf4j-jdk14.jar" from the server.
>         <dependency>
>             <groupId>org.slf4j</groupId>
>             <artifactId>slf4j-api</artifactId>
>             <version>1.6.1</version>
>             <scope>compile</scope>
>         </dependency>
>         <dependency>
>             <groupId>org.slf4j</groupId>
>             <artifactId>slf4j-log4j12</artifactId>
>             <version>1.6.1</version>
>             <scope>runtime</scope>
>         </dependency>
>
> Error:
>                 java.lang.IllegalArgumentException: Source parameter
> of type 'org.apache.camel.StringSource' is not compatible with result
> parameter of type 'javax.xml.transform.stream.StreamResult'.
>                     at
> org.apache.xerces.jaxp.validation.StreamValidatorHelper.validate(Unknown
> Source)
>                     at
> org.apache.xerces.jaxp.validation.ValidatorImpl.validate(Unknown
> Source)
>                     at
>
> org.apache.camel.processor.validation.ValidatingProcessor.process(ValidatingProcessor.java:127)
>                     at
>
> org.apache.camel.impl.ProcessorEndpoint.onExchange(ProcessorEndpoint.java:101)
>                     at
>
> org.apache.camel.impl.ProcessorEndpoint$1.process(ProcessorEndpoint.java:71)
> Root cause:
> I had Apache Xerces version 2.9.1 and tried to use Camel 2.10.3/2.10.4
> - error occures any time I try to use XSD validation. Than I tried
> Camel 2.9.2 - everything was great.
> To fix the same on 2.10.3/2.10.4 you require to update Xerces to
> 2.11.0, at least it works for me:
>   <dependency>
>     <groupId>apache</groupId>
>     <artifactId>xerces</artifactId>
>     <version>2.11.0</version>
>     <scope>runtime</scope>
>     <type>pom</type>
>   </dependency>
>
> P.S.: I've decided to move from 2.9.2 to 2.10.4 because unit tests
> fail to launch on 2.9.2 for some reason. This investigation is still
> in progress.
>
> --
> BR,
> Igor Stepanov
>
>
> --
> BR,
> Igor Stepanov
>



--