Mailing List SVR
2014-05-08 08:31:46 UTC
Hi,
I'm generating a service from an existing wsdl (original.wsdl attached),
after creating the service the generated wsdl has some small difference
from the original one (cxf_generated.wsdl attached), if I create client
methods (using for example soapui) from the cxf generated wsdl all is
fine but if I use the original wsdl the requests they fail with the error:
"the given soapaction does not match an operation"
the problem is the SOAPAction http header, cxf expects no SOAPAction
header or an empty one, if you look at the wsdl generated by cxf you can
see a section not present in the original wsdl that define an empty soap
action:
<soap:operationsoapAction=""style="document"/>
after this section there is also the original one that define:
<soap:operationsoapAction="http://test.example.com//updateList"/>
I defined an interceptor that remove the SOAPAction http header if
present and this workaround what seems a cxf bug to me.
Obviously if someone give you a wsdl it use that wsdl to generate client
methods and not redownload the wsdl from your service.
What do you think about? Is this a cxf bug? Why cxf modify the original
wsdl used to generate java code?
thanks
Nicola
P.S. tested with both cxf 2.7.8 and 2.7.11
I'm generating a service from an existing wsdl (original.wsdl attached),
after creating the service the generated wsdl has some small difference
from the original one (cxf_generated.wsdl attached), if I create client
methods (using for example soapui) from the cxf generated wsdl all is
fine but if I use the original wsdl the requests they fail with the error:
"the given soapaction does not match an operation"
the problem is the SOAPAction http header, cxf expects no SOAPAction
header or an empty one, if you look at the wsdl generated by cxf you can
see a section not present in the original wsdl that define an empty soap
action:
<soap:operationsoapAction=""style="document"/>
after this section there is also the original one that define:
<soap:operationsoapAction="http://test.example.com//updateList"/>
I defined an interceptor that remove the SOAPAction http header if
present and this workaround what seems a cxf bug to me.
Obviously if someone give you a wsdl it use that wsdl to generate client
methods and not redownload the wsdl from your service.
What do you think about? Is this a cxf bug? Why cxf modify the original
wsdl used to generate java code?
thanks
Nicola
P.S. tested with both cxf 2.7.8 and 2.7.11