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