I have been struggling with this problem for more than a week. I have a third-party WCF webservice which works with WSDualHttpBinding. I have wsdl file from them, and I am trying to communicate. I used:
- Metro which generates Java code. I tried it but it didn't work. There was a problem something like {tempuri.org}//WebServiceName is not a proper name. List of webservices are:...
- SoapUI - I tried to communicate, and I got 202 accepted. I used wireshark and it seems like webservice can't proceed the soap xml properly. I am not really sure if soapUI is supprting WSDualHttpBinding.
I really appreciate any hints, articles or solutions.
I'm not sure dual binding is interoperable with clients other than WCF. I read once that Metro (WSIT) stack for Java supports it. But the safest will be to use a WCF client.
The reason is that the dual binding assumes the client should get messages from the server in a callback endpoint. This is not so standard, also in terms of defining this properly in a WSDL file. You might be able to get away with it by setting up a dedicated server on your client side waiting for the WCF response. But the wiring will be time consuming.
If you own the server you might want to make it more explicit that the client is supposed to have a server endpoint to get callbacks to or you could use some WCF router as an intermediate.
UPDATE: check this link to read why WSDualHttpBinding is not interoperable with Java