Thanks, i shall take a look at those links, actually I think I did already just copy some of the code from that testcase you mention.
Maybe you could take a look at the HotUpdatableSCADomain [1], particularly the initContributions method? All its really doing is starting a domain using multiple contributions, it only copies them to a temp location so the temp jars can be used in the classpath to avoid locking the original contribution jars. If the ContributionService can copy the contributions to its own repository and use that then that would fix this, although the import/export work and a separate classloader per contribution are probably required as well. One thing i couldn't see was how to get the sca-deployables.xml or META-INF/deployables composites picked up by the ContributionService if you've any hints about that? ...ant [1] https://svn.apache.org/repos/asf/incubator/tuscany/java/sca/modules/host-embedded/src/main/java/org/apache/tuscany/sca/host/embedded/impl/HotUpdatableSCADomain.java On 7/16/07, Luciano Resende <[EMAIL PROTECTED]> wrote:
So far, most if not all scenarios used today are not using the Contribution Repository (except for some test cases), so I can't really say we have it fully working supporting all corner cases and scenarios, that's why I said it's a "partial support for contribution repository". I also have a initial support for a Contribution Installer in my sandbox [1], if that's also interesting for your scenarios. It would be great if you could take a quick look at the Contribution Service Repository, and it would be great if we could enhance that to support your scenarios as well. Some more info is available at the Contribution/Deployment page at the wiki page [2] and you can also find some simple usage scenarios in Contribution test case[3]. If you have specific requirements or questions, please feel free to ask. [1] https://svn.apache.org/repos/asf/incubator/tuscany/sandbox/lresende/sca/modules/contribution-installer/ [2] http://cwiki.apache.org/confluence/display/TUSCANY/Deployment [3] https://svn.apache.org/repos/asf/incubator/tuscany/java/sca/itest/contribution/src/test/java/org/apache/tuscany/sca/test/contribution/ContributionServiceTestCase.java ---------- Forwarded message ---------- From: ant elder <[EMAIL PROTECTED]> Date: Jul 16, 2007 2:56 PM Subject: Re: Returning complex types from a service To: Luciano Resende <[EMAIL PROTECTED]> Cc: tuscany-dev <tuscany-dev@ws.apache.org> Could you say a bit more about what "partial support for a contribution repository" means? I ask as the HotUpdatableSCADomain currently implements its own repository, although looking when the distribution/webapp war is running then any contribution jar's are also getting copied into this other contribution service repository, though i don't think those jars are then actually used by the runtime. Looking now I can't see how to prevent that with the current ContributionService API as the contribute method that takes an InputStream doesn't include the boolean storeInRepository argument. But should HotUpdatableSCADomain actually be able to get rid of its own repository and use the contribution service one? ...ant On 7/16/07, Luciano Resende <[EMAIL PROTECTED]> wrote: > We have partial support for a contribution repository, and that is a > flag to tell contributionService to store the contribution in the > repository or not. > > On 7/16/07, ant elder < [EMAIL PROTECTED]> wrote: > > You can see the target directory is getting created within the Tomcat bin > > directory even just with the Tuscany samples like calculator-webapp. What is > > this for and the storeInRepository stuff about? > > > > ...ant > > > > On 7/16/07, Luciano Resende <[EMAIL PROTECTED]> wrote: > > > > > > Are you calling ContributionService.contribute yourself ? if so, > > > please make the storeInRepository to false and let me know if this > > > helps. > > > > > > > > > On 7/16/07, Robert Young < [EMAIL PROTECTED]> wrote: > > > > I don't think the problem is with the jsonrpc now actually. I have > > > > been playing around with removing services from the .composite file > > > > and the error occurs even when the jsonrpc binding is not mentioned. > > > > > > > > While making changes I started receiving a memory exception so I > > > > restarted Tomcat and now I'm getting an IO exception stating that it > > > > cannot create a directory target (trace below). I can change the > > > > permissions on the filesystem but it doesn't tell me where, do you > > > > know where I can find out? > > > > > > > > org.osoa.sca.ServiceRuntimeException: > > > > org.osoa.sca.ServiceRuntimeException: > > > > org.apache.tuscany.sca.core.runtime.ActivationException: > > > > java.io.IOException: Unable to create directory target > > > > at > > > org.apache.tuscany.sca.host.embedded.SCADomain.createNewInstance( > > > SCADomain.java:263) > > > > at org.apache.tuscany.sca.host.embedded.SCADomain.newInstance( > > > SCADomain.java:81) > > > > at org.apache.tuscany.sca.webapp.SCADomainHelper.initSCADomain( > > > SCADomainHelper.java:63) > > > > at > > > com.ipcmedia.nutch.webapp.context.NutchWebappContextListener.contextInitialized > > > (NutchWebappContextListener.java:83) > > > > at org.apache.catalina.core.StandardContext.listenerStart( > > > StandardContext.java:3764) > > > > at org.apache.catalina.core.StandardContext.start ( > > > StandardContext.java:4216) > > > > at org.apache.catalina.core.ContainerBase.addChildInternal ( > > > ContainerBase.java:760) > > > > at org.apache.catalina.core.ContainerBase.addChild ( > > > ContainerBase.java:740) > > > > at org.apache.catalina.core.StandardHost.addChild( > > > StandardHost.java:544) > > > > at org.apache.catalina.startup.HostConfig.deployWAR ( > > > HostConfig.java:825) > > > > at org.apache.catalina.startup.HostConfig.deployWARs( > > > HostConfig.java:714) > > > > at org.apache.catalina.startup.HostConfig.deployApps ( > > > HostConfig.java:490) > > > > at org.apache.catalina.startup.HostConfig.check( HostConfig.java > > > :1206) > > > > at org.apache.catalina.startup.HostConfig.lifecycleEvent ( > > > HostConfig.java:293) > > > > at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent( > > > LifecycleSupport.java:120) > > > > at org.apache.catalina.core.ContainerBase.backgroundProcess ( > > > ContainerBase.java:1306) > > > > at > > > org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren > > > (ContainerBase.java:1570) > > > > at > > > org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren > > > (ContainerBase.java:1579) > > > > at > > > org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run ( > > > ContainerBase.java:1559) > > > > at java.lang.Thread.run(Thread.java:595) > > > > Caused by: org.osoa.sca.ServiceRuntimeException: > > > > org.apache.tuscany.sca.core.runtime.ActivationException : > > > > java.io.IOException: Unable to create directory target > > > > at org.apache.tuscany.sca.host.embedded.impl.DefaultSCADomain > > > .<init>(DefaultSCADomain.java:89) > > > > at > > > org.apache.tuscany.sca.host.embedded.SCADomain.createNewInstance( > > > SCADomain.java:229) > > > > ... 19 more > > > > Caused by: org.apache.tuscany.sca.core.runtime.ActivationException: > > > > java.io.IOException: Unable to create directory target > > > > at > > > org.apache.tuscany.sca.host.embedded.impl.ReallySmallRuntimeBuilder.createContributionService > > > ( ReallySmallRuntimeBuilder.java:186) > > > > at > > > org.apache.tuscany.sca.host.embedded.impl.ReallySmallRuntime.start( > > > ReallySmallRuntime.java:93) > > > > at org.apache.tuscany.sca.host.embedded.impl.DefaultSCADomain > > > .<init>(DefaultSCADomain.java:86) > > > > ... 20 more > > > > Caused by: java.io.IOException: Unable to create directory target > > > > at > > > org.apache.tuscany.sca.contribution.service.util.FileHelper.forceMkdir ( > > > FileHelper.java:178) > > > > at > > > org.apache.tuscany.sca.contribution.service.impl.ContributionRepositoryImpl > > > .<init>(ContributionRepositoryImpl.java:84) > > > > at > > > org.apache.tuscany.sca.host.embedded.impl.ReallySmallRuntimeBuilder.createContributionService > > > (ReallySmallRuntimeBuilder.java:184) > > > > ... 22 more > > > > > > > > --------------------------------------------------------------------- > > > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > > > > > > > > > > > > -- > > > Luciano Resende > > > Apache Tuscany Committer > > > http://people.apache.org/~lresende > > > http://lresende.blogspot.com/ > > > > > > --------------------------------------------------------------------- > > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > > > > > > -- > Luciano Resende > Apache Tuscany Committer > http://people.apache.org/~lresende > http://lresende.blogspot.com/ > -- Luciano Resende Apache Tuscany Committer http://people.apache.org/~lresende http://lresende.blogspot.com/ --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]