Alessio Soldano [http://community.jboss.org/people/alessio.soldano%40jboss.com] 
replied to the discussion

"CXF jms integration"

To view the discussion, visit: http://community.jboss.org/message/540180#540180

--------------------------------------------------------------
Hi Jim,
I've taken a look at what you did in your jms-integration branches and have 
some questions / concers I'd like to discuss here. First of all let me 
summarize what you've done, so we're sure that we're all on the same page.
You basically added a deployment descriptor (jbossws-endpoints.xml) parsing 
that produces some new metadata in SPI 
(org.jboss.wsf.spi.metadata.endpoints.EndpointsMetaData). Those are later 
attached to the Deployment and used by EndpointsDescriptorsDeploymentAspect 
(cxf stack) to produce an instance of 
org.jboss.wsf.spi.metadata.endpoints.AbstractEndpointsDeployment (namely 
org.jboss.wsf.stack.cxf.deployment.CXFEndpointsDeployment), with a spring 
configuration file generated from the metadata. CXFEndpointsDeployment is later 
deployed by the KernelDeploymentDeployer and is responsible for generating the 
CXF Bus through the BusHolder, creating a new spi endpoint and adding it to the 
registry. Before handing over to the KernelDeploymentDeployer, the 
WSEndpointsRealDeployer (container integration) sets the proper depedencies for 
ensuring the bean is deployed after any JMS destination bean attached to the 
current deployment unit.

This said, here are my comments:
* jbossws-endpoints.xml: generally speaking, I would allow users to avoid 
providing that in most cases. AFAICS, the reason for that file is just in 
getting the information on which jms destinations are to be used for the 
endpoints included in the deployment. I think this can also be specified 
through a user provided jboss-cxf.xml, hence we need to allow for that too. 
Moreover, something else we should probably evaluate implementing (perhaps in 
CXF?) is an annotation for setting those destinations on the endpoint class 
(@JMSTransport or something like that). That said, yes, a user might still want 
to use xml for providing that info, in which case a configuration file like 
jbossws-endpoints.xml is fine. But I'd make that more JMS specific, as there's 
no need for it being generally for every endpoints, given http endpoints 
already have all the means of configuration in jbossws. So probably something 
like jms-endpoints.xml should be ok. Also the metadata naming should probably 
be reviewed
* new SPI metadata: besides the naming not completely convincing me, I think 
the few info we need (jms destination addresses currently) should live at the 
Endpoint level, not higher than that and separated from that as they currently 
are in jms-integration branch. Jim, did you evaluate having a hierarchy for the 
SPI Endpoint (with the current one becoming HttpEndpoint and a new JMSEndpoint 
having the destinations' info)? Still on this topic, we might probably create 
the SPI JMSEndpoint at the same time as the Http one (currently the 
WSDeploymentBuilder::build seems to me to be creating the Deployment only, 
while the Endpoint is actually created later by the CXFEndpointsDeployment). 
The CXFEndpointsDeployment should probably just do the endpoint registration 
(perhaps even that can unified..?), with already existing spi endpoints
* WSEndpointsReadDeployer: while I was not able to think about this solution 
before for the destinations dependency management, what I don't like here is 
that it's not part of our DA group. Where does it run in the deployers' chain? 
can we unify things here (make it a DA)?
* do you already know whether the proposed architecture is going to work with 
CXF 2.3 SOAP-over-JMS-1.0 support too ( 
http://cxf.apache.org/docs/soap-over-jms-10-support.html 
http://cxf.apache.org/docs/soap-over-jms-10-support.html)?
Thanks

--------------------------------------------------------------

Reply to this message by going to Community
[http://community.jboss.org/message/540180#540180]

Start a new discussion in JBoss Web Services Development at Community
[http://community.jboss.org/choose-container!input.jspa?contentType=1&containerType=14&container=2047]

_______________________________________________
jboss-user mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/jboss-user

Reply via email to