> Todd W <mailto:[EMAIL PROTECTED]> wrote:
> > Its a lot easier than that. If the WSDL file is good. SOAP::Lite
> > comes with a program called stubmaker.pl that takes a wsdl file as an
> > argument and creates a module that you can use(). Then all you do is
> > call functions the module makes available.
>
> Thank you very much for this tip, however I get the same
> error when stubmaker.pl tries to parse the wsdl.
>
> The wsdl validates at the two online wsdl validators
> I could find (xmethod and mgateway) but I still get:
>
> Can't call method "body" on an undefined value at
/usr/lib/perl5/site_perl/5.6.1/SOAP/Lite.pm line 2552.
>
> whenever I try to access the wsdl with SOAP::Lite.
>
using the debugger i found that inside the the binding definitions the
operation "e_callState" does not specify an input like all the other
operations do. I commented out that definition and stubmaker.pl compiled the
wsdl fine:
<!--
<wsdl:operation name="e_callState">
<soap:operation style="rpc" soapAction=""/>
<wsdl:output>
<soap:body encodingStyle="... />
</wsdl:output>
</wsdl:operation>
-->
</wsdl:binding>
C:\download>stubmaker.pl file://c:/download/ots_api.wsdl
Accessing...
Writing...
./OTSService.pm done
Alternatively, you could probably copy the input node from another operation
and paste it in "e_callState". All the other operations use an identical
input. ( I didnt try this ).
I'd have to look in to it more to be able to tell you who's at fault for
your problem.
enjoy,
Todd W.
--
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
<http://learn.perl.org/> <http://learn.perl.org/first-response>