On Wed, Sep 29, 2010 at 10:02 AM, ant elder <[email protected]> wrote: > On Wed, Sep 29, 2010 at 8:52 AM, Florian MOGA <[email protected]> wrote: > >> @Ant: What kind of sample are you thinking of in order to show the >> sca-contribution.xml file? Can you give me an example (maybe an itest)? > > There are a couple of issues we need to decide on, one is how to run > the getting started contributions and the other is how to invoke the > services. I've been wondering about using the shell as the approach to > run things but its not that clear yet if everyone likes the shell and > there is some work to do to get it to work beautifully. I've also been > wondering if we really need separate contributions for absolutley > everything and maybe it might be simpler is some contributions include > several composites. But here's a rough outline of the sort of thing > i've been thinking might work: > > 1) helloworld > Start the shell and do: > > install helloworld-contribution.jar -start > > The helloworld contribution would have an sca-contribution.xml > defining the helloworld.composite as deployable and the component impl > would have @Init and @EagerInit so you'd see "Hello world" printed on > the console. > > 2) helloworld with a ws binding. Either a speperate contribution or > include a helloworldws.composite in the helloworld contribution. The > composite has the helloworld component with the service using > binding.ws. In the shell do "installed" to see the installed > contributions and the composites in there and then: > > start helloworld-contribution helloworldws.composite > > That will start the ws endpoint and you'll see the url printed on the > console. You can then do a ?wsdl on that url in a browser to see the > wsdl but it would be nice to actually invoke the service. To do that > we could have some Java ws client to run but that needs build scripts > etc which makes it complicated, i found a html page client in > servicemix that we could try which i've committed in > getting-started/wsClinet.html. > > 3) Next we could do a new contribution that uses <include> or > <implementation.composite> (perhaps named scdl-include-contribution) > taht uses the helloworld.composite from (1). That wont work as the > helloworld-contribution doesn't export its resources so this step > could show using overiding that with an external sca-contribution.xml. > So in the shell uninstall helloworld-contribution and then do: > > install helloworld-contribution.jar -metaData -metadata > new-sca-contribution.xml > install scdl-include-contribution -start > > And that should show the included component output again. > > 4..x) continue on like that showing all the things we want to do, > changing helloworld to using <implementation.spring> instead of > <implementation.java>, scopes, callbacks, scdl <wire>, adding external > .composte files to a contribution etc using new contributions and > external side files as necessary. > > It would be nice is you could configure a bunch of contribution and > composites in the shell and then have a save command that writes out > teh contributions and a node config xml file that you can then use in > a standalone Java program or webapp to run what you'd configured. > > Anyway, how does that sound? If it doesn't use the shell then you need > lots of launchers and standalone Java programs to run all the thinngs > along with Maven and Ant build scripts to run them all and it might > start looking a bit complicated. > > ...ant >
So we can see what that would be like i've add the (1) (2) and (3) of that to the getting-started samples. You can run the shell without having a full distribution build by getting the base-nodep jar from https://repository.apache.org/content/repositories/snapshots/org/apache/tuscany/sca/shades/tuscany-base-nodep/2.0-SNAPSHOT/tuscany-base-nodep-2.0-20100929.095517-1.jar and running it with java -jar tuscany-base-nodep-2.0-20100929.095517-1.jar If you've built the getting started samples and start the shell when you in the samples\getting-started directory you can then do: 1) install helloworld-contribution\target\helloworld-contribution.jar -start 2) start helloworld-contribution helloworldws.composite see the service wsdl in a browser going to http://localhost:8085/HelloworldComponent/Helloworld?wsdl open the wsClient.html in a browser and click send you should see the xml response 3) remove helloworld-contribution install helloworld-contribution\target\helloworld-contribution.jar -metadata new-sca-contribution.xml install scdl-include-contribution\target\scdl-include-contribution.zip -start ...ant
