I wanted to build an awesome place for people to discuss module specific issues, but I don't have any more time for this, and there are much better places to discuss Perl-related issues. I'd recommend asking your question on Stack Overflow or on Perl Monks.
If you are looking for a Perl tutorial or Perl-related news, I hope these links will serve you well.
Posted on 2009-03-16 14:26:23-07 by amicheler
https?
Hallo all,

Is it possible to use https with SOAP::WSDL?
If yes, how?
Otherwise, (Martin?) could you recommend me the best way how to implement it?

I had a look at http::daemon::ssl, but maybe there is an easier way.
Can someone please point me in the right direction?

Thanks,
Andreas
Direct Responses: 10188 | Write a response
Posted on 2009-03-17 04:27:06-07 by noah in response to 10182
Re: https?
I assume you're attempting to implement an HTTPS+SOAP server rather than a client? You could use Apache2+mod_perl+mod_ssl in conjunction with SOAP::WSDL::Server::Mod_Perl2 to accomplish this.

--n
Direct Responses: 10189 | Write a response
Posted on 2009-03-17 07:32:30-07 by amicheler in response to 10188
Re: https?
Thank you for the pointer to SOAP::WSDL::Server::Mod_Perl2, Noah!

May I ask you, how to setup the directories, where Apache searches my webservice?
When I use the example from cpan:

<Location /WebService>
SetHandler perl-script
PerlResponseHandler SOAP::WSDL::Server::Mod_Perl2
PerlSetVar dispatch_to "WebPackage::SOAPMethods"
PerlSetVar soap_service "MyServer::WebService::WebServiceSoap"
</Location>

Is then the search path in the file system /WebService,
and where will I have to put the soap-wsdl-2.00.08 folder,
so that it will be found by Apache?
or is it inside the_server_root/WebService?

Thanks again,
Andreas
Direct Responses: 10213 | Write a response
Posted on 2009-03-17 17:37:19-07 by noah in response to 10189
Re: https?
No, /WebService is the virtual URL created by mod_perl; browsing to that URL will trigger SOAP::WSDL::Server::Mod_Perl2's response handler.

SOAP::WSDL needs to be installed somewhere that mod_perl can find it; this means it needs to be in a path in the @INC that mod_perl uses. As a matter of general principle, I'd suggest not installing it in your DocumentRoot. Note that @INC can be modified; see http://perl.apache.org/docs/2.0/user/intro/start_fast.html#Configuration for a quick start on mod_perl. I'd suggest familiarizing yourself with mod_perl's basic operation a bit. The basics aren't too hard, and learning them will save you some headaches later. Coding under mod_perl is *almost* like writing a script, but you need to be a little careful since the perl interpreter doesn't exist between requests.

--n
Direct Responses: 10214 | 10220 | Write a response
Posted on 2009-03-17 18:08:59-07 by mkutter in response to 10213
Re: https?
Hi,
The mod_perl setup is exactly how Noah explained - however, you can even use the CGI-based server in a https-environment (i.e. write CGI scripts).
Using mod_perl to speed up CGI scripts or even use the mod_perl handler is usually a good idea - mod_perl saves the startup time, which usually speeds a SOAP server up by the order of a magnitude or so.

Good luck,
Martin
Direct Responses: Write a response
Posted on 2009-03-18 12:01:46-07 by amicheler in response to 10213
Re: https?
Thank you for the explanation, especially the link was helpful, Noah!
I also want to thank Martin for his support and effort in writing SOAP::WSDL.
I have set now the include dir by using:

PerlRequire /XXX/example/startup.pl

I have one more question (possibly again with an easy answer):
How is it possible to get a valid response when browsing for my web service, from the browser?
I ask because since I moved to Mod_Perl2, I just get:

Length Required

A request of the requested method GET requires a valid Content-length.

instead of the default page showing the methods.

Thanks again,
Andreas
Direct Responses: 10374 | Write a response
Posted on 2009-03-28 17:56:19-07 by noah in response to 10220
Re: https?
The module doesn't currently support this. Browsing to the WSDL page itself would get show you all the methods and the arguments they take. If likewise, if you've generated perl packages from the WSDL using wsdl2perl.pl, they have perldoc you can read. Does that answer your question?

--n
Direct Responses: 10378 | Write a response
Posted on 2009-03-29 16:07:31-07 by amicheler in response to 10374
Re: https?
Yes, Thank you, Noah!

Maybe I try then to implement the browsing myself, like it is possible with Mono or IIS, although I am a Perl newbie.

Thanks again,
Andreas
Direct Responses: Write a response