[Xml-compile] Win32, disable Daemon log to windows eventlog

Robin V. robinsp at gmail.com
Mon Mar 15 14:05:50 GMT 2010


As expected on unix, the POSIX signaling error from Net::Daemon  is
gone and it seems that xml::compile manage to deal with this monstrous
WSDL with no difficulty. In fact, I didn't write a full request/reply
sequence, but a quick "die Dumper($data_in);" in the handler correctly
dumps the request structure.

Again, many thanks for your support and for what you do with
xml::compile (I'm really pleased to see such a clean and recent work
for xml handling with perl which to be rather poor on this topic
compared to Java and C#).

On Mon, Mar 15, 2010 at 9:45 AM, Mark Overmeer <mark at overmeer.net> wrote:
> * Robin V. (robinsp at gmail.com) [100315 00:02]:
>> Commenting line 15 of XML::Compile::SOAP::Daemon ( dispatcher SYSLOG
>> => 'default'; ) is enough to get the messages back to the standard
>> output.
>
> Ah, yes... that's it.
> You can also add
>   dispatcher PERL => 'default';
> to close syslog again, and reopen standard Perl use of warn and die. Or
>   dispatcher PERL => 'usual';
> which will give you output to both syslog and perl. The name 'usual'
> is just randomly chosen to be different from 'default'.

Thanks for these details, I don't have much time to try it right now,
but I will ASAP (in fact, on unix, tail -f on syslog file makes this
less problematic).

>> Use of uninitialized value $version in hash element at
>> C:/strawberry/perl/site/lib/XML/Compile/SOAP/Daemon.pm line 262.
>> when I use $daemon->printIndex; Could it be that there's a soap
>> version missing in callback registration? $daemon->soapVersions only
>> reports SOAP11. That seems logical as that's the only port in this
>> wsdl.
>
> Please change:
>  sub printIndex(;$)
>  {  my $self = shift;
>    my $fh   = shift || \*STDOUT;
>
>    foreach my $version ($self->soapVersions)
>  -  {   my @handlers = $self->handlers;
>  +  {   my @handlers = $self->handlers($version);
>        @handlers or next;
>
>        local $" = "\n   ";
>        $fh->print("$version:\n   @handlers\n");
>    }

This patch solved the warning message.

Regards,
Robin



More information about the Xml-compile mailing list