• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 611
  • Last Modified:

Help needed with connection to web service using a WSDL file in VB.NET

We have obtained a WSDL file ('non VB.NET') from a customer to use for making a connection with their web service. All the web service certificates are are installed correctly on both sides. When I use the WSDL file with soapUI then I can sent a request to the web service at a specified endpoint address without any problems. The response to the request is received correctly in soapUI.

After that we started to use the WSDL in VB.NET to create a program that can exchange messages with the web service. We added the WSDL file as a Service Reference to the VB.NET project. A routine 'Reference.vb " is created under the project containing several routines, functions, definitions and so on. This looks correct to me. To sent a message from within the VB.NET application to the web service, we perform the following steps:
1.      Define a variable as a class of the WSDL definition for sending the message to the web service
2.      Fill the properties of the variable with information of the message
3.      Define the binding to use
4.      Define a variable as the portalServicePortClient of the WSDL file, with the endpoint address and the bindig as parameters
5.      Call the function of the WSDL that will sent the message to the web service
6.      Receive answer and process it

After calling the function of the WSDL, there is no response received. There is only a error message that is shown:
" Content Type application/soap+xml; charset=utf-8 was not supported by service http://broker-......................  The client and service bindings may be mismatched."

And when I try this over another port with SSL:

"An error occurred while receiving the HTTP response to https://broker....... This could be due to the service endpoint binding not using the HTTP protocol. This could also be due to an HTTP request context being aborted by the server (possibly due to the service shutting down). See server logs for more details."

Our customer does not receive a message in  the web service!

Any help is much appreciated!
  • 3
2 Solutions
käµfm³d 👽Commented:
Have you confirmed with the customer which binding should be used (or was only one included in your app.config file)?
PirieAuthor Commented:
Hello Kaufmed,

Thanks for your reply!

In other projects in which we were reading a WSDL definition in VB.NET/VS for a link to a web service, we became a 'configuration.svcinfo' and a 'configuration91.svcinfo' file as a part of the service reference. These files contained information about the binding. Also, the app.config file was adapted with a Binding configuration section with the required settings. It was easy to create the link with the web service after that.

But after reading the WSDL definition where this question is about, the both files be created but there is no information in the files! The app.config also is not adapted. So it seems that there is no Binding information available or it is not required.

I have studied the files from the WSDL definition and searched for information about Binding. First in the WSDL file itself I found the following information about Binding:
    <wsdl:binding name="PortalServicePortSoapBinding" type="tns:PortalServicePort">
        <soap:binding style="document"
            transport="http://schemas.xmlsoap.org/soap/http" />

        <wsdl:operation name="toevoegenMelding">
                style="document" />
                <soap:body use="literal" />
                <soap:body use="literal" />
            <wsdl:fault name="genericFaultMessage">
                <soap:fault use="literal" />

There is also a file available 'bindings.xml' with this information:
<?xml version="1.0" ?>
<jaxb:bindings xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:jaxb="http://java.sun.com/xml/ns/jaxb" xmlns:xjc="http://java.sun.com/xml/ns/jaxb/xjc"
    jaxb:extensionBindingPrefixes="xjc" version="2.1"
    xsi:schemaLocation="http://java.sun.com/xml/ns/jaxb ./bindingschema_2_0.xsd">
        <jaxb:serializable uid="1" />

Any idea?
PirieAuthor Commented:

I solved the problem myself. Using a standard binding is enough.

Thanks for you help
PirieAuthor Commented:
No futher aswers
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Train for your Pen Testing Engineer Certification

Enroll today in this bundle of courses to gain experience in the logistics of pen testing, Linux fundamentals, vulnerability assessments, detecting live systems, and more! This series, valued at $3,000, is free for Premium members, Team Accounts, and Qualified Experts.

  • 3
Tackle projects and never again get stuck behind a technical roadblock.
Join Now