Loading ...
Sorry, an error occurred while loading the content.

Re: [soaplite] SOAP server does not work

Expand Messages
  • Paul Kulchenko
    Hi, Zwei! ... That s correct. Server expects to get POST request and will return 405 error when there is something else (or nothing as in your case). ... You
    Message 1 of 3 , Oct 1, 2001
    • 0 Attachment
      Hi, Zwei!

      --- zweili2@... wrote:
      > Hi,
      > I installed SOAPLite on Redhat Linux 6.0 (2.2.5-15) with Apache
      > 1.3.6-
      > 7. The soap client works fine accessing SOAP servers on the
      > Internet. But the server does not work (copied code from
      > instructions). When run the server on comandline, got "Status: 405
      > Method Not Allowed".
      That's correct. Server expects to get POST request and will return
      405 error when there is something else (or nothing as in your case).

      > When run the client, got "500 Internal Server
      > Error". The Apache error-log showed "[Error] (8)Exec format error:
      > exec of /home/httpd/cgi-bin/soapserver.cgi failed".
      >
      > soapserver.cgi:
      > use SOAP::Transport::HTTP;

      You don't have #! line that tells what executable will process this
      script.

      You must have this line or similar in the beginning of your script as
      you have on client side:

      #!/usr/local/bin/perl

      Also check that script has executable permissions. Everything else
      seems to be fine. Hope it helps.

      Best wishes, Paul.

      > SOAP::Transport::HTTP::CGI
      > -> dispatch_to('Demo')
      > -> handle;
      > package Demo;
      > sub hi {
      > return "hello, world";
      > }
      > sub bye {
      > return "goodbye, cruel world";
      > }
      > soapclient.cgi code
      > #!/usr/local/bin/perl
      > print "Content-type:text/html\n\n";
      > use SOAP::Lite;
      > print "<html><body>";
      > $client=SOAP::Lite->uri('http://webserver.net/Demo');
      > $myproxy=$client->proxy('http://webserver.net/cgi-
      > bin/soapserver.cgi');
      > $myresult=$myproxy->hi()->result;
      > print "Server message: ".$myresult."<br>\n";
      > print "</body></html>";
      >
      > Please tell me what my problem I have.
      >
      > Zwei
      >
      >
      > ------------------------ Yahoo! Groups Sponsor
      >
      > To unsubscribe from this group, send an email to:
      > soaplite-unsubscribe@yahoogroups.com
      >
      >
      >
      > Your use of Yahoo! Groups is subject to
      > http://docs.yahoo.com/info/terms/
      >
      >


      __________________________________________________
      Do You Yahoo!?
      Listen to your Yahoo! Mail messages from any phone.
      http://phone.yahoo.com
    • zweili2@yahoo.com
      Thaks Paul. I had #! and the permision is the same as the client. Is this problem related to the version of perl? I have 5.005_03 built for i386-linux . I
      Message 2 of 3 , Oct 2, 2001
      • 0 Attachment
        Thaks Paul.
        I had #! and the permision is the same as the client. Is this
        problem related to the version of perl? I have "5.005_03 built for
        i386-linux". I installed SOAPLite with CPAN. Is there any configure
        problem?


        --- In soaplite@y..., Paul Kulchenko <paulclinger@y...> wrote:
        > Hi, Zwei!
        >
        > --- zweili2@y... wrote:
        > > Hi,
        > > I installed SOAPLite on Redhat Linux 6.0 (2.2.5-15) with Apache
        > > 1.3.6-
        > > 7. The soap client works fine accessing SOAP servers on the
        > > Internet. But the server does not work (copied code from
        > > instructions). When run the server on comandline, got "Status:
        405
        > > Method Not Allowed".
        > That's correct. Server expects to get POST request and will return
        > 405 error when there is something else (or nothing as in your case).
        >
        > > When run the client, got "500 Internal Server
        > > Error". The Apache error-log showed "[Error] (8)Exec format
        error:
        > > exec of /home/httpd/cgi-bin/soapserver.cgi failed".
        > >
        > > soapserver.cgi:
        > > use SOAP::Transport::HTTP;
        >
        > You don't have #! line that tells what executable will process this
        > script.
        >
        > You must have this line or similar in the beginning of your script
        as
        > you have on client side:
        >
        > #!/usr/local/bin/perl
        >
        > Also check that script has executable permissions. Everything else
        > seems to be fine. Hope it helps.
        >
        > Best wishes, Paul.
        >
        > > SOAP::Transport::HTTP::CGI
        > > -> dispatch_to('Demo')
        > > -> handle;
        > > package Demo;
        > > sub hi {
        > > return "hello, world";
        > > }
        > > sub bye {
        > > return "goodbye, cruel world";
        > > }
        > > soapclient.cgi code
        > > #!/usr/local/bin/perl
        > > print "Content-type:text/html\n\n";
        > > use SOAP::Lite;
        > > print "<html><body>";
        > > $client=SOAP::Lite->uri('http://webserver.net/Demo');
        > > $myproxy=$client->proxy('http://webserver.net/cgi-
        > > bin/soapserver.cgi');
        > > $myresult=$myproxy->hi()->result;
        > > print "Server message: ".$myresult."<br>\n";
        > > print "</body></html>";
        > >
        > > Please tell me what my problem I have.
        > >
        > > Zwei
        > >
        > >
        > > ------------------------ Yahoo! Groups Sponsor
        > >
        > > To unsubscribe from this group, send an email to:
        > > soaplite-unsubscribe@y...
        > >
        > >
        > >
        > > Your use of Yahoo! Groups is subject to
        > > http://docs.yahoo.com/info/terms/
        > >
        > >
        >
        >
        > __________________________________________________
        > Do You Yahoo!?
        > Listen to your Yahoo! Mail messages from any phone.
        > http://phone.yahoo.com
      Your message has been successfully submitted and would be delivered to recipients shortly.