Hi everybody,
I'm having a strange problem when I try to use the Web Services
Description Language Tool (Wsdl.exe) from .NET Framework Tools. I'm
getting an error when I try to use the wsdl.exe to create the C# client
proxy class based on the wsdl generated by PHP (SCA_SDO).
I tried several ways to make the wsdl.exe create the C# code. Does
anyone have any idea about how to solve this problem? Anyone else
having this problem too?
The info about how to reproduce the error follows below.
Thanks, Tatto
Command that I'm getting error:
wsdl.exe /protocol:SOAP /language:CS /out:"TestService.cs" Test.wsdl
+++++++++++++++
Error message:
Microsoft (R) Web Services Description Language Utility
[Microsoft (R) .NET Framework, Version 2.0.50727.42]
Copyright (C) Microsoft Corporation. All rights reserved.
Warning: This web reference does not conform to WS-I Basic Profile v1.1.
R2028, R2029: A DESCRIPTION using the WSDL namespace and the WSDL SOAP
binding n
amespace MUST be valid according to the XML Schemas found at
http://schemas.xmls
oap.org/wsdl/2003-02-11.xsd and
http://schemas.xmlsoap.org/wsdl/soap/2003-02-11.
xsd.
- Warning: The element 'definitions' in namespace
'
http://schemas.xmlsoap.org
/wsdl/' has invalid child element 'types'. List of possible elements
expected: '
documentation, import, types, message, portType, binding, service' in
namespace
'
http://schemas.xmlsoap.org/wsdl/' as well as any element in namespace
'##other'
. Line 3, position 4.
For more details on the WS-I Basic Profile v1.1, see the specification
at
http://www.ws-i.org/Profiles/BasicProfile-1.1.html.
Error: Unable to import binding 'TestBinding' from namespace
'
http://Test'.
- Unable to import operation 'giveMeANumber'.
- The element '
http://Test:giveMeANumber' is missing.
If you would like more help, please type "wsdl /?".
+++++++++++++++
Test.php:
<?php
require_once( "SCA/SCA.php" );
/**
* Class Test
*
* <at> service
* <at> binding.soap
*/
class Test {
/**
* Checks for an existing cart
*
* <at> return string
*/
public function giveMeANumber( ) {
return 'Your number is :' . rand(1,100);
}
}
?>
+++++++++++++++
Test.wsdl:
<?xml version="1.0" encoding="UTF-8"?>
<
wsdl:definitions xmlns:tns2=
"http://Test"
xmlns:wsdl=
"http://schemas.xmlsoap.org/wsdl/"
xmlns:soap=
"http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"
targetNamespace=
"http://Test">
<
types>
<
xs:schema
xmlns:xs=
"http://www.w3.org/2001/XMLSchema"
targetNamespace=
"http://Test"
elementFormDefault=
"qualified">
<
xs:element name=
"giveMeANumber">
<
xs:complexType>
<
xs:sequence>
</
xs:sequence>
</
xs:complexType>
</
xs:element>
<
xs:element name=
"giveMeANumberResponse">
<
xs:complexType>
<
xs:sequence>
<
xs:element name=
"giveMeANumberReturn"
type=
"xs:string"/>
</
xs:sequence>
</
xs:complexType>
</
xs:element>
</
xs:schema>
</
types>
<
wsdl:message name=
"giveMeANumberRequest">
<
wsdl:part
name=
"giveMeANumberRequest" element=
"tns2:giveMeANumber"/>
</
wsdl:message>
<
wsdl:message name=
"giveMeANumberResponse">
<
wsdl:part
name=
"return" element=
"tns2:giveMeANumberResponse"/>
</
wsdl:message>
<
wsdl:portType name=
"TestPortType">
<
wsdl:operation name=
"giveMeANumber">
<
wsdl:input message=
"tns2:giveMeANumberRequest"/>
<
wsdl:output message=
"tns2:giveMeANumberResponse"/>
</
wsdl:operation>
</
wsdl:portType>
<
wsdl:binding name=
"TestBinding"
type=
"tns2:TestPortType">
<
soap:binding
transport=
"http://schemas.xmlsoap.org/soap/http"
style=
"document"/>
<
wsdl:operation name=
"giveMeANumber">
<
soap:operation soapAction=
""/>
<
wsdl:input>
<
soap:body
use=
"literal"/>
</
wsdl:input>
<
wsdl:output>
<
soap:body
use=
"literal"/>
</
wsdl:output>
</
wsdl:operation>
</
wsdl:binding>
<
wsdl:service name=
"TestService">
<
wsdl:port
name=
"TestPort" binding=
"tns2:TestBinding">
<
soap:address
location=
"http://localhost/Test.php"/>
</
wsdl:port>
</
wsdl:service>
</
wsdl:definitions>
+++++++++++++++
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "phpsoa" group.
To post to this group, send email to phpsoa-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
To unsubscribe from this group, send email to phpsoa-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
For more options, visit this group at http://groups.google.co.uk/group/phpsoa?hl=en
-~----------~----~----~----~------~----~------~--~---