[ 
https://issues.apache.org/jira/browse/CAMEL-7122?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15105935#comment-15105935
 ] 

Paul McCulloch commented on CAMEL-7122:
---------------------------------------

I'm seeing what [~pm10] is reporting as well, this time in Karaf 2.4.3 with 
Camel 2.16.0 (Oracle JDK 1.8.0/64bit/Windows 7). It's transient for me as well, 
but only seems to occur after I delete the data/cache directory.  I install 
camel-script-javascript via a features.xml entry in the deploy directory.

I've done a fair bit of debugging into 
org.apache.camel.script.osgi.Activator.BundleScriptEngineResolver.getFactory() 
where the IsAssignableFrom check that [~pm10] mention is done. The classLoader 
of javax.script.ScriptEngineFactory is null when the issue occurs. I believe 
this is dues to that class being provided by the bootstrap classloader, which 
provides v0.0.0 of javax.script.

When the issue isn't occurring javax.script is being loaded from the bundle 
org.apache.servicemix.specs.scripting-api-1.0 which exports v1.0.0 of that 
package. That bundle is part of the camel-script-javascript feature.

camel-script doesn't import a specific version of javax.script which I think is 
at least part of the issue.

My workaround is to edit Karaf's jre.properties and remove javax.script from 
the list of JVM provided packages, so the servicemix provided bundle is the 
only provider of the problematic package.

> javascript language not resolving
> ---------------------------------
>
>                 Key: CAMEL-7122
>                 URL: https://issues.apache.org/jira/browse/CAMEL-7122
>             Project: Camel
>          Issue Type: Improvement
>          Components: camel-script, osgi
>    Affects Versions: 2.10.0
>         Environment: JBoss Fuse 6.0.0, windows
>            Reporter: Steve Murphy
>            Assignee: Claus Ibsen
>            Priority: Minor
>              Labels: javascript
>             Fix For: 2.12.3, 2.13.0
>
>
> .when().javascript("3 > 1 + 1") causes bundle not to be loaded, with the 
> following error:
> ERROR | BluePrinntContainerImpl | Bundle my-service is waiting for 
> dependencies
> [(&(language=js)(objectClass=org.apache.camel.spi.LanguageResolver))]
> It seems that the javascript language is not registered correctly.
> Adding a custom Activator to register languages found by all 
> ScriptEngineFactory's, and registering Rhino engine as "js" instead of 
> "ECMAScript" seems to solve the problem.
> This problem is in 2.10.0. I have no idea if it has been fixed in other 
> versions.
> Can someone please check .javascript() functionality in 2.11? Since if it has 
> indeed been fixed in future versions, then this bug can be closed :)
> Workaround posted here:
> http://stackoverflow.com/questions/20997276/jboss-fuse-apache-camel-wont-resolve-language-js-javascript-for-bundle



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to