[
https://jira.jboss.org/browse/JBTM-778?page=com.atlassian.jira.plugin.sys...
]
Mauro Molinari commented on JBTM-778:
-------------------------------------
I found the problem, that's my fault: I looked at the wrong type definition. The
correct one to look at is that defining the type for the input element of the
tBindingOperation type, which is tBindingOperationMessage:
<xs:complexType name="tBindingOperationMessage">
<xs:complexContent>
<xs:extension base="wsdl:tExtensibleDocumented">
<xs:attribute name="name" type="xs:NCName"
use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
So, here the name attribute is optional and the WSDL parser is coherent.
Anyway, please note that trying your original fix (<wsdl:input
name="wsat:Committed"> ), when exposing the web service CXF does not agree:
[cut]
Caused by: java.lang.IllegalArgumentException: An operation with name
[{http://docs.oasis-open.org/ws-tx/wsat/2006/06}CommittedOperation] already exists in this
service
at org.apache.cxf.service.model.InterfaceInfo.addOperation(InterfaceInfo.java:71)
[cut]
So the actual fix must be that of just removing the message attribute, as you said.
WSDL bindings in XTS code employ the wrong attribute in the
binding:operation:input/output declarations
-------------------------------------------------------------------------------------------------------
Key: JBTM-778
URL:
https://jira.jboss.org/browse/JBTM-778
Project: JBoss Transaction Manager
Issue Type: Bug
Security Level: Public(Everyone can see)
Components: XTS
Affects Versions: 4.12.0
Reporter: Andrew Dinn
Assignee: Andrew Dinn
Fix For: 4.13.0
The WSDL for the WSTX service bindings employs the invalid attribute "message"
for the binding:operation:input and binding:operation:output elements. The correct
attribute name is "name". e.g. in wscoor-activation-binding.wsdl the declaration
is
<wsdl:binding name="Activation_SOAPBinding"
type="wscoor:ActivationPortType">
<soap:binding style="document"
transport="http://schemas.xmlsoap.org/soap/http"/>
<wsdl:operation name="CreateCoordinationContextOperation">
<wsdl:input message="wscoor:CreateCoordinationContext">
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output
message="wscoor:CreateCoordinationContextResponse">
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
The correct version should be
<wsdl:binding name="Activation_SOAPBinding"
type="wscoor:ActivationPortType">
<soap:binding style="document"
transport="http://schemas.xmlsoap.org/soap/http"/>
<wsdl:operation name="CreateCoordinationContextOperation">
<wsdl:input name="wscoor:CreateCoordinationContext">
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output
name="wscoor:CreateCoordinationContextResponse">
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
According to a comment in the flle this was a workaround for an error in the com.ibm.wsdl
parsing which now appears to have been fixed. The WSDL should be updated accordingly.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://jira.jboss.org/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira