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

Re: [soaplite] unexpected EOF

Expand Messages
  • Paul Kulchenko
    Hi, Eric! If you configuration is similar to discussed one (apache+mod_perl) first thing you may try is to disable XML::Parser and use only XML::Parser::Lite.
    Message 1 of 10 , Nov 27, 2001
    • 0 Attachment
      Hi, Eric!

      If you configuration is similar to discussed one (apache+mod_perl)
      first thing you may try is to disable XML::Parser and use only
      XML::Parser::Lite. You shouldn't have such problem in this case. You
      need to specify in your script:

      use SOAP::Lite;
      $SOAP::Constants::DO_NOT_USE_XML_PARSER = 1;

      (notice that this is not an absolute solution, since Lite version of
      parser has some limitations and it's slower because it's pure Perl)

      Are you using CGI- or mod_perl-based SOAP server? You shouldn't have
      this problem running your server as a CGI application (if you do it's
      not because of apache and Expat). You may have it if you run SOAP
      server as Apache::Registry or mod_perl application.

      Server-side code could shed some light. Sorry can't be more helpful.

      Best wishes, Paul.

      --- Eric Baller <eballer@...> wrote:
      > I've been digging through the archive and this is the closest
      > reference I can find.
      >
      > I'm also getting the same "unexpected EOF" errors but I don't own
      > the
      > server or the apache configuration.
      >
      > When I was on my own linux box, I was able to get everything I want
      >
      > to work properly (thanks to good documentation, support in this
      > group, and some excellent software from Paul...)
      >
      > But when I move it up to my hosting company's machine (also linux),
      > I
      > get that "500..." error. I had to install a few modules since they
      >
      > didn't have SOAP::Lite or URI (I won't reveal who they are so as
      > not
      > to disgrace them ;^) but I got through that easy enough.
      >
      > Are there other approaches that might help besides asking them to
      > change the apache configuration?
      >
      > Thanks,
      > Eric
      >
      > --- In soaplite@y..., Paul Kulchenko <paulclinger@y...> wrote:
      > > Hi, Juan!
      > >
      > > It might be this (documented in SOAP/Transport/HTTP.pm):
      > >
      > > =item Apache is crashing with segfaults
      > >
      > > If using SOAP::Lite (or XML::Parser::Expat) in combination with
      > > mod_perl
      > > causes random segmentation faults in httpd processes try to
      > configure
      > > Apache with:
      > >
      > > RULE_EXPAT=no
      > >
      > > See http://archive.covalent.net/modperl/2000/04/0185.xml for more
      >
      > > details and lot of thanks to Robert Barta (rho@b...) for
      > > explaining this weird behavior.
      > >
      > > Hope it helps.
      > >
      > > Best wishes, Paul.
      > >
      > > --- Juan Julian Merelo Guervos <jmerelo@g...> wrote:
      > > > Hi,
      > > > I'm trying to use SOAP::Lite with Apache 1.3.20 and mod_perl
      > 1.25;
      > > > SOAP::Lite version is 0.50. It coredumps with this simple
      > setup:
      > > >
      > > > -- server
      > > > #!/usr/bin/perl -w
      > > >
      > > > use SOAP::Transport::HTTP;
      > > >
      > > > SOAP::Transport::HTTP::CGI
      > > > -> dispatch_to('Eval')
      > > > -> handle;
      > > >
      > > > package Eval;
      > > >
      > > > sub test {
      > > > my $class =shift;
      > > > my $msg = shift;
      > > > return "Hola $msg";
      > > > }
      > > > -- client
      > > > #!/usr/bin/perl -w
      > > >
      > > > use SOAP::Lite;
      > > >
      > > > my $soapResponse=
      > SOAP::Lite
      > > >
      > > > ->
      > > > uri
      > ('http://www.geneura.org/Eval')
      > > >
      > > > -> proxy("http://localhost:8080/perl/SOAPtest.pl")
      > > > -> test( "Pepelillo");
      > > >
      > > > print $soapResponse->result;
      > > >
      > > > ---
      > > > Apache config:
      > > > Alias /perl/ /home/jmerelo/apache/perl/
      > > > <Location /perl>
      > > > SetHandler perl-script
      > > > PerlHandler Apache::Registry
      > > > #PerlModule CGI SOAP::Lite
      > > > PerlSendHeader On
      > > > Options +ExecCGI
      > > > </Location>
      > > > --
      > > >
      > > > It coredumps with this error:
      > > >
      > > > mercurio:~/progs/ga-xsl$ ./SOAPtestclient.pl
      > > > 500 unexpected EOF before status line seen
      > > > at ./SOAPtestclient.pl line 5
      > > >
      > > > Any idea?
      > > >
      > > > J
      > > >
      > > > --
      > > > jmerelo@g... | jjmerelo@w...
      > > > JJ Merelo |
      > http://geneura.ugr.es/~jmerelo
      > > > Grupo Geneura ---- Univ. Granada | http://www.geneura.org/
      > > >
      > > > 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!?
      > > Get personalized email addresses from Yahoo! Mail - only $35
      > > a year! http://personal.mail.yahoo.com/
      >
      >
      > ------------------------ 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!?
      Yahoo! GeoCities - quick and easy web site hosting, just $8.95/month.
      http://geocities.yahoo.com/ps/info1
    • Eric Baller
      Actually, it doesn t look like I have to worry about mod_perl. The web server doesn t list it, but responds as follows: Server: Apache/1.3.20 (Unix)
      Message 2 of 10 , Nov 28, 2001
      • 0 Attachment
        Actually, it doesn't look like I have to worry about mod_perl. The web
        server doesn't list it, but responds as follows:

        Server: Apache/1.3.20 (Unix) ApacheJServ/1.1.2 PHP/4.0.4pl1
        FrontPage/5.0.2.2510 Rewrit/1.1a
        X-Powered-By: PHP/4.0.4pl1

        I've tried to make sure it wasn't anything fancy I was doing, so I've worked
        my way down to some server side code taken from one of your examples (which
        were very helpful, by the way):
        --------- hi.cgi ----------
        #!/usr/bin/perl -Tw

        use lib '/home/eballer/lib';
        use SOAP::Transport::HTTP;

        SOAP::Transport::HTTP::CGI
        -> dispatch_to('Demo')
        -> handle;

        package Demo;

        sub HelloWorld {
        return "Hello, world";
        }

        1;
        ------------------------------

        and the client code is:
        -------- hibye.pl ---------
        #!/usr/bin/perl -Tw

        use SOAP::Lite;

        my $s1=SOAP::Lite
        ->uri('Demo')
        ->proxy('http://localhost/cgi-bin/soap/hi.cgi');

        my $result = $s1->HelloWorld();

        unless ($result->fault) {
        print $result->result();
        } else {
        print join ', ',
        $result->faultcode,
        $result->faultstring;
        }
        ---------------------------

        That works fine on my local machine. Then I try replacing "localhost" with
        the web URL, I get the following error from the client:

        500 unexpected EOF before status line seen
        at ./hi.pl line 9

        On the server, I get an access log entry which looks like:
        ..."POST /cgi-bin/soap/hi.cgi HTTP/1.0" 200 - "-" "SOAP::Lite/Perl/0.51"

        Does that help more?

        Thanks!

        -----Original Message-----
        From: Paul Kulchenko [mailto:paulclinger@...]
        Sent: Wednesday, November 28, 2001 1:23 AM
        To: Eric Baller; soaplite@yahoogroups.com
        Subject: Re: [soaplite] unexpected EOF


        Hi, Eric!

        If you configuration is similar to discussed one (apache+mod_perl)
        first thing you may try is to disable XML::Parser and use only
        XML::Parser::Lite. You shouldn't have such problem in this case. You
        need to specify in your script:

        use SOAP::Lite;
        $SOAP::Constants::DO_NOT_USE_XML_PARSER = 1;

        (notice that this is not an absolute solution, since Lite version of
        parser has some limitations and it's slower because it's pure Perl)

        Are you using CGI- or mod_perl-based SOAP server? You shouldn't have
        this problem running your server as a CGI application (if you do it's
        not because of apache and Expat). You may have it if you run SOAP
        server as Apache::Registry or mod_perl application.

        Server-side code could shed some light. Sorry can't be more helpful.

        Best wishes, Paul.

        --- Eric Baller <eballer@...> wrote:
        > I've been digging through the archive and this is the closest
        > reference I can find.
        >
        > I'm also getting the same "unexpected EOF" errors but I don't own
        > the
        > server or the apache configuration.
        >
        > When I was on my own linux box, I was able to get everything I want
        >
        > to work properly (thanks to good documentation, support in this
        > group, and some excellent software from Paul...)
        >
        > But when I move it up to my hosting company's machine (also linux),
        > I
        > get that "500..." error. I had to install a few modules since they
        >
        > didn't have SOAP::Lite or URI (I won't reveal who they are so as
        > not
        > to disgrace them ;^) but I got through that easy enough.
        >
        > Are there other approaches that might help besides asking them to
        > change the apache configuration?
        >
        > Thanks,
        > Eric
        >
        > --- In soaplite@y..., Paul Kulchenko <paulclinger@y...> wrote:
        > > Hi, Juan!
        > >
        > > It might be this (documented in SOAP/Transport/HTTP.pm):
        > >
        > > =item Apache is crashing with segfaults
        > >
        > > If using SOAP::Lite (or XML::Parser::Expat) in combination with
        > > mod_perl
        > > causes random segmentation faults in httpd processes try to
        > configure
        > > Apache with:
        > >
        > > RULE_EXPAT=no
        > >
        > > See http://archive.covalent.net/modperl/2000/04/0185.xml for more
        >
        > > details and lot of thanks to Robert Barta (rho@b...) for
        > > explaining this weird behavior.
        > >
        > > Hope it helps.
        > >
        > > Best wishes, Paul.
        > >
        > > --- Juan Julian Merelo Guervos <jmerelo@g...> wrote:
        > > > Hi,
        > > > I'm trying to use SOAP::Lite with Apache 1.3.20 and mod_perl
        > 1.25;
        > > > SOAP::Lite version is 0.50. It coredumps with this simple
        > setup:
        > > >
        > > > -- server
        > > > #!/usr/bin/perl -w
        > > >
        > > > use SOAP::Transport::HTTP;
        > > >
        > > > SOAP::Transport::HTTP::CGI
        > > > -> dispatch_to('Eval')
        > > > -> handle;
        > > >
        > > > package Eval;
        > > >
        > > > sub test {
        > > > my $class =shift;
        > > > my $msg = shift;
        > > > return "Hola $msg";
        > > > }
        > > > -- client
        > > > #!/usr/bin/perl -w
        > > >
        > > > use SOAP::Lite;
        > > >
        > > > my $soapResponse=
        > SOAP::Lite
        > > >
        > > > ->
        > > > uri
        > ('http://www.geneura.org/Eval')
        > > >
        > > > -> proxy("http://localhost:8080/perl/SOAPtest.pl")
        > > > -> test( "Pepelillo");
        > > >
        > > > print $soapResponse->result;
        > > >
        > > > ---
        > > > Apache config:
        > > > Alias /perl/ /home/jmerelo/apache/perl/
        > > > <Location /perl>
        > > > SetHandler perl-script
        > > > PerlHandler Apache::Registry
        > > > #PerlModule CGI SOAP::Lite
        > > > PerlSendHeader On
        > > > Options +ExecCGI
        > > > </Location>
        > > > --
        > > >
        > > > It coredumps with this error:
        > > >
        > > > mercurio:~/progs/ga-xsl$ ./SOAPtestclient.pl
        > > > 500 unexpected EOF before status line seen
        > > > at ./SOAPtestclient.pl line 5
        > > >
        > > > Any idea?
        > > >
        > > > J
        > > >
        > > > --
        > > > jmerelo@g... | jjmerelo@w...
        > > > JJ Merelo |
        > http://geneura.ugr.es/~jmerelo
        > > > Grupo Geneura ---- Univ. Granada | http://www.geneura.org/
        > > >
        > > > 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!?
        > > Get personalized email addresses from Yahoo! Mail - only $35
        > > a year! http://personal.mail.yahoo.com/
        >
        >
        > ------------------------ 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!?
        Yahoo! GeoCities - quick and easy web site hosting, just $8.95/month.
        http://geocities.yahoo.com/ps/info1
      • Paul Kulchenko
        Hi, Eric! ... this one looks very suspicious. I saw 200 - in my log file only when I tested my CGI scripts with Apache::Registry without PerlSendHeader On .
        Message 3 of 10 , Nov 28, 2001
        • 0 Attachment
          Hi, Eric!

          > 500 unexpected EOF before status line seen
          > at ./hi.pl line 9
          >
          > On the server, I get an access log entry which looks like:
          > ..."POST /cgi-bin/soap/hi.cgi HTTP/1.0" 200 - "-"
          > "SOAP::Lite/Perl/0.51"
          this one looks very suspicious. I saw "200 -" in my log file only
          when I tested my CGI scripts with Apache::Registry without
          "PerlSendHeader On". I just replied about it today:
          [http://discuss.develop.com/archives/wa.exe?A2=ind0111&L=soap&F=&S=&P=23882]

          You may switch on debug info on client side to see real response from
          server:

          use SOAP::Lite on_debug => sub { print @_ };

          If you use Apache::Registry then "PerlSendHeader On" may solve the
          problem. If not, debug output may help.

          Did you try to run the same script from cgi-bin/ directory instead of
          cgi-bin/soap/? Did you try to hit that URL from webbrowser (you
          should get "405 Bad Method" error)? Let me know if you still can't
          fix the problem.

          Best wishes, Paul.

          --- Eric Baller <eballer@...> wrote:
          > Actually, it doesn't look like I have to worry about mod_perl. The
          > web
          > server doesn't list it, but responds as follows:
          >
          > Server: Apache/1.3.20 (Unix) ApacheJServ/1.1.2 PHP/4.0.4pl1
          > FrontPage/5.0.2.2510 Rewrit/1.1a
          > X-Powered-By: PHP/4.0.4pl1
          >
          > I've tried to make sure it wasn't anything fancy I was doing, so
          > I've worked
          > my way down to some server side code taken from one of your
          > examples (which
          > were very helpful, by the way):
          > --------- hi.cgi ----------
          > #!/usr/bin/perl -Tw
          >
          > use lib '/home/eballer/lib';
          > use SOAP::Transport::HTTP;
          >
          > SOAP::Transport::HTTP::CGI
          > -> dispatch_to('Demo')
          > -> handle;
          >
          > package Demo;
          >
          > sub HelloWorld {
          > return "Hello, world";
          > }
          >
          > 1;
          > ------------------------------
          >
          > and the client code is:
          > -------- hibye.pl ---------
          > #!/usr/bin/perl -Tw
          >
          > use SOAP::Lite;
          >
          > my $s1=SOAP::Lite
          > ->uri('Demo')
          > ->proxy('http://localhost/cgi-bin/soap/hi.cgi');
          >
          > my $result = $s1->HelloWorld();
          >
          > unless ($result->fault) {
          > print $result->result();
          > } else {
          > print join ', ',
          > $result->faultcode,
          > $result->faultstring;
          > }
          > ---------------------------
          >
          > That works fine on my local machine. Then I try replacing
          > "localhost" with
          > the web URL, I get the following error from the client:
          >
          > 500 unexpected EOF before status line seen
          > at ./hi.pl line 9
          >
          > On the server, I get an access log entry which looks like:
          > ..."POST /cgi-bin/soap/hi.cgi HTTP/1.0" 200 - "-"
          > "SOAP::Lite/Perl/0.51"
          >
          > Does that help more?
          >
          > Thanks!
          >
          > -----Original Message-----
          > From: Paul Kulchenko [mailto:paulclinger@...]
          > Sent: Wednesday, November 28, 2001 1:23 AM
          > To: Eric Baller; soaplite@yahoogroups.com
          > Subject: Re: [soaplite] unexpected EOF
          >
          >
          > Hi, Eric!
          >
          > If you configuration is similar to discussed one (apache+mod_perl)
          > first thing you may try is to disable XML::Parser and use only
          > XML::Parser::Lite. You shouldn't have such problem in this case.
          > You
          > need to specify in your script:
          >
          > use SOAP::Lite;
          > $SOAP::Constants::DO_NOT_USE_XML_PARSER = 1;
          >
          > (notice that this is not an absolute solution, since Lite version
          > of
          > parser has some limitations and it's slower because it's pure Perl)
          >
          > Are you using CGI- or mod_perl-based SOAP server? You shouldn't
          > have
          > this problem running your server as a CGI application (if you do
          > it's
          > not because of apache and Expat). You may have it if you run SOAP
          > server as Apache::Registry or mod_perl application.
          >
          > Server-side code could shed some light. Sorry can't be more
          > helpful.
          >
          > Best wishes, Paul.
          >
          > --- Eric Baller <eballer@...> wrote:
          > > I've been digging through the archive and this is the closest
          > > reference I can find.
          > >
          > > I'm also getting the same "unexpected EOF" errors but I don't own
          > > the
          > > server or the apache configuration.
          > >
          > > When I was on my own linux box, I was able to get everything I
          > want
          > >
          > > to work properly (thanks to good documentation, support in this
          > > group, and some excellent software from Paul...)
          > >
          > > But when I move it up to my hosting company's machine (also
          > linux),
          > > I
          > > get that "500..." error. I had to install a few modules since
          > they
          > >
          > > didn't have SOAP::Lite or URI (I won't reveal who they are so as
          > > not
          > > to disgrace them ;^) but I got through that easy enough.
          > >
          > > Are there other approaches that might help besides asking them to
          > > change the apache configuration?
          > >
          > > Thanks,
          > > Eric
          > >
          > > --- In soaplite@y..., Paul Kulchenko <paulclinger@y...> wrote:
          > > > Hi, Juan!
          > > >
          > > > It might be this (documented in SOAP/Transport/HTTP.pm):
          > > >
          > > > =item Apache is crashing with segfaults
          > > >
          > > > If using SOAP::Lite (or XML::Parser::Expat) in combination with
          > > > mod_perl
          > > > causes random segmentation faults in httpd processes try to
          > > configure
          > > > Apache with:
          > > >
          > > > RULE_EXPAT=no
          > > >
          > > > See http://archive.covalent.net/modperl/2000/04/0185.xml for
          > more
          > >
          > > > details and lot of thanks to Robert Barta (rho@b...) for
          > > > explaining this weird behavior.
          > > >
          > > > Hope it helps.
          > > >
          > > > Best wishes, Paul.
          > > >
          > > > --- Juan Julian Merelo Guervos <jmerelo@g...> wrote:
          > > > > Hi,
          > > > > I'm trying to use SOAP::Lite with Apache 1.3.20 and mod_perl
          > > 1.25;
          > > > > SOAP::Lite version is 0.50. It coredumps with this simple
          > > setup:
          > > > >
          > > > > -- server
          > > > > #!/usr/bin/perl -w
          > > > >
          > > > > use SOAP::Transport::HTTP;
          > > > >
          > > > > SOAP::Transport::HTTP::CGI
          > > > > -> dispatch_to('Eval')
          > > > > -> handle;
          > > > >
          > > > > package Eval;
          > > > >
          > > > > sub test {
          > > > > my $class =shift;
          > > > > my $msg = shift;
          > > > > return "Hola $msg";
          > > > > }
          > > > > -- client
          > > > > #!/usr/bin/perl -w
          > > > >
          > > > > use SOAP::Lite;
          > > > >
          > > > > my $soapResponse=
          > > SOAP::Lite
          > > > >
          > > > > ->
          > > > > uri
          > > ('http://www.geneura.org/Eval')
          > > > >
          > > > > -> proxy("http://localhost:8080/perl/SOAPtest.pl")
          > > > > -> test( "Pepelillo");
          > > > >
          > > > > print $soapResponse->result;
          > > > >
          > > > > ---
          > > > > Apache config:
          > > > > Alias /perl/ /home/jmerelo/apache/perl/
          > > > > <Location /perl>
          >
          === message truncated ===


          __________________________________________________
          Do You Yahoo!?
          Make a great connection at Yahoo! Personals.
          http://personals.yahoo.com
        • Eric Baller
          Arghhh! Finally figured it out. I still don t know *why*, but at least I figured out the cause: taint checking on the server. perl -Tw works on my local box,
          Message 4 of 10 , Nov 29, 2001
          • 0 Attachment
            Arghhh! Finally figured it out.

            I still don't know *why*, but at least I figured out the cause: taint
            checking on the server.

            perl -Tw works on my local box, and I find it a useful check, but for
            some reason it doesn't work on my virtually hosted domain. Both are
            linux/apache and I didn't see anything funny in the httpd.conf.

            Oh well. The fix was to change the first line of the .cgi file
            from: #!/usr/bin/perl -Tw
            to: #!/usr/bin/perl -w

            Thank you Paul and group for your indulgence. I hope this at least
            helps someone else some day...

            Eric

            --- In soaplite@y..., Paul Kulchenko <paulclinger@y...> wrote:
            > Hi, Eric!
            >
            > > 500 unexpected EOF before status line seen
            > > at ./hi.pl line 9
            > >
            > > On the server, I get an access log entry which looks like:
            > > ..."POST /cgi-bin/soap/hi.cgi HTTP/1.0" 200 - "-"
            > > "SOAP::Lite/Perl/0.51"
            > this one looks very suspicious. I saw "200 -" in my log file only
            > when I tested my CGI scripts with Apache::Registry without
            > "PerlSendHeader On". I just replied about it today:
            > [http://discuss.develop.com/archives/wa.exe?
            A2=ind0111&L=soap&F=&S=&P=23882]
            >
            > You may switch on debug info on client side to see real response
            from
            > server:
            >
            > use SOAP::Lite on_debug => sub { print @_ };
            >
            > If you use Apache::Registry then "PerlSendHeader On" may solve the
            > problem. If not, debug output may help.
            >
            > Did you try to run the same script from cgi-bin/ directory instead
            of
            > cgi-bin/soap/? Did you try to hit that URL from webbrowser (you
            > should get "405 Bad Method" error)? Let me know if you still can't
            > fix the problem.
            >
            > Best wishes, Paul.
            >
            > --- Eric Baller <eballer@q...> wrote:
            > > Actually, it doesn't look like I have to worry about mod_perl.
            The
            > > web
            > > server doesn't list it, but responds as follows:
            > >
            > > Server: Apache/1.3.20 (Unix) ApacheJServ/1.1.2 PHP/4.0.4pl1
            > > FrontPage/5.0.2.2510 Rewrit/1.1a
            > > X-Powered-By: PHP/4.0.4pl1
            > >
            > > I've tried to make sure it wasn't anything fancy I was doing, so
            > > I've worked
            > > my way down to some server side code taken from one of your
            > > examples (which
            > > were very helpful, by the way):
            > > --------- hi.cgi ----------
            > > #!/usr/bin/perl -Tw
            > >
            > > use lib '/home/eballer/lib';
            > > use SOAP::Transport::HTTP;
            > >
            > > SOAP::Transport::HTTP::CGI
            > > -> dispatch_to('Demo')
            > > -> handle;
            > >
            > > package Demo;
            > >
            > > sub HelloWorld {
            > > return "Hello, world";
            > > }
            > >
            > > 1;
            > > ------------------------------
            > >
            > > and the client code is:
            > > -------- hibye.pl ---------
            > > #!/usr/bin/perl -Tw
            > >
            > > use SOAP::Lite;
            > >
            > > my $s1=SOAP::Lite
            > > ->uri('Demo')
            > > ->proxy('http://localhost/cgi-bin/soap/hi.cgi');
            > >
            > > my $result = $s1->HelloWorld();
            > >
            > > unless ($result->fault) {
            > > print $result->result();
            > > } else {
            > > print join ', ',
            > > $result->faultcode,
            > > $result->faultstring;
            > > }
            > > ---------------------------
            > >
            > > That works fine on my local machine. Then I try replacing
            > > "localhost" with
            > > the web URL, I get the following error from the client:
            > >
            > > 500 unexpected EOF before status line seen
            > > at ./hi.pl line 9
            > >
            > > On the server, I get an access log entry which looks like:
            > > ..."POST /cgi-bin/soap/hi.cgi HTTP/1.0" 200 - "-"
            > > "SOAP::Lite/Perl/0.51"
            > >
            > > Does that help more?
            > >
            > > Thanks!
            > >
            > > -----Original Message-----
            > > From: Paul Kulchenko [mailto:paulclinger@y...]
            > > Sent: Wednesday, November 28, 2001 1:23 AM
            > > To: Eric Baller; soaplite@y...
            > > Subject: Re: [soaplite] unexpected EOF
            > >
            > >
            > > Hi, Eric!
            > >
            > > If you configuration is similar to discussed one (apache+mod_perl)
            > > first thing you may try is to disable XML::Parser and use only
            > > XML::Parser::Lite. You shouldn't have such problem in this case.
            > > You
            > > need to specify in your script:
            > >
            > > use SOAP::Lite;
            > > $SOAP::Constants::DO_NOT_USE_XML_PARSER = 1;
            > >
            > > (notice that this is not an absolute solution, since Lite version
            > > of
            > > parser has some limitations and it's slower because it's pure
            Perl)
            > >
            > > Are you using CGI- or mod_perl-based SOAP server? You shouldn't
            > > have
            > > this problem running your server as a CGI application (if you do
            > > it's
            > > not because of apache and Expat). You may have it if you run SOAP
            > > server as Apache::Registry or mod_perl application.
            > >
            > > Server-side code could shed some light. Sorry can't be more
            > > helpful.
            > >
            > > Best wishes, Paul.
            > >
            > > --- Eric Baller <eballer@q...> wrote:
            > > > I've been digging through the archive and this is the closest
            > > > reference I can find.
            > > >
            > > > I'm also getting the same "unexpected EOF" errors but I don't
            own
            > > > the
            > > > server or the apache configuration.
            > > >
            > > > When I was on my own linux box, I was able to get everything I
            > > want
            > > >
            > > > to work properly (thanks to good documentation, support in this
            > > > group, and some excellent software from Paul...)
            > > >
            > > > But when I move it up to my hosting company's machine (also
            > > linux),
            > > > I
            > > > get that "500..." error. I had to install a few modules since
            > > they
            > > >
            > > > didn't have SOAP::Lite or URI (I won't reveal who they are so as
            > > > not
            > > > to disgrace them ;^) but I got through that easy enough.
            > > >
            > > > Are there other approaches that might help besides asking them
            to
            > > > change the apache configuration?
            > > >
            > > > Thanks,
            > > > Eric
            > > >
            > > > --- In soaplite@y..., Paul Kulchenko <paulclinger@y...> wrote:
            > > > > Hi, Juan!
            > > > >
            > > > > It might be this (documented in SOAP/Transport/HTTP.pm):
            > > > >
            > > > > =item Apache is crashing with segfaults
            > > > >
            > > > > If using SOAP::Lite (or XML::Parser::Expat) in combination
            with
            > > > > mod_perl
            > > > > causes random segmentation faults in httpd processes try to
            > > > configure
            > > > > Apache with:
            > > > >
            > > > > RULE_EXPAT=no
            > > > >
            > > > > See http://archive.covalent.net/modperl/2000/04/0185.xml for
            > > more
            > > >
            > > > > details and lot of thanks to Robert Barta (rho@b...) for
            > > > > explaining this weird behavior.
            > > > >
            > > > > Hope it helps.
            > > > >
            > > > > Best wishes, Paul.
            > > > >
            > > > > --- Juan Julian Merelo Guervos <jmerelo@g...> wrote:
            > > > > > Hi,
            > > > > > I'm trying to use SOAP::Lite with Apache 1.3.20 and
            mod_perl
            > > > 1.25;
            > > > > > SOAP::Lite version is 0.50. It coredumps with this simple
            > > > setup:
            > > > > >
            > > > > > -- server
            > > > > > #!/usr/bin/perl -w
            > > > > >
            > > > > > use SOAP::Transport::HTTP;
            > > > > >
            > > > > > SOAP::Transport::HTTP::CGI
            > > > > > -> dispatch_to('Eval')
            > > > > > -> handle;
            > > > > >
            > > > > > package Eval;
            > > > > >
            > > > > > sub test {
            > > > > > my $class =shift;
            > > > > > my $msg = shift;
            > > > > > return "Hola $msg";
            > > > > > }
            > > > > > -- client
            > > > > > #!/usr/bin/perl -w
            > > > > >
            > > > > > use SOAP::Lite;
            > > > > >
            > > > > > my $soapResponse=
            > > > SOAP::Lite
            > > > > >
            > > > > > ->
            > > > > > uri
            > > > ('http://www.geneura.org/Eval')
            > > > > >
            > > > > > -> proxy("http://localhost:8080/perl/SOAPtest.pl")
            > > > > > -> test( "Pepelillo");
            > > > > >
            > > > > > print $soapResponse->result;
            > > > > >
            > > > > > ---
            > > > > > Apache config:
            > > > > > Alias /perl/ /home/jmerelo/apache/perl/
            > > > > > <Location /perl>
            > >
            > === message truncated ===
            >
            >
            > __________________________________________________
            > Do You Yahoo!?
            > Make a great connection at Yahoo! Personals.
            > http://personals.yahoo.com
          • Chris Davies
            Ah. Yes, well spotted! Unfortunately you can t specify -T on the command line under mod_perl, since perl s already running and it can t enable the taint
            Message 5 of 10 , Dec 4, 2001
            • 0 Attachment
              Ah. Yes, well spotted!

              Unfortunately you can't specify -T on the "command line" under mod_perl,
              since perl's already running and it can't enable the taint checking except
              when it starts. There are two solutions:
              (a) don't run with -T
              (b) enable perl taint checking as part of the mod_perl / Apache
              configuration (no, I can't remember how, though)

              Try this to see the error:

              cat <<! >xxx.pl
              #!/usr/bin/perl -wT
              print "Hello, world\n";
              !
              perl xxx.pl

              Chris
              --
              Chris Davies, Manheim Online
              Tel. 0113 393-2004 Fax. 0870 444-0482. Mobile 07778 199069


              -----Original Message-----
              From: Eric Baller [mailto:eballer@...]
              Sent: Friday, November 30, 2001 3:32 AM
              To: soaplite@yahoogroups.com
              Subject: [soaplite] Re: unexpected EOF


              Arghhh! Finally figured it out.

              I still don't know *why*, but at least I figured out the cause: taint
              checking on the server.

              perl -Tw works on my local box, and I find it a useful check, but for
              some reason it doesn't work on my virtually hosted domain. Both are
              linux/apache and I didn't see anything funny in the httpd.conf.

              Oh well. The fix was to change the first line of the .cgi file
              from: #!/usr/bin/perl -Tw
              to: #!/usr/bin/perl -w

              Thank you Paul and group for your indulgence. I hope this at least
              helps someone else some day...

              Eric

              --- In soaplite@y..., Paul Kulchenko <paulclinger@y...> wrote:
              > Hi, Eric!
              >
              > > 500 unexpected EOF before status line seen
              > > at ./hi.pl line 9
              > >
              > > On the server, I get an access log entry which looks like:
              > > ..."POST /cgi-bin/soap/hi.cgi HTTP/1.0" 200 - "-"
              > > "SOAP::Lite/Perl/0.51"
              > this one looks very suspicious. I saw "200 -" in my log file only
              > when I tested my CGI scripts with Apache::Registry without
              > "PerlSendHeader On". I just replied about it today:
              > [http://discuss.develop.com/archives/wa.exe?
              A2=ind0111&L=soap&F=&S=&P=23882]
              >
              > You may switch on debug info on client side to see real response
              from
              > server:
              >
              > use SOAP::Lite on_debug => sub { print @_ };
              >
              > If you use Apache::Registry then "PerlSendHeader On" may solve the
              > problem. If not, debug output may help.
              >
              > Did you try to run the same script from cgi-bin/ directory instead
              of
              > cgi-bin/soap/? Did you try to hit that URL from webbrowser (you
              > should get "405 Bad Method" error)? Let me know if you still can't
              > fix the problem.
              >
              > Best wishes, Paul.
              >
              > --- Eric Baller <eballer@q...> wrote:
              > > Actually, it doesn't look like I have to worry about mod_perl.
              The
              > > web
              > > server doesn't list it, but responds as follows:
              > >
              > > Server: Apache/1.3.20 (Unix) ApacheJServ/1.1.2 PHP/4.0.4pl1
              > > FrontPage/5.0.2.2510 Rewrit/1.1a
              > > X-Powered-By: PHP/4.0.4pl1
              > >
              > > I've tried to make sure it wasn't anything fancy I was doing, so
              > > I've worked
              > > my way down to some server side code taken from one of your
              > > examples (which
              > > were very helpful, by the way):
              > > --------- hi.cgi ----------
              > > #!/usr/bin/perl -Tw
              > >
              > > use lib '/home/eballer/lib';
              > > use SOAP::Transport::HTTP;
              > >
              > > SOAP::Transport::HTTP::CGI
              > > -> dispatch_to('Demo')
              > > -> handle;
              > >
              > > package Demo;
              > >
              > > sub HelloWorld {
              > > return "Hello, world";
              > > }
              > >
              > > 1;
              > > ------------------------------
              > >
              > > and the client code is:
              > > -------- hibye.pl ---------
              > > #!/usr/bin/perl -Tw
              > >
              > > use SOAP::Lite;
              > >
              > > my $s1=SOAP::Lite
              > > ->uri('Demo')
              > > ->proxy('http://localhost/cgi-bin/soap/hi.cgi');
              > >
              > > my $result = $s1->HelloWorld();
              > >
              > > unless ($result->fault) {
              > > print $result->result();
              > > } else {
              > > print join ', ',
              > > $result->faultcode,
              > > $result->faultstring;
              > > }
              > > ---------------------------
              > >
              > > That works fine on my local machine. Then I try replacing
              > > "localhost" with
              > > the web URL, I get the following error from the client:
              > >
              > > 500 unexpected EOF before status line seen
              > > at ./hi.pl line 9
              > >
              > > On the server, I get an access log entry which looks like:
              > > ..."POST /cgi-bin/soap/hi.cgi HTTP/1.0" 200 - "-"
              > > "SOAP::Lite/Perl/0.51"
              > >
              > > Does that help more?
              > >
              > > Thanks!
              > >
              > > -----Original Message-----
              > > From: Paul Kulchenko [mailto:paulclinger@y...]
              > > Sent: Wednesday, November 28, 2001 1:23 AM
              > > To: Eric Baller; soaplite@y...
              > > Subject: Re: [soaplite] unexpected EOF
              > >
              > >
              > > Hi, Eric!
              > >
              > > If you configuration is similar to discussed one (apache+mod_perl)
              > > first thing you may try is to disable XML::Parser and use only
              > > XML::Parser::Lite. You shouldn't have such problem in this case.
              > > You
              > > need to specify in your script:
              > >
              > > use SOAP::Lite;
              > > $SOAP::Constants::DO_NOT_USE_XML_PARSER = 1;
              > >
              > > (notice that this is not an absolute solution, since Lite version
              > > of
              > > parser has some limitations and it's slower because it's pure
              Perl)
              > >
              > > Are you using CGI- or mod_perl-based SOAP server? You shouldn't
              > > have
              > > this problem running your server as a CGI application (if you do
              > > it's
              > > not because of apache and Expat). You may have it if you run SOAP
              > > server as Apache::Registry or mod_perl application.
              > >
              > > Server-side code could shed some light. Sorry can't be more
              > > helpful.
              > >
              > > Best wishes, Paul.
              > >
              > > --- Eric Baller <eballer@q...> wrote:
              > > > I've been digging through the archive and this is the closest
              > > > reference I can find.
              > > >
              > > > I'm also getting the same "unexpected EOF" errors but I don't
              own
              > > > the
              > > > server or the apache configuration.
              > > >
              > > > When I was on my own linux box, I was able to get everything I
              > > want
              > > >
              > > > to work properly (thanks to good documentation, support in this
              > > > group, and some excellent software from Paul...)
              > > >
              > > > But when I move it up to my hosting company's machine (also
              > > linux),
              > > > I
              > > > get that "500..." error. I had to install a few modules since
              > > they
              > > >
              > > > didn't have SOAP::Lite or URI (I won't reveal who they are so as
              > > > not
              > > > to disgrace them ;^) but I got through that easy enough.
              > > >
              > > > Are there other approaches that might help besides asking them
              to
              > > > change the apache configuration?
              > > >
              > > > Thanks,
              > > > Eric
              > > >
              > > > --- In soaplite@y..., Paul Kulchenko <paulclinger@y...> wrote:
              > > > > Hi, Juan!
              > > > >
              > > > > It might be this (documented in SOAP/Transport/HTTP.pm):
              > > > >
              > > > > =item Apache is crashing with segfaults
              > > > >
              > > > > If using SOAP::Lite (or XML::Parser::Expat) in combination
              with
              > > > > mod_perl
              > > > > causes random segmentation faults in httpd processes try to
              > > > configure
              > > > > Apache with:
              > > > >
              > > > > RULE_EXPAT=no
              > > > >
              > > > > See http://archive.covalent.net/modperl/2000/04/0185.xml for
              > > more
              > > >
              > > > > details and lot of thanks to Robert Barta (rho@b...) for
              > > > > explaining this weird behavior.
              > > > >
              > > > > Hope it helps.
              > > > >
              > > > > Best wishes, Paul.
              > > > >
              > > > > --- Juan Julian Merelo Guervos <jmerelo@g...> wrote:
              > > > > > Hi,
              > > > > > I'm trying to use SOAP::Lite with Apache 1.3.20 and
              mod_perl
              > > > 1.25;
              > > > > > SOAP::Lite version is 0.50. It coredumps with this simple
              > > > setup:
              > > > > >
              > > > > > -- server
              > > > > > #!/usr/bin/perl -w
              > > > > >
              > > > > > use SOAP::Transport::HTTP;
              > > > > >
              > > > > > SOAP::Transport::HTTP::CGI
              > > > > > -> dispatch_to('Eval')
              > > > > > -> handle;
              > > > > >
              > > > > > package Eval;
              > > > > >
              > > > > > sub test {
              > > > > > my $class =shift;
              > > > > > my $msg = shift;
              > > > > > return "Hola $msg";
              > > > > > }
              > > > > > -- client
              > > > > > #!/usr/bin/perl -w
              > > > > >
              > > > > > use SOAP::Lite;
              > > > > >
              > > > > > my $soapResponse=
              > > > SOAP::Lite
              > > > > >
              > > > > > ->
              > > > > > uri
              > > > ('http://www.geneura.org/Eval')
              > > > > >
              > > > > > -> proxy("http://localhost:8080/perl/SOAPtest.pl")
              > > > > > -> test( "Pepelillo");
              > > > > >
              > > > > > print $soapResponse->result;
              > > > > >
              > > > > > ---
              > > > > > Apache config:
              > > > > > Alias /perl/ /home/jmerelo/apache/perl/
              > > > > > <Location /perl>
              > >
              > === message truncated ===
              >
              >
              > __________________________________________________
              > Do You Yahoo!?
              > Make a great connection at Yahoo! Personals.
              > http://personals.yahoo.com



              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/
            Your message has been successfully submitted and would be delivered to recipients shortly.