Date: 2004-06-26T09:55:23
   Editor: 203.94.92.227 <>
   Wiki: Apache Geronimo Wiki
   Page: http:/http:/wiki.apache.org/geronimo/EWSGeronimoIntegeration
   URL: 
http://wiki.apache.org/geronimo/http:/http:/wiki.apache.org/geronimo/EWSGeronimoIntegeration

   no comment

New Page:

== Geronimo – JSR-109 Service Impl Integration ==
Here I am trying to extend the Proposal by Luis and Jeremy Geronimov Axis 
Integration.

The geronimo – JSR-109 Service Impl integration basically consists in the 
definition of a deployment architecture that defines the way how web services 
are implemented in Geronimo server and a set of interfaces that will be used by 
classes responsible for the ws's deployment.

http://cvs.apache.org/viewcvs.cgi/*checkout*/ws-axis/contrib/ews/docs/images/ews-GerInt.gif

== How a web service request is served ==
A servlet listener that will wait for soap calls. This servlet provide by Axis 
will act as a JAX-RPC handler and will be in charge to dispatch request either 
to POJOs or EJBs. 
The Axis webapp will be deployed at startup. Or if It's possible as soon as 
JAX-RPC handler is need. 
There will be only one web-app where will reside the listeners and impl for the 
web ws, and the proxys to call the ejb service impl. 

== Deployment ==
 1. We will extend existing module in charge of WAR and EJB-JAR deployment, to 
take into consideration specific ws deployment files. 

 2. The Geronimo deployer will call the EWS tool and it will generate the 
implementation classes + DD looking at the web service module. The EWS will 
take care of the parsing of the JSR109 specific DD (webservice.xml file and 
jaxrpc mapping file.) For avoid the web.xml and ejb-jar.xml are parsed twice 
EWS hope to use Geronimo DD mechanism (to my understating that can done via 
GBeans.) But right now EWS use DOM to parse them. 

 3. The implementation classes will contains a web service. To deploy the 
webservice in the Axis 3 things should be done. 

  3.1. the classes in the webservice should be loaded to the WebContiner the 
web service can be deployed in Geronimo using the Axis AdminClient 

  3.2. The web service Client side stubs should be generated and the service 
interface (XXLocator) should be bind under the JNDI context. (if service 
mappings defined) The WSDL file of the Web service should be published in the 
JAXR registry 

  3.3. If the implementation bean is based on EJB the EWS will generate an EJB 
that used the Session Bean. The Geronimo EJB-Jar deployment support will be 
used to deploy the generated EJB. The EJB should be Bind under the JNDI name as 
given in the Open EJB DD generated by the EWS. 

  4. If we deployed the Axis webapp the first time a JAX-RPC handler is need, 
we will trigger an event that will do it 

== Concerns ==
 1. We have to be sure that the service has started after the web container, 
because our service depends on it. How do we manage dependencies?? 

 2. Is it possible to have more than one listener (JAX-RPC handler) 

 3. How the “extend existing module in charge of WAR and EJB-JAR deployment” is 
done and we should decide how the EWS called from the module. I think to read 
and Loading the web service module, Class loading and parsing (created DDBeans 
and pass them in if that works or should I create the DDBeans myself.) the 
ejb-jar.xml and web.xml file EWS can use Geronimo services. 

 4. To get the Geronimo Internal based implementation working. I think it is 
theoretically resolved but got to get it working. 



Reply via email to