Hi Andrea,

Yes, we can handle this directly in CxfBcConusmer, you need configure two cxf bc consumer endpoint, one for soap11 and one for soap12. In your wsdl, you must have two ports associated with differenet bindings, one for soap11 and one for soap12, right? So you can configure two cxf bc consumer endpoints, whose endpoint name is the port name from your wsdl, you can use same locationURI for those two endpoint. By this way, both soap11 binding and soap12 binding is supported with same locationURI.

Regards
Freeman

Andrea Zoppello wrote:
Hi,

It's just an idea, but if this is possible why not to handle this directly in CxfBcConsumer??

Andrea
Freeman Fang ha scritto:
Hi Andrea,

Yeah, I have tried it.
You won't see the port already in use exception, since in cxf we use jetty to publish the endpoint underlying, so jetty will take care of it, something like different context handler for different endpoint.

Regards

Freeman

Andrea Zoppello wrote:
Hi,

Are you sure have you tried???
In my opinion you'll have a port already in use exception.

Andrea
Freeman Fang ha scritto:
Hi Andrea,

Yeah, you can publish those two endpoints with same locationURI with cxf as well.

Regards

Freeman

Andrea Zoppello wrote:
Yes i've just think about that could but in that case i must use two different url ( one for each endpoint )
instead  i want to use the same uri.

This is a very common use case in integrattion scenario, when you need the same webservice supporting more bindings

With Axis2 this is possible, You shoul consider to add this capabilities to cxf too.

Andrea

Freeman Fang ha scritto:
Hi Andrea,
You can expose same webservice both on soap11 and soap12 by using two cxf bc consumer endpoint with different endpointName.
Regards
Freeman

Andrea Zoppello wrote:
Hi all,

I'm trying to expose using a cxf consumer a webservice that must expose ( against the same port type )
two port ( one for soap 11 and one for soap 12 ).

The service part of the wsdl looks like:

<service name="DocumentRegistry_Service">
<port name="Service_Port_Soap11" binding="tns:Service_Binding_Soap11"> <soap:address location="http://servicelocation/DocumentRegistry_Service"/>
        </port>
<port name="Service_Port_Soap12" binding="tns:Service_Binding_Soap12"> <soap12:address location="http://servicelocation/DocumentRegistry_Service"/>
        </port>
    </service>



This is perfectly legal ( in Axis2 this is possible ) but the CXF Consumer code consider only one of the two ports when you deploy the endoint, this means that with cxf at the moment it's not possible to expose the same webservice both on
SOAP11 and SOAP12....

Any Idea on this??? In my opinion this is a limitation when comparing cxf with axis.

Do you plan to solve that problem??
Andrea



















Reply via email to