Stan, Thanks for taking a look. I've tried proxy DLL from "wsdl.exe", adding a web reference through .NET, and the webservice studio. While I can generate and build the proxy in all methods named and see the SOAP request and response, I cannot get a valid response back in .NET land (as described in original note).
~ Peter -----Original Message----- From: Stan Jordan [mailto:[EMAIL PROTECTED]] Sent: Friday, March 29, 2002 3:46 PM To: [EMAIL PROTECTED] Subject: Re: Problems calling Axis service from .NET C# client Peter... The usual way to build a C# client is: 1) Create proxy DLL from wsdl file, using this executable: c:\Program Files\Microsoft.NET\FrameworkSDK\Bin\wsdl.exe 2) Write your client, which uses the proxy. Did you create your client this way? If not, maybe you should give it a try. Another (better) way to create the proxy is via ".NET WebService Studio" which you can download here: http://www.gotdotnet.com/team/tools/web_svc/default.aspx Personally, I love the studio, because it: 1) generates both proxy and client, and 2) provides a nice GUI for entering input data to test your service. I tried your wsdl file with .NET WebService Studio, and it seems to be okay (I was able to create a proxy and client). Good luck. Stan ----- Original Message ----- From: "Peter A. Kozma" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Friday, March 29, 2002 8:57 AM Subject: RE: Problems calling Axis service from .NET C# client Hi Stan, Attached is the entire wsdl file. Thanks! I added a trace extension to the .NET method to follow the message through the various stages... no luck so far. ~ Peter -----Original Message----- From: Stan Jordan [mailto:[EMAIL PROTECTED]] Sent: Friday, March 29, 2002 10:48 AM To: [EMAIL PROTECTED] Subject: Re: Problems calling Axis service from .NET C# client Peter... Send me the entire wsdl file, and I can prolly help. Or send me the URL, if you have deployed your service to the web. Stan ----- Original Message ----- From: Peter A. Kozma To: [EMAIL PROTECTED] Sent: Friday, March 29, 2002 6:49 AM Subject: Problems calling Axis service from .NET C# client I have a web services method running on Axis (beta 1) that looks like: XcutPlay1Response login (String id, String pw); The return type is complex (see WSDL below). Calling from an Axis client works fine. When invoked from .NET, I get an empty response object back (string = null, int = 0, bool = false) and no errors. I look at the actual SOAP messages and everything going up and down looks good (see response message below). My service is getting invoked. Calling Axis from .NET works with methods that do not involve complex types. Anyone have any ideas? Thanks. *** start response message Content-Type:text/xml; charset=utf-8 <?xml version="1.0" encoding="utf-8"?> <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <SOAP-ENV:Body> <ns1:loginResponse SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:ns1="http://service.xmlinterface.xcut.clareos.com"> <loginResult href="#id0" /> </ns1:loginResponse> <multiRef id="id0" SOAP-ENC:root="0" xsi:type="ns2:XcutResponse" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:ns2="http://service.xmlinterface.xcut.clareos.com"> <ns2:ReturnCode xsi:type="xsd:int">0</ns2:ReturnCode> <ns2:ReturnStatus xsi:type="xsd:boolean">true</ns2:ReturnStatus> <ns2:ReturnString xsi:type="xsd:string">Logged in!</ns2:ReturnString> </multiRef> </SOAP-ENV:Body> </SOAP-ENV:Envelope> *** end response message *** start WSDL . <types> <schema targetNamespace="http://service.xmlinterface.xcut.clareos.com" xmlns="http://www.w3.org/2001/XMLSchema"> <complexType name="XcutPlay1Response"> <sequence> <element name="ReturnCode" type="xsd:int"/> <element name="ReturnString" nillable="true" type="xsd:string"/> <element name="ReturnStatus" type="xsd:boolean"/> </sequence> </complexType> <element name="XcutPlay1Response" nillable="true" type="tns1:XcutPlay1Response"/> </schema> </types> . <wsdl:message name="loginResponse"> <wsdl:part name="return" type="tns1:XcutPlay1Response"/> </wsdl:message> . <wsdl:operation name="login" parameterOrder="in0 in1"> <wsdl:input message="intf:loginRequest"/> <wsdl:output message="intf:loginResponse"/> </wsdl:operation> . *** end WSDL *** start C# /// <remarks/> [System.Web.Services.Protocols.SoapRpcMethodAttribute("", RequestNamespace="http://service.xmlinterface.xcut.clareos.com", ResponseNamespace="http://service.xmlinterface.xcut.clareos.com")] [return: System.Xml.Serialization.SoapElementAttribute("return")] public XcutResponse login(string in0, string in1) { object[] results = this.Invoke("login", new object[] { in0, in1}); return ((XcutResponse)(results[0])); } . /// <remarks/> [System.Xml.Serialization.SoapTypeAttribute("XcutResponse", "http://service.xmlinterface.xcut.clareos.com")] public class XcutResponse { /// <remarks/> public int ReturnCode; /// <remarks/> public string ReturnString; /// <remarks/> public bool ReturnStatus; } *** end C#
