On Jan 19, 2007, at 1:08 AM, Lasantha Ranaweera wrote:

Hi,

I have been working with the Geronimo Axis2 integration and following the foot steps of the CXF and Axis implementations of Geronimo. Finally this integration will provide one of the JAXWS integrations of the Geronimo ;-) . In the Axis 1 integration there is a class called AxisServiceRefBuilder which extends AbstractNamingBuilder. Do we need a same kind of class for the Axis2 integration too considering the above requirement? (CXF module has not implemented this kind of class yet but it has been commented out in the config.xml).

If anybody explain bit more in depth on this AbastractNamingBuilder class and it's effect to the JEE it would be great help for my work since it looks bit more complicated for me now :-) .

We definitely need one of these for axis2 and one for cxf. They deploy web service clients. For example, if your ejb needs to access a web service, it declares a service-ref in its deployment descriptor (there's probably a way to do this with annotations as well) and we have to set up a web service client and bind it into the local jndi context for that ejb.

There are several steps a naming builder can take:

buildEnvironment. Here the builder should figure out if it's going to need to do anything and if so add the defaultEnvironment it's configured with to the supplied environment. This means that if you don't use web services, the ws classes don't need to be there, and if you do use web services, they will be available.

initContext: Here you can add stuff to the shared context that other naming builders can use. I don't think this is going to be useful for ws client builders. In the future if we get the service builders to use the same interface we might be able to use this to construct shortcuts so use of a ws in the same app it's supplied in doesn't have to go through tcp/ip..... this is far in the future.

buildNaming: Here you actually construct something that will make the web service client exist when the app is run, put whatever gbeans you need into the deployment context, and add a naming reference into the map that will populate the jndi tree.

Hope this helps,
david jencks


Thanks in Advance,
Lasantha Ranaweera

Reply via email to