N
Nick Locke
I am doing some "WSDL first" authoring and have successfully tamed the
"include bug" and various other of wsdl.exe's antics. I can now generate a
valid Server Interface from my WSDL. I thought it would be interesting to
see what happened if I then used .NET to create a WSDL from my Interface and
a class which implements it. It's almost there (excuse the obfuscation):
POST /vxxxxxx.asmx HTTP/1.1
Host: localhost
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "Amendvxxxxxx"
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Header>
<ZZZZcontext xmlns="http://elements.ZZZZ-PPPPP.org.uk">
<RequestingMkkkkkNumber>int</RequestingMkkkkkNumber>
<OwningMkkkkkNumber>int</OwningMkkkkkNumber>
<ManagingMkkkkkNumber>int</ManagingMkkkkkNumber>
<CurrentUser>string</CurrentUser>
</ZZZZcontext>
</soap:Header>
<soap:Body>
<AmendSyyyyyvxxxxxxRequest ="" =""
xmlns="http://objects.ZZZZ-PPPPP.org.uk/Syyyyyvxxxxxx">
<SyyyyyvxxxxxxDetails
xmlns="http://elements.ZZZZ-PPPPP.org.uk/Syyyyyvxxxxxx">
<vxxxxxxDetails xmlns="http://elements.ZZZZ-PPPPP.org.uk">
<RegistrationMark xmlns="">string</RegistrationMark>
<ChassisNumber xmlns="">string</ChassisNumber>
<EngineNumber xmlns="">string</EngineNumber>
<Make xmlns="">string</Make>
<Model xmlns="">string</Model>
<Body xmlns="">string</Body>
<Colour xmlns="">string</Colour>
<EngineCapacity xmlns="">positiveInteger</EngineCapacity>
</vxxxxxxDetails>
</SyyyyyvxxxxxxDetails>
</AmendSyyyyyvxxxxxxRequest>
</soap:Body>
</soap:Envelope>
But, I seem to be missing the two attributes in AmendSyyyyyvxxxxxxRequest
and all of the element namespaces are blank.
Clues on whether this is likely to be easy to fix would be welcome!
Thanks.
"include bug" and various other of wsdl.exe's antics. I can now generate a
valid Server Interface from my WSDL. I thought it would be interesting to
see what happened if I then used .NET to create a WSDL from my Interface and
a class which implements it. It's almost there (excuse the obfuscation):
POST /vxxxxxx.asmx HTTP/1.1
Host: localhost
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "Amendvxxxxxx"
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Header>
<ZZZZcontext xmlns="http://elements.ZZZZ-PPPPP.org.uk">
<RequestingMkkkkkNumber>int</RequestingMkkkkkNumber>
<OwningMkkkkkNumber>int</OwningMkkkkkNumber>
<ManagingMkkkkkNumber>int</ManagingMkkkkkNumber>
<CurrentUser>string</CurrentUser>
</ZZZZcontext>
</soap:Header>
<soap:Body>
<AmendSyyyyyvxxxxxxRequest ="" =""
xmlns="http://objects.ZZZZ-PPPPP.org.uk/Syyyyyvxxxxxx">
<SyyyyyvxxxxxxDetails
xmlns="http://elements.ZZZZ-PPPPP.org.uk/Syyyyyvxxxxxx">
<vxxxxxxDetails xmlns="http://elements.ZZZZ-PPPPP.org.uk">
<RegistrationMark xmlns="">string</RegistrationMark>
<ChassisNumber xmlns="">string</ChassisNumber>
<EngineNumber xmlns="">string</EngineNumber>
<Make xmlns="">string</Make>
<Model xmlns="">string</Model>
<Body xmlns="">string</Body>
<Colour xmlns="">string</Colour>
<EngineCapacity xmlns="">positiveInteger</EngineCapacity>
</vxxxxxxDetails>
</SyyyyyvxxxxxxDetails>
</AmendSyyyyyvxxxxxxRequest>
</soap:Body>
</soap:Envelope>
But, I seem to be missing the two attributes in AmendSyyyyyvxxxxxxRequest
and all of the element namespaces are blank.
Clues on whether this is likely to be easy to fix would be welcome!
Thanks.