[Webinar] Streamline your web hosting managementRegister Today

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 1201
  • Last Modified:

WSDL not working

Hi

I have written a WSDL file and tested it and it is not working.

I do not know what I have left out or entered wrongly. It is valid and well formed, but not working!

All help and advice greatly appreciated.

Veb
<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions name="check-policy" 
targetNamespace="http://homepages.feis.herts.ac.uk/~3com0109/cgi-bin/policy.cgi"
xmlns:tns="http://homepages.feis.herts.ac.uk/~3com0109/cgi-bin/policy.cgi" 
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" 
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" 
xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" 
xmlns:xs="http://www.w3.org/2001/XMLSchema" 
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" 
xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" 
xmlns:ns="http://homepages.feis.herts.ac.uk/~3com0109/cgi-bin/policy.cgi"  
>
 
	<wsdl:types>
		<xs:schema targetNamespace="http://homepages.feis.herts.ac.uk/~3com0109/cgi-bin/policy.cgi" elementFormDefault="qualified"/>
	</wsdl:types>
	<wsdl:message name="check-policyRequest">
		<wsdl:part name="policycode" type="xs:string"/>
		<wsdl:part name="date" type="xs:string"/>
	</wsdl:message>
	<wsdl:message name="check-policyResponse">
		<wsdl:part name="price" type="xs:string"/>
	</wsdl:message>
	<wsdl:portType name="policy_PortType">
		<wsdl:operation name="check-policy">
			<wsdl:input message="tns:check-policyRequest"/>
			<wsdl:output message="tns:check-policyResponse"/>
		</wsdl:operation>
	</wsdl:portType>
	<wsdl:binding name="policy_Binding" type="tns:policy_PortType">
		<soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>
		<wsdl:operation name="check-policy">
			<soap:operation soapAction="check-policy"/>
			<wsdl:input>
				<soap:body use="literal"/>
			</wsdl:input>
			<wsdl:output>
				<soap:body use="literal"/>
			</wsdl:output>
		</wsdl:operation>
	</wsdl:binding>
	<wsdl:service name="check-policy">
		<wsdl:port name="policy_Port" binding="tns:policy_Binding">
			<soap:address location="http://homepages.feis.herts.ac.uk/~3com0109/cgi-bin/policy.cgi"/>
		</wsdl:port>
	</wsdl:service>
</wsdl:definitions>

Open in new window

0
vebram
Asked:
vebram
1 Solution
 
cwichoskiCommented:
hi,

what or where is not working? dont work in your tool? what tool? or the call of WS dont work? you can explain with more detail what is not working?
0
 
vebramAuthor Commented:
Hi

I am testing it through

 http://soapclient.com/soaptest.html  
 
and getting the error report:

Error parsing the WSDL file: C:\Documents and Settings\Home PC\My Documents\UH\PAWS unit\Assignmnet 3\q3.1.1.wsdl Error retrieving WSDL file at C:\Documents and Settings\Home PC\My Documents\UH\PAWS unit\Assignmnet 3\q3.1.1.wsdl

I am expecting to be prompted for two pieces of information: policycode and date and then receive one response: price. I am new to this and don't know what it is that I have done wrong.

thanks for your help

Veb
0
 
cwichoskiCommented:
Hi,

you must type an URL to your WSDL file on field "WSDL File Address:", something like http://homepages.feis.herts.ac.uk/~3com0109/q3.1.1.wsdl, the error occurs because you put a local file and the Generic SOAP Client needs a remote file.

i hope this helps
0
Learn to develop an Android App

Want to increase your earning potential in 2018? Pad your resume with app building experience. Learn how with this hands-on course.

 
vebramAuthor Commented:
Hi

Can I clarify what you mean: when I enter the file location in the soapclient field it must be a remote address but still to the actual file I have?

Therefore I have to store my file on a server somewhere to test it?

thanks

Veb
0
 
cwichoskiCommented:
hi, vebram

to test using the soapclient you must use a URL to your WSDL file, not a reference to a file in your hard disk, like C:\someFolder\someDir, you must type something like http://yourdomain.com/yourWSDLfile.wsdl and this must be on-line, because  http://soapclient.com/soaptest.html get this file, parse the file at server-side then show the test page.

i hope to be more clearly now.
0
 
vebramAuthor Commented:
Hi

That did not help, I think there is something wrong with my code but I don't know what.

Veb
0
 
vebramAuthor Commented:
Hi again,

when I run this i get the message:

invalid WSDL file no definition found

Can someone explain what is meant be definition please
0
 
cwichoskiCommented:
hi, you can put here the URL for your WSDL file?
0
 
vebramAuthor Commented:
Thanks for the help, it got me a bit further on but I still haven't solved my problem
0
 
SkwarkyCommented:
can someone help on this solution please?
0
 
mysti77Commented:
Hi,

I'm also doing this and have the same error "nvalid WSDL file, no definition found".  when testing my WSDL file using http://www.soapclient.com/soaptest.html

I'm not sure what this means, not a very helpful message
<?xml version="1.0" encoding="UTF-8"?>
 
<definitions name="StockLevel"
	targetNamespace="urn:CheckStockLevel"
	xmlns="http://schemas.xmlsoap.org/wsdl/"
	xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
	xmlns:tns="urn:CheckStockLevel"
	xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 
 
 
<!--Input message for the service-->
	<message name="CheckStockLevel_Request">
		<part name="productCode" type="xsd:string"/>
		<part name="Date" type="xsd:date"/>
	</message>
	
<!--Output message for the service-->	
	<message name="CheckStockLevel_Response">
		<part name="quantity" type="xsd:integer"/>
 
	</message>
 
<portType name="CheckStockLevel_PortType">
		<operation name="CheckStockLevel">
			<input message="tns:checkStockLevel_Request"/>
			<output message="tns:checkStockLevel_Response"/>
		</operation>
	</portType>
	
<binding name="checkStockLevel_Binding">
		<soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>
		<operation name="checkStockLevelService">
			<soap:operation soapAction="checkStockLevelService"/>
			<input>
				<soap:body use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="urn:Example1:stock"/>
			</input>
			<output>
				<soap:body use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="urn:Example1:stock"/>
			</output>
		</operation>
	</binding>
	
<service name="checkStockLevel_Service">
		<documentation>WSDL File for checking Stocl Levels</documentation>
		<port name="checkStockLevel_PortType" binding="checkStockLevel_Binding">
			<soap:address location="http://homepages.feis.herts.ac.uk/~3com0135/cgi-bin/stock.cgi"/>
		</port>
	</service>
 
</definitions>

Open in new window

0

Featured Post

Get expert help—faster!

Need expert help—fast? Use the Help Bell for personalized assistance getting answers to your important questions.

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