[
https://issues.apache.org/jira/browse/SLING-1700?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12903369#action_12903369
]
Felix Meschberger commented on SLING-1700:
------------------------------------------
You can "fix" the classloader issue if you set the thrad context class loader
before calling into the Velocity code (and reset afterwards, of course, to not
create memory holes).
We do this in a number of places in our script engines and it works flawlessly.
> however the scripting support does not appear to be tied to a specific
> velocity
good point.
> contrib/scripting/velocity embeds velocity, causing classloading issue at
> runtime
> ---------------------------------------------------------------------------------
>
> Key: SLING-1700
> URL: https://issues.apache.org/jira/browse/SLING-1700
> Project: Sling
> Issue Type: Bug
> Components: Scripting
> Environment: Felix 1.4, Sling 2.0.7, Apache Velocity 1.6.2
> Reporter: Olaf Otto
> Original Estimate: 2h
> Remaining Estimate: 2h
>
> Affects: Rev. 989119 of
> https://svn.apache.org/repos/asf/sling/trunk/contrib/scripting/velocity
> (2.0.0-SNAPSHOT)
> The maven-bundle-configuration in the pom of the velocity support module
> (https://svn.apache.org/repos/asf/sling/trunk/contrib/scripting/velocity/pom.xml)
> embeds a couple of dependencies:
> ...
> <Embed-Dependency>
> velocity;oro;commons-lang;inline=true
> </Embed-Dependency>
> ...
> However, these libraries are available as bundles and should not be embedded.
> In the case of velocity, this causes an issue when a apache velocity bundle
> is also deployed in felix, as the org.apache.velocity.runtime.log.LogChute
> interface is loaded from both the velocity scripting support bundle and the
> deployed apache velocity bundle:
> Suggested resolution: Remove the embedding. It is bad practice anyway. I've
> successfully tested this with the following maven-bundle-configuration
> configuration:
> <configuration>
> <instructions>
> <Private-Package>
> org.apache.sling.scripting.velocity
> </Private-Package>
> <Import-Package>
> org.apache.velocity.runtime.log,
> com.werken.xpath; javax.sql;
> org.apache.commons.*; org.apache.log.*;
> org.apache.log4j; org.apache.tools.ant.*;
> org.jdom.*;resolution:=optional, *
> </Import-Package>
>
> <ScriptEngine-Name>${pom.name}</ScriptEngine-Name>
>
> <ScriptEngine-Version>${pom.version}</ScriptEngine-Version>
> </instructions>
> </configuration>
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.