troubleshooting Question

Encountering errors while creating VB .Net Class from WSDL File

Avatar of RobertFromSecretWeapons
RobertFromSecretWeapons asked on
.NET ProgrammingWeb Languages and StandardsWCF
1 Comment1 Solution829 ViewsLast Modified:
Web Service Call from Studio 2008 Project Issue

I am developing a Visual Studio 2008 (VB) based app which needs to access some customer data by calling Web Service. This Web Server is behind Firewall, therefore my development workstation based development environment can not directly access the definition file (WSDL File). Therefore I cannot select "Add Web Reference" option, specify the URL and be able to call related methods.

Therefore, I tried to generate Proxy Class based code by using WSDL.exe utility. Using Visual Studio 2008 Command Prompt, I typed “WSDL.exe /l:VB RepositoryService.WSDL” command. I am getting the following error message:

Error: Cannot find definition for http://service.repository.ivr.abc.com:RepositoryService.  Service Description with namespace http://service.repository.ivr.abc.com is missing.

It appears that this WSDL file is making reference to the below listed “http://service.repository.ivr.abc.com:RepositoryService” URL and it is not accessible from my development workstation, therefore the above error is being generated.

Is this the case? If yes then how do I get around these issues?

Any suggestions would be greatly appreciated.

RepositoryService.WSDL File’s contents are pasted below:

<?xml version="1.0" encoding="utf-8"?>
<definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:ns1="http://service.repository.ivr.abc.com" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns="http://service.account.ivr.abc.com" xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="RepositoryServiceBusImplService" targetNamespace="http://service.account.ivr.abc.com">
  <import location="http://etsmysqlws.lb.abc.com:8080/IVRRepository/RepositoryService?wsdl=wsdl1" namespace="http://service.repository.ivr.abc.com">
    </import>
  <binding name="RepositoryServiceBusImplPortBinding" type="ns1:RepositoryService">
    <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
    <operation name="getCallDetails">
      <soap:operation soapAction=""/>
      <input>
        <soap:body use="literal"/>
      </input>
      <output>
        <soap:body use="literal"/>
      </output>
      <fault name="RepositoryServiceException">
        <soap:fault name="RepositoryServiceException" use="literal"/>
      </fault>
    </operation>
    <operation name="saveCallDetails">
      <soap:operation soapAction=""/>
      <input>
        <soap:body use="literal"/>
      </input>
      <output>
        <soap:body use="literal"/>
      </output>
      <fault name="RepositoryServiceException">
        <soap:fault name="RepositoryServiceException" use="literal"/>
      </fault>
    </operation>
  </binding>
  <service name="RepositoryServiceBusImplService">
    <port binding="tns:RepositoryServiceBusImplPortBinding" name="RepositoryServiceBusImplPort">
      <soap:address location="http://etsmysqlws.lb.abc.com:8080/IVRRepository/RepositoryService"/>
    </port>
  </service>
</definitions>

ASKER CERTIFIED SOLUTION
AngryBinary

Our community of experts have been thoroughly vetted for their expertise and industry experience.

Join our community to see this answer!
Unlock 1 Answer and 1 Comment.
Start Free Trial
Learn from the best

Network and collaborate with thousands of CTOs, CISOs, and IT Pros rooting for you and your success.

Andrew Hancock - VMware vExpert
See if this solution works for you by signing up for a 7 day free trial.
Unlock 1 Answer and 1 Comment.
Try for 7 days

”The time we save is the biggest benefit of E-E to our team. What could take multiple guys 2 hours or more each to find is accessed in around 15 minutes on Experts Exchange.

-Mike Kapnisakis, Warner Bros