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="RepositoryServiceBus
ImplServic
e" 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="RepositoryServiceBus
ImplPortBi
nding" type="ns1:RepositoryServic
e">
<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="RepositoryServiceExc
eption">
<soap:fault name="RepositoryServiceExc
eption" use="literal"/>
</fault>
</operation>
<operation name="saveCallDetails">
<soap:operation soapAction=""/>
<input>
<soap:body use="literal"/>
</input>
<output>
<soap:body use="literal"/>
</output>
<fault name="RepositoryServiceExc
eption">
<soap:fault name="RepositoryServiceExc
eption" use="literal"/>
</fault>
</operation>
</binding>
<service name="RepositoryServiceBus
ImplServic
e">
<port binding="tns:RepositorySer
viceBusImp
lPortBindi
ng" name="RepositoryServiceBus
ImplPort">
<soap:address location="http://etsmysqlws.lb.abc.com:8080/IVRRepository/RepositoryService"/>
</port>
</service>
</definitions>