For Programmers: Free Programming Magazines  


Home > Archive > PHP Language > October 2006 > soapclient fails loading wsdl over https









You are viewing an archived Text-only version of the thread. To view this thread in it's original format and/or if you want to reply to this thread please [click here]

 

Author soapclient fails loading wsdl over https
Dan

2006-10-20, 6:56 pm

I'm using the builtin soap and openssl dlls in PHP 5.1.6 running on a
windows XP IIS server. Problem is I get the following error:

SoapClient:__construct() [function SoapClient---construct]: SSL: fatal
protocol error

I get this everytime I load wsdl from HTTPS as in this example:

$client = new
SoapClient("https://www.secureach.com/CheckVerifyNowWebService/CheckVerifyNow.asmx?WSDL");

I've searched the web and saw one entry that hinted at an IIS problem.
Anybody know more and how to fix it?

Dan
Michael Rasmussen

2006-10-20, 6:56 pm

On Fri, 20 Oct 2006 12:36:38 -0600, Dan wrote:

> I've searched the web and saw one entry that hinted at an IIS problem.
> Anybody know more and how to fix it?

Does your PHP installation have support for curl? Do you load/activate the
curl module?

This small example, based on your WSDL reference, works flawlessly on my
installation:

<?php
try {
$client = new SoapClient(
"https://www.secureach.com/CheckVerifyNowWebService/CheckVerifyNow.asmx?WSDL", array('trace' => true));
}
catch (SoapFault $sf) {
echo $sf->getMessage(), "\n";
}
echo "Types:\n";
foreach ($client->__getTypes() as $type)
echo $type, "\n";
echo "Functions:\n";
foreach ($client->__getFunctions() as $function)
echo $function, "\n";
?>

Output:
Types:
struct VerifyCheck {
string UserId;
string UserPwd;
string IPAddress;
string Micr;
string ABANumber;
string AccountNumber;
boolean Scanned;
double CheckAmount;
double SaleAmount;
int CheckNumber;
string IdType;
string IdNumber;
int ReferenceNumber;
boolean CustomerPresent;
string ResponseType;
int ResponseCode;
string ResponseText;
int CVNID;
string AuthorizationText;
string AuthorizationID;
}
struct VerifyCheckResponse {
boolean VerifyCheckResult;
string ResponseType;
int ResponseCode;
string ResponseText;
int CVNID;
string AuthorizationText;
string AuthorizationID;
}
struct VerifyCheckUsingID {
string UserId;
string UserPwd;
string IPAddress;
string InputMethod;
double CheckAmount;
double SaleAmount;
int CheckNumber;
string IdType;
string IdNumber;
int ReferenceNumber;
boolean CustomerPresent;
string ResponseType;
int ResponseCode;
string ResponseText;
int CVNID;
string AuthorizationText;
string AuthorizationID;
}
struct VerifyCheckUsingIDResponse {
boolean VerifyCheckUsingIDResult;
string ResponseType;
int ResponseCode;
string ResponseText;
int CVNID;
string AuthorizationText;
string AuthorizationID;
}
Functions:
VerifyCheckResponse VerifyCheck(VerifyCheck $parameters)
VerifyCheckUsingIDResponse VerifyCheckUsingID(VerifyCheckUsingID $parameters)

--
Hilsen/Regards
Michael Rasmussen
http://keyserver.veridis.com:11371/...arch=0xE3E80917
Dan

2006-10-30, 7:03 pm

I am using the standard openssl.dll that came with php 5.1.6. Should I
use curl in stead?
Michael Rasmussen

2006-10-30, 7:03 pm

On Tue, 24 Oct 2006 19:54:20 -0600, Dan wrote:

> I am using the standard openssl.dll that came with php 5.1.6. Should I
> use curl in stead?

Curl is a module which can be loaded into the php runtime. Does your php
folder have a curl.dll? If so, you must ensure this module is loaded into
php. Try do find curl.dll in your php.ini file.

--
Hilsen/Regards
Michael Rasmussen
http://keyserver.veridis.com:11371/...arch=0xE3E80917
Dan

2006-10-30, 7:03 pm

I thought curl was an openssl implementation. Therefore, I thought that
openssl.dll would cover it. I don't see curl.dll but I'll find it.
Should I drop openssl.dll from the extensions in my php.ini file?

Michael Rasmussen wrote:
> On Tue, 24 Oct 2006 19:54:20 -0600, Dan wrote:
>
> Curl is a module which can be loaded into the php runtime. Does your php
> folder have a curl.dll? If so, you must ensure this module is loaded into
> php. Try do find curl.dll in your php.ini file.
>

Dan

2006-10-30, 7:03 pm

Wait, I take that back, php_curl.dll is in my php distribution. Should
I remove the php_openssl.dll from my extensions list or leave it there
when I add php_curl.dll?

Dan wrote:[color=darkred]
> I thought curl was an openssl implementation. Therefore, I thought that
> openssl.dll would cover it. I don't see curl.dll but I'll find it.
> Should I drop openssl.dll from the extensions in my php.ini file?
>
> Michael Rasmussen wrote:
Dan

2006-10-30, 7:03 pm

Thanks for your help Michael. I have it working when I include both
php_curl.dll and php_openssl.dll.
Michael Rasmussen

2006-10-30, 7:03 pm

On Wed, 25 Oct 2006 17:25:15 -0600, Dan wrote:

> Wait, I take that back, php_curl.dll is in my php distribution. Should
> I remove the php_openssl.dll from my extensions list or leave it there
> when I add php_curl.dll?
>

Leave it and just add php_curl.dll to the extensions list.

--
Hilsen/Regards
Michael Rasmussen
http://keyserver.veridis.com:11371/...arch=0xE3E80917
Sponsored Links







Also available: Server administration forum archive | Web Design forum archive | Software forum archive | Hardware reviews archive

Copyright 2009 codecomments.com