in reply to Re^2: SOAP::Lite server with c sharp client
in thread SOAP::Lite server with c sharp client

The problem is .... I need to know how the server can make a correct XML response for DotNet. Probably the solution is a better use of "SOAP::Data -> new()" to write the correct tags and header...

Kinda almost but not really -- DotNet is not a SOAP message format ... you need to learn more about SOAP :)

Does you message (the SOAP::Data...) stuff matches your advertised WSDL? If it doesn't you should adjust WSDL until it advertises the correct "stuff".

If the xml generated and WSDL are close enough, its most likely the SOAP message styles ( RPC/ENCODED/RPC/LITERAL/DOCUMENT/LITERAL ) that aren't matching ...

There are a bunch of suggestions on that starting at Microsoft .NET client with SOAP::Lite Server including Modify your .NET server, if possible

Yes, I can't really help and I do hate SOAP :)

  • Comment on Re^3: SOAP::Lite server with c sharp client

Replies are listed 'Best First'.
Re^4: SOAP::Lite server with c sharp client
by grifhis (Novice) on Apr 28, 2014 at 15:17 UTC

    well, i am a beginner in Web Service, but with soap lite i wrote a complete Web Service (client and server sides) in Perl Language, and it works perfectly, i can send documents and images with "base64" encoding. My problem started with this c sharp client, so i hate C sharp ! ^_^

      :) so what class does  MyService.FUNCTIONPortClient soapClient use?

        this is the code, it is very simple.... now i am trying to force soap lite to use "document/literal" soap message

        using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace WindowsFormsApplication1 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } string result = "xxx"; private void SubmitBtn_Click(object sender, EventArgs e) { // SERVICE REFERENCE-SPECIFIC CODE MyService.FUNCTIONPortClient soapClient = new MyService.FUN +CTIONPortClient (); result = soapClient.test_query("test from c# ! "); // the first source code part......