geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Dan Diephouse <...@envoisolutions.com>
Subject CXF Geronimo Integration
Date Tue, 03 Oct 2006 18:19:00 GMT
David and I chatted a little bit online this weekend as we tried to 
bring each other up to speed on the respective areas so we could have a 
meaningful conversation about this. [1] I thought I'd take a little bit 
to summarize.

As I understand it, we would need to integrate CXF at two points. First, 
the deployment. We need to support JSR 109 deployment descriptors. 
Second, we need to support invoking EJBs.

For deployment, we can wire in JSR 109 descriptors into the service 
construction. In CXF we have a Service, which holds a WSDL like service 
model and information about CXF can invoke the server (like databinding 
info, interceptors/handlers, etc). Generally you create a Service from a 
ServiceFactory [2][3]. The base service factory 
(ReflectionServiceFactoryBean) can actually construct the service from 
WSDL using the WSDLServiceFactory or from introspection.  During this 
construction, ServiceConfigurations [4] can provide values for the 
service. There can be many of these. For instance, lets say we want to 
determine the namespace of the service. We can have a 
JaxWsServiceConfiguration which takes the namespace from the @WebService 
attribute.  If there is no specified namespace, the service factory will 
move to the DefaultServiceConfiguration which will create a namespace 
from the package name. With that all said - its easy to envision how a 
Jsr109ServiceConfiguration could be created to override values in the 
JAX-WS attributes. I still don't know enough about JSR109 to say if this 
will be sufficient though - It would be good to come up with a list of 
areas that JSR 109 affects.

The second area - EJB invocation - is a bit simpler. In CXF we have the 
concept of Invokers [5][6]. Invokers allow you to control how your 
object is invoked. You can supply your own object, scopes, etc. XFire 
had an EJB invoker [7] which I think is similar to what needs to happen 
here (although I know jack about EJBs, so I could be wrong). While the 
Invoker interface in CXF is slightly different, all the same information 
is there.

Are there other integration areas that I missed here? Anyone able to 
provide a more comprehensive view of what exactly we need to do in terms 
of JSR 109?

Cheers,
- Dan


1. http://dev.rectang.com/logs/codehaus/%23cxf/20061001.html
2. 
http://fisheye3.cenqua.com/browse/celtixfire/trunk/rt/frontend/simple/src/main/java/org/apache/cxf/service/factory/ReflectionServiceFactoryBean.java?r=450267#l287
3. 
http://fisheye3.cenqua.com/browse/celtixfire/trunk/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/support/JaxWsServiceFactoryBean.java?r=450397
4. 
http://fisheye3.cenqua.com/browse/celtixfire/trunk/rt/frontend/simple/src/main/java/org/apache/cxf/service/factory/AbstractServiceConfiguration.java?r=450267
5. 
http://fisheye3.cenqua.com/browse/~raw,r=437862/celtixfire/trunk/api/src/main/java/org/apache/cxf/service/invoker/Invoker.java
6. 
http://fisheye3.cenqua.com/browse/celtixfire/trunk/rt/core/src/main/java/org/apache/cxf/service/invoker/AbstractInvoker.java?r=447027
7. http://xfire.codehaus.org/Invokers


David Jencks wrote:
> I'm starting to look into jee5 webservices integration in geronimo.  
> So far I've got as far as locating some of the specs and starting to 
> read them :-).  If anyone wants to help or take over aspects of this 
> that would be great!
>
> Unfortunately I haven't been able to keep up with the dev lists for 
> either axis or cxf so I'm not sure whether anyone has thought about 
> this before nor how much of the appropriate specs are implemented 
> already by either project.  I have been pointed to a cxf geronimo 
> builder, but haven't determined how out of date it is, as there have 
> been quite a few builder changes in geronimo since the builder was 
> written.
>
> Thanks!
> david jencks
>


-- 
Dan Diephouse
Envoi Solutions
http://envoisolutions.com
http://netzooid.com/blog


Mime
View raw message