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]


Reply via email to