[ 
https://issues.apache.org/jira/browse/TUSCANY-1487?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12516094
 ] 

Mark Combellack commented on TUSCANY-1487:
------------------------------------------

I am not sure of the best solution to this problem. Possible solutions include:

*) Update DefaultSCADomain to once again pass in a ModelResolver in step 4 
above - i.e. roll out the change from SVN commit 558587

*) Update contributionService.contribute() method to allow passing in of an 
Application Class Loader. This passed in Application class loader would then be 
used to create the ExtensibleModelResolver in step 6

*) Update ContributionServiceImpl.addContribution() to use 
Thread.currentThread().getContextClassLoader() rather than 
getClass().getClassLoader() when constructing the ExtensibleModelResolver in 
step 6

*) Some other inspired, cunning and clever solution thought of by the Tuscany 
team :-)


Any thoughts/recommendations?

> Unable to use different application and runtime class loaders for a 
> contribution
> --------------------------------------------------------------------------------
>
>                 Key: TUSCANY-1487
>                 URL: https://issues.apache.org/jira/browse/TUSCANY-1487
>             Project: Tuscany
>          Issue Type: Bug
>          Components: Java SCA Core Runtime
>    Affects Versions: Java-SCA-Next
>            Reporter: Mark Combellack
>            Priority: Minor
>             Fix For: Java-SCA-Next
>
>
> I have the scenario where I am attempting to deploy an application where:
>     Runtime Class Loader -> Contains all Tuscany classes
>     Application Class Loader -> Contains SCA application classes and has 
> Runtime Class Loader as parent
> I am currently getting the following exception:
> Note: I've cut company releated information from the stack trace.
> Caused by: org.osoa.sca.ServiceRuntimeException: 
> org.osoa.sca.ServiceRuntimeException: 
> org.apache.tuscany.sca.contribution.service.ContributionResolveException: 
> java.lang.ClassNotFoundException: 
> net.******.sca.sample.appname.impl.******Impl
>         at 
> org.apache.tuscany.sca.host.embedded.SCADomain.createNewInstance(SCADomain.java:264)
>         at 
> org.apache.tuscany.sca.host.embedded.SCADomain.newInstance(SCADomain.java:69)
>         at ******
>         ... 18 more
> Caused by: org.osoa.sca.ServiceRuntimeException: 
> org.apache.tuscany.sca.contribution.service.ContributionResolveException: 
> java.lang.ClassNotFoundException: 
> net.******.sca.sample.appname.impl.******Impl
>         at 
> org.apache.tuscany.sca.host.embedded.impl.DefaultSCADomain.<init>(DefaultSCADomain.java:115)
>         at 
> org.apache.tuscany.sca.host.embedded.SCADomain.createNewInstance(SCADomain.java:230)
>         ... 20 more
> Caused by: 
> org.apache.tuscany.sca.contribution.service.ContributionResolveException: 
> java.lang.ClassNotFoundException: 
> net.******.sca.sample.appname.impl.******Impl
>         at 
> org.apache.tuscany.sca.implementation.java.xml.JavaImplementationProcessor.resolve(JavaImplementationProcessor.java:113)
>         at 
> org.apache.tuscany.sca.implementation.java.xml.JavaImplementationProcessor.resolve(JavaImplementationProcessor.java:49)
>         at 
> org.apache.tuscany.sca.contribution.processor.ExtensibleStAXArtifactProcessor.resolve(ExtensibleStAXArtifactProcessor.java:102)
>         at 
> org.apache.tuscany.sca.assembly.xml.BaseArtifactProcessor.resolveImplementation(BaseArtifactProcessor.java:387)
>         at 
> org.apache.tuscany.sca.assembly.xml.CompositeProcessor.resolve(CompositeProcessor.java:565)
>         at 
> org.apache.tuscany.sca.assembly.xml.CompositeProcessor.resolve(CompositeProcessor.java:66)
>         at 
> org.apache.tuscany.sca.contribution.processor.ExtensibleStAXArtifactProcessor.resolve(ExtensibleStAXArtifactProcessor.java:102)
>         at 
> org.apache.tuscany.sca.assembly.xml.CompositeDocumentProcessor.resolve(CompositeDocumentProcessor.java:86)
>         at 
> org.apache.tuscany.sca.assembly.xml.CompositeDocumentProcessor.resolve(CompositeDocumentProcessor.java:43)
>         at 
> org.apache.tuscany.sca.contribution.processor.ExtensibleURLArtifactProcessor.resolve(ExtensibleURLArtifactProcessor.java:73)
>         at 
> org.apache.tuscany.sca.contribution.service.impl.ContributionServiceImpl.processResolvePhase(ContributionServiceImpl.java:412)
>         at 
> org.apache.tuscany.sca.contribution.service.impl.ContributionServiceImpl.addContribution(ContributionServiceImpl.java:339)
>         at 
> org.apache.tuscany.sca.contribution.service.impl.ContributionServiceImpl.contribute(ContributionServiceImpl.java:154)
>         at 
> org.apache.tuscany.sca.host.embedded.impl.DefaultSCADomain.<init>(DefaultSCADomain.java:113)
>         ... 21 more
> Caused by: java.lang.ClassNotFoundException: 
> net.******.sca.sample.appname.impl.******Impl
>         ... 35 more

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to