JBOSS WS-AT with .NET/WCF Service SSL problems
Issue
- I am trying to call a WCF web service with enabled transaction flow from a Java client.
- The Java client is hosted in EAR application under JBoss EAP 6.1 and the call between Java client and WCF Service is over SSL.
- I have configured:
- Public interface to an public IP
- XTS URL to
https://<jboss server hostname>:8444/ws-c11/ActivationService wsdl-hostto JBoss server hostnamewsdl-portto8444.
- When I call the WCF Service, I got the following exception:
The flowed transaction could not be unmarshaled. The following exception occurred: The WS-AtomicTransaction protocol service could not unmarshal the flowed transaction. The following exception occured: A fault reply with code CannotCreateContext was received. The fault reason follows: CoordinationContext could not be created.
On MSDTC trace, the error is due to URL of registration service (http://<jboss server hostname>:8444/ws-c11/RegistrationService) sent in SOAP message:
<ExceptionType>System.ArgumentException, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</ExceptionType>
<Message>The provided URI scheme 'http' is invalid; expected 'https'.
Parameter name: via</Message>
<StackTrace>
at System.ServiceModel.Channels.TransportChannelFactory`1.ValidateScheme(Uri via)
at System.ServiceModel.Channels.HttpChannelFactory.ValidateCreateChannelParameters(EndpointAddress remoteAddress, Uri via)
at System.ServiceModel.Channels.HttpsChannelFactory.ValidateCreateChannelParameters(EndpointAddress remoteAddress, Uri via)
at System.ServiceModel.Channels.HttpsChannelFactory.OnCreateChannel(EndpointAddress address, Uri via)
...
The offending element is the WS-Addressing <Address> element under the WS-Coordination element in the SOAP response header:
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope">
<soap:Header>
<wscoor:CoordinationContext xmlns:env="http://www.w3.org/2003/05/soap-envelope" xmlns:ns4="http://www.w3.org/2005/08/addressing" xmlns:wscoor="http://docs.oasis-open.org/ws-tx/wscoor/2006/06" env:mustUnderstand="true">
<wscoor:RegistrationService>
<ns4:Address>http://<jboss server>:8444/ws-c11/RegistrationService</ns4:Address>
...
</wscoor:CoordinationContext>
</soap:Header>
</soap:Envelope>
Environment
- Red Hat JBoss Enterprise Application Platform (EAP) 6.x
- JBossWS-CXF
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase of over 48,000 articles and solutions.
Welcome! Check out the Getting Started with Red Hat page for quick tours and guides for common tasks.
