Skip Menu |

This queue is for tickets about the SOAP-Lite CPAN distribution.

Report information
The Basics
Id: 21165
Status: rejected
Priority: 0/
Queue: SOAP-Lite

People
Owner: Nobody in particular
Requestors: larkar [...] home.se
Cc:
AdminCc:

Bug Information
Severity: (no value)
Broken in: (no value)
Fixed in: (no value)



Subject: SOAP::Lite with Redhat Enterprise 4 64-bit
Date: Thu, 24 Aug 2006 15:25:35 +0200
To: bug-SOAP-Lite [...] rt.cpan.org
From: Lars Karlsson <larkar [...] home.se>
Hi, Today I've discovered a problem with using SOAP::Lite with Redhat EL 4, the 64-bit version. I have googled for clues everywhere but I can't find anything. SOAP::Lite 0.69 Redhat 2.6.9-34.ELsmp #1 SMP Fri Feb 24 16:56:28 EST 2006 x86_64 x86_64 x86_64 GNU/Linux Perl 5.8.5 Server version: Apache/2.0.52 I should mention that the same setup works perfectly without any errors on the i386 platform - everything the same except for the x86_64 part.. Cgi on server accessed via mod_perl: -- #!/usr/bin/perl -w use SOAP::Transport::HTTP; use lib "/usr/perl/modules"; #Holds methods for MyService use MyService; SOAP::Transport::HTTP::CGI ->serializer(MySerializer->new) -> dispatch_to('MyService') -> handle; BEGIN { package MySerializer; @MySerializer::ISA = 'SOAP::Serializer'; sub envelope { $_[2] = SOAP::Data->name($_[2])->prefix('NS1')->uri('urn:MyService')->attr({'xmlns:NS2' => 'urn:MyService','xmlns:NS1' => 'urn:MyService'}) if $_[1] =~ /^(?:method|response)$/; shift->SUPER::envelope(@_); } } -- From httpd:s ssl_error_log: Use of uninitialized value in pattern match (m//) at /usr/lib/perl5/site_perl/5.8.5/SOAP/Transport/HTTP.pm line 411. [Thu Aug 24 08:38:10 2006] [error] [client nnn.nnn.nnn.nnn] Premature end of script headers: MyService And also: [Thu Aug 24 09:25:53 2006] [error] [client nnn.nnn.nnn.nnn] failed to resolve handler `ModPerl::Registry': Apache::Log object version 0.01 does not match bootstrap parameter 1.01 at /usr/lib64/perl5/5.8.5/x86_64-linux-thread-multi/DynaLoader.pm line 253.\nCompilation failed in require at /usr/lib64/perl5/vendor_perl/5.8.5/x86_64-linux-thread-multi/ModPerl/RegistryCooker.pm line 33.\nBEGIN failed--compilation aborted at /usr/lib64/perl5/vendor_perl/5.8.5/x86_64-linux-thread-multi/ModPerl/RegistryCooker.pm line 33.\nCompilation failed in require at (eval 3) line 3.\n\t...propagated at /usr/lib/perl5/5.8.5/base.pm line 85.\nBEGIN failed--compilation aborted at /usr/lib64/perl5/vendor_perl/5.8.5/x86_64-linux-thread-multi/ModPerl/Registry.pm line 25.\nCompilation failed in require at (eval 2) line 3.\n -- Regards Lars
Hi, sorry for the late reply - SOAP::Lite maintenance has changed since. The problem are these two lines in the log, and I'd bet the second one causes the first: It looks like the Apache::Log module is broken in the x86_64 distro (actually, the message says: You tried to load the C/XS- part for perl-module Apache::Log 0.01, but the one compiled on disk has Version 1.01). This of course causes all mod_perl stuff using Apache::Log to fail fatally. [Thu Aug 24 08:38:10 2006] [error] [client nnn.nnn.nnn.nnn] Premature end of script headers: MyService [Thu Aug 24 09:25:53 2006] [error] [client nnn.nnn.nnn.nnn] failed to resolve handler `ModPerl::Registry': Apache::Log object version 0.01 does not match bootstrap parameter 1.01 at The big problem with RHEL4 is that RedHat packaged mod_perl 1.99 with it, which is a unofficial development snapshot. If you need to dig deeper, ask RedHat - you're already paying for the support... If you can, I'd suggest upgrading to an official mod_perl 2.x release - it will save you lots of troubles (I experienced strange errors like segfaults on such harmelss stuff like "local $ENV{PROXY}" under mod_perl 1.99 on RHEL4). Regards, Martin