Hi, Manu.

Welcome to Tuscany and thank you for looking into Tuscany/Geronimo integration.

Please see my comments inline below.

Thanks,
Raymond

----- Original Message ----- From: "Manu George" <[EMAIL PROTECTED]>
To: <tuscany-dev@ws.apache.org>
Sent: Tuesday, May 22, 2007 1:00 PM
Subject: Re: Tuscany sample app


Hi,
       I am new to this list and product. I just wanted to know if
there is any work going on in implementing deep integration with
apache geronimo app server. If it is going on I am volunteering to
help. If not I would again like to volunteer to take up that task
along with anyone else interested.

It would be really great that we start the Tuscany/Geronimo integration now as we have a stable Tuscany code base (the 0.90 relase are being voted on). A few of other folks have also expressed their interests in this area. Let's keep all the discussions on this ML so that all of us can participate.

I'm not sure what's the best way to


Currently I have experimented a bit with deep integration and got the
calculator service to deploy on geronimo.What I have achieved is the
ability to deploy Tuscany services on geronimo packaged in a jar with
a geronimo specific deployment descriptor.

This is a very good step forward. Did you use the geronimo module plan for the jar?


What I have done is created a new Domain class GeronimoSCADomain and
the only difference of this from default SCA domain is that it takes a
ReallySmallRuntime as a parameter instead of creating it. So
effectively one Runtime can be shared among all the SCADomains. I am
assuming that there will be a single SCADomain per application and all
SCADomains will share the same Runtime. Due to my lack of tuscany
knowledge I am not sure if this is the way to go about it. Can any one
of the tuscany gurus clarify if this is the correct approach?


The SCA domain is a collection of runtimes that can host SCA composites. The domain is logically represented as a SCA composite which include all the deployable composites activated by all runtimes in the SCA domain. A SCA domain can span multiple machines over the network. It consists of all the runtimes that run SCA applications.

I was unable to understand the need to create multiple runtimes for
each sca domain (other than for the web app based integration). If
there are any other reasons can someone please explain why we need a
runtime per app?

Other things that i am experimenting with is the ability to package
the tuscany service along with an ear/war/ejb-jar.


The SCA spec defines a loosely-formed packaging scheme for SCA composites. Basically, it is the "contribution" concept. A contribution is some kind of archive such as a folder, a zip, a jar, a rpm, or a EAR. The only requirement is that the artifacts in the contribution can be represented as URIs in the hierarchy.

In Tuscany, we have the Contribution service which provides a framework to plug in Package processors and Artifact processors.

You can find more information here:
http://cwiki.apache.org/confluence/display/TUSCANY/Java+SCA+Architecture+Guide

I am binding the SCADomains created to global jndi and so applications
can access the domains from there and invoke services on them.


This is one way to manage the SCA domain metadata. Then the EE applications can look up the SCADomain from JNDI and then gain access to the SCA services.

Thinks that need to be done(not yet thought of how to implement are)
1) Make geronimo resources (Database pools,JMS resources, EJB
references, Gbean references )available to Tuscany


In SCA, we can use reference and binding to access non-SCA services such as WS, EJB, JMS. This makes external services consumeable by SCA components.

I'm not very sure how to expose other JEE resources such as DataSource, JMS QCF to SCA components. Maybe a reference with autowire? Maybe a @Resource annotation?

2) Make Tuscany services accessible accross app servers

There is another important aspect. SCA component services can be promoted over various bindings. This way, the SCA service can be exposed over protocols such as Web Service, EJB, JSONRPC, RMI. Non-SCA client (such as JEE artifacts) can be then access the promoted SCA services over the protocols without knowing SCA. Of course, other SCA components can talk to these promoted services using the bindings too.

3) Other things i have missed :)

It would be great if someone could advise me on the tuscany side of
these matters.

Thus I conclude my first post on the tuscany dev list :)

Thanks
Manu






On 5/15/07, Luciano Resende <[EMAIL PROTECTED]> wrote:
The suspicious code was identified on the Contribution Service, and Tuscany M2 does not have this service available, that would explain why there is no
issues with M2.


On 5/10/07, Manu George <[EMAIL PROTECTED]> wrote:
> Hi Jay,
>
> Cool, I have not yet tried the trunk of tuscany. I will try it out with
your fix
>
> Regards
> Manu
>
> On 5/10/07, Jay D. McHugh <[EMAIL PROTECTED] > wrote:
> > I changed my mind.
> >
> > I just went to look at M2 and -way- too much has changed since then.
> >
> > I don't think it would be worthwhile to try it just to see.
> >
> > Cool that it worked though.
> >
> >
> > Jay
> >
> > Jay D. McHugh wrote:
> > > Hey Manu,
> > >
> > > The versions that had trouble were trunk of both.
> > >
> > > I'm surprised that M2 worked (I'll have to try it just to see).
> > >
> > >
> > >
> > > Jay
> > >
> > > Manu George wrote:
> > >> Hi Jay,
> > >>         I was able to deploy the tuscany calculator webapp (M2
> > >> version) on the current geronimo trunk w/o any issues. Probably I > > >> was
> > >> lucky in selecting my versions :). Which version of Geronimo and
> > >> Tuscany were giving the problem?
> > >>
> > >> Regards
> > >> Manu
> > >>
> > >> On 5/10/07, Luciano Resende < [EMAIL PROTECTED]> wrote:
> > >>> Hey Jay, this is very good news, thanks for your help.
> > >>>
> > >>> As for the issue you mentioned, this is done while the Tuscany is
> > >>> scaning and opening the necessary artifacts to process... let me
look
> > >>> at that code in the Tuscany side and check what I can do.
> > >>>
> > >>> I'ĺl let you know about any progress...
> > >>>
> > >>>
> > >>> On 5/9/07, Jay D. McHugh <[EMAIL PROTECTED]> wrote:
> > >>> > I didn't say, but in order to get the app to deploy in Geronimo > > >>> > I
> > >>> had to
> > >>> > comment out the close() in IOHelper.
> > >>> >
> > >>> > Jay
> > >>> >
> > >>> > Jay D. McHugh wrote:
> > >>> > > Hello all.
> > >>> > >
> > >>> > > Well after wandering through class loaders and deployment
> > >>> managers, I
> > >>> > > finally managed to get the Tuscany calculator sample webapp > > >>> > > to
> > >>> deploy
> > >>> > > and run under Geronimo.
> > >>> > >
> > >>> > > And, the problem that made it so hard wasn't even in Geronimo
(at
> > >>> > > least not directly).
> > >>> > >
> > >>> > > Tuscany is using a helper class when scanning jar files > > >>> > > during
> > >>> startup
> > >>> > > (IOHelper).
> > >>> > >
> > >>> > > That class closes the jar file at the same time as it closes > > >>> > > the
> > >>> input
> > >>> > > stream based on the jar file (as recommended by Sun -
> > >>> > >
http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4950148).
> > >>> > >
> > >>> > > Tomcat doesn't mind having the jar file get closed - Geronimo
does.
> > >>> > >
> > >>> > > Does anyone have any comments on this?
> > >>> > >
> > >>> > > Does anyone know if Tomcat is built to reopen closed jars?
> > >>> > >
> > >>> > > Can Tuscany be changed to stop closing the jar file?
> > >>> > >
> > >>> > > Comments?
> > >>> > >
> > >>> > >
> > >>> > > Jay
> > >>> > >
> > >>> > >
> > >>> > > .
> > >>> > >
> > >>> >
> > >>>
> > >>>
> > >>> --
> > >>> Luciano Resende
> > >>> http://people.apache.org/~lresende
> > >>>
> > >
> > >
> > >
> >
>



--

Luciano Resende
http://people.apache.org/~lresende



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

Reply via email to