cxf-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Dan Diephouse <...@envoisolutions.com>
Subject Re: Where do all the protocols come from in the DestinationFactoryManager?
Date Fri, 20 Oct 2006 02:48:15 GMT
Hi David,
These uris come from extension in the WSDL. You shouldn't have to 
register the "http://schemas.xmlsoap.org/wsdl/soap/" one as that is for 
the SoapDestinationFactory and also I don't think you should have to use 
XMLConstants.NS_XML_FORMAT.

The best way to prevent the jetty destination factory from being 
registered in your case is to override its registered namespaces as you 
have done.  You can see the namespaces that a transport is registered 
for in the cxf-extension.xml file in the module.

Hope that helps,
- Dan

David Jencks wrote:
> Working on the cxf-geronimo integration I finally convinced cxf to 
> stop trying to create a jetty5 server by replacing all the registered 
> destination factories in the DestinationFactoryManager:
>
>         DestinationFactoryManager destinationFactoryManager = 
> bus.getExtension(DestinationFactoryManager.class);
>         DestinationFactory factory = new GeronimoDestinationFactory(bus);
>         
> destinationFactoryManager.registerDestinationFactory("http://cxf.apache.org/transports/http/configuration",

> factory);
>         
> destinationFactoryManager.registerDestinationFactory("http://www.w3.org/2003/05/soap/bindings/HTTP/",

> factory);
>         
> destinationFactoryManager.registerDestinationFactory("http://schemas.xmlsoap.org/soap/http",

> factory);
>         
> destinationFactoryManager.registerDestinationFactory("http://schemas.xmlsoap.org/wsdl/http/",

> factory);
>         
> destinationFactoryManager.registerDestinationFactory("http://schemas.xmlsoap.org/wsdl/soap/",

> factory);
>         
> destinationFactoryManager.registerDestinationFactory("http://schemas.xmlsoap.org/wsdl/soap/http",

> factory);
>         
> destinationFactoryManager.registerDestinationFactory(XMLConstants.NS_XML_FORMAT, 
> factory);
>         EndpointImpl publishedEndpoint = publishEndpoint(target);
>         destination = (GeronimoDestination) 
> publishedEndpoint.getServer().getDestination();
>
>
> (there were actually a couple others that don't seem to cause 
> immediate problems)
>
> geronimo is listening for http requests and feeding them into cxf, 
> which seems to take over the function of the HTTPFactory that was 
> previously registered, I have to wonder what the function of 
> registering these protocols is, whether they all need to be 
> registered, and if not how to prevent the jetty5 destination factory 
> from being registered.
>
> thanks
> david jencks
>


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


Mime
View raw message