camel-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Daniel Lamb <dan...@discoverygarden.ca>
Subject camel-script not working with blueprint
Date Mon, 26 Jan 2015 21:20:53 GMT
I’m using openjdk 1.7.0_65 camel version 2.14.1 and I’ve run into difficulty trying to
use camel-script for javascript in a camel route using blueprint.  I’ve verified that camel-script
works fine when building a war with spring and deploying to a servlet container, but when
building a bundle with blueprint I get a timeout with a message like this when tests are attempted:


Bundle RouteTest is waiting for dependencies [(&(language=js)(objectClass=org.apache.camel.spi.LanguageResolver))].
 

I also get this error if i build with skipping tests (builds fine) and then deploy to an osgi
runtime.  I’ve tried both a brand new service mix (5.4.0) and karaf (2.3.7 after following
instructions on camel website).  Both the camel-script and camel-script-javascript features
are installed in both instances.  In both situations, the bundle gets put into the grace period
for a few moments and then eventually fails.

Both projects are simple edits of maven archetypes.  Relevant chunks of poms and route xmls:

For blueprint:

In the pom
    <dependency>
      <groupId>org.apache.camel</groupId>
      <artifactId>camel-core</artifactId>
      <version>2.14.1</version>
    </dependency>
    <dependency>
      <groupId>org.apache.camel</groupId>
      <artifactId>camel-blueprint</artifactId>
      <version>2.14.1</version>
    </dependency>
    <dependency>
      <groupId>org.apache.camel</groupId>
      <artifactId>camel-script</artifactId>
      <version>2.14.1</version>
    </dependency>

and in blueprint xml
    <camelContext xmlns="http://camel.apache.org/schema/blueprint">
        <route id="timer-to-log">
            <from uri="timer://foo?fixedRate=true&amp;period=10s"/>
            <transform>
              <javaScript>
                request.body = 'Hello OSGI Application, how are you?';
              </javaScript>
            </transform>
            <log message="From Javascript: ${body}" />
        </route>
    </camelContext>

For war:

In the pom
    <dependency>
      <groupId>org.apache.camel</groupId>
      <artifactId>camel-core</artifactId>
      <version>2.14.1</version>
    </dependency>
    <dependency>
      <groupId>org.apache.camel</groupId>
      <artifactId>camel-spring</artifactId>
      <version>2.14.1</version>
    </dependency>
    <dependency>
      <groupId>org.apache.camel</groupId>
      <artifactId>camel-script</artifactId>
      <version>2.14.1</version>
    </dependency>

and in the spring xml
    <camelContext xmlns="http://camel.apache.org/schema/spring">
        <route id="timer-to-log">
            <from uri="timer://foo?fixedRate=true&amp;period=10s"/>
            <transform>
              <javaScript>
                request.body = 'Hello Web Application, how are you?';
              </javaScript>
            </transform>
            <log message="From Javascript: ${body}" />
        </route>
    </camelContext>

I’ve seen https://issues.apache.org/jira/browse/CAMEL-7122, which is apparently resolved
in version 2.13.  I’ve also attempted the workaround explained by the original stack overflow
post http://stackoverflow.com/questions/20997276/jboss-fuse-apache-camel-wont-resolve-language-js-javascript-for-bundle,
but with no luck.

Are there any setup steps or other dependencies that I’m missing for this to work in osgi?
 
Mime
View raw message