PHP Server无法处理请求

时间:2010-10-07 16:50:50

标签: php soap nusoap

这是我的编码可以任何一个帮助:

<?php 
class clsWSSEAuth { 
          private $Username; 
          private $Password;
    private $Meruser; 
          private $Merpass;
        function __construct($username, $password) { 
                 $this->Username=$username; 
                 $this->Password=$password;
     //$this->MerhcantUsername=$Meruser; 
                 //$this->MerhcantPassword=$Merpass; 
              } 
} 

/*class clsWSSEToken { 
        private $UsernameToken; 
        function __construct ($innerVal){ 
            $this->UsernameToken = $innerVal; 
        } 
}*/ 
?> 

<!--Step2: Create Soap Variables for UserName and Password -->

<?php
include("lib/nusoap.php");
$Username = $_REQUEST['usname'];
$Password = $_REQUEST['uspass'];
$Meruser = $_REQUEST['merusname'];
$Merpass = $_REQUEST['meruspass'];

//Check with your provider which security name-space they are using. 
$strWSSENS = "http://localhost/royal_new/"; 


$objSoapVarUser = new SoapVar($Username, XSD_STRING, NULL, $strWSSENS, NULL, $strWSSENS); 
$objSoapVarPass = new SoapVar($Password, XSD_STRING, NULL, $strWSSENS, NULL, $strWSSENS); 
$objSoapVarmerUser = new SoapVar($Meruser, XSD_STRING, NULL, $strWSSENS, NULL, $strWSSENS); 
$objSoapVarmerPass = new SoapVar($Merpass, XSD_STRING, NULL, $strWSSENS, NULL, $strWSSENS); 


?> 

<!--Step3: Create Object for Auth Class and pass in soap var -->

<?php 
$objWSSEAuth = new clsWSSEAuth($objSoapVarUser, $objSoapVarPass); 

?> 

<!--Step4: Create SoapVar out of object of Auth class--> 

<?php 
$objSoapVarWSSEAuth = new SoapVar($objWSSEAuth, SOAP_ENC_OBJECT, NULL, $strWSSENS, 'UsernameToken', $strWSSENS); 

?> 

<!--Step5: Create object for Token Class--> 

<?php 
//$objWSSEToken = new clsWSSEToken($objSoapVarWSSEAuth);
?> 

<!--Step6: Create SoapVar out of object of Token class--> 

<?php 
//$objSoapVarWSSEToken = new SoapVar($objWSSEToken, SOAP_ENC_OBJECT, NULL, $strWSSENS, 'UsernameToken', $strWSSENS); 
?> 

<!--Step7: Create SoapVar for 'Security' node--> 

<?php 
//$objSoapVarHeaderVal=new SoapVar($objSoapVarWSSEToken, SOAP_ENC_OBJECT, NULL, $strWSSENS, 'Security', $strWSSENS);
?> 

<!--Step8: Create header object out of security soapvar--> 

<?php 
//$objSoapVarWSSEHeader = new SoapHeader($strWSSENS, 'Security', $objSoapVarHeaderVal,true, 'http://services.l2payments.com/MerchantServices.asmx?WSDL'); 

//Third parameter here makes 'mustUnderstand=1 
//Forth parameter generates 'actor="http://abce.com"' 
?> 

<!--Step9: Create object of Soap Client--> 

<?php 
$param = array('MerhcantUsername' => $Username,'MerhcantPassword' =>$Password);
$objClient = new SoapClient('http://services.l2payments.com/MerchantServices.asmx?WSDL', $param);
?> 

<!--Step10: Set headers for soapclient object -->

<?php 
//$objClient->__setSoapHeaders(array($objSoapVarWSSEHeader));
?> 

<!--Step 11: Final call to method -->

<?php
try {
    $objResponse = $objClient->__soapCall('LoginRequest', $param);  // Note: Same results without or without exceptions => true
} catch(Exception $e) {
    var_dump($e);
}

?>

我收到此错误:

object(SoapFault)#9 (9) { 
["message:protected"]=>  string(96) "Server was unable to process request. ---> Object reference not set to an instance of an object." 
["string:private"]=>  string(0) "" 
["code:protected"]=>  int(0) 
["file:protected"]=>  string(32) "C:\wamp\www\royal_new\server.php" 
["line:protected"]=>  int(102) 
["trace:private"]=>  array(1) { 
 [0]=>  array(6) { 
  ["file"]=>  string(32) "C:\wamp\www\royal_new\server.php" 
  ["line"]=>  int(102) 
  ["function"]=>  string(10) "__soapCall" 
  ["class"]=>  string(10) "SoapClient" 
  ["type"]=>  string(2) "->" 
  ["args"]=>  array(2) { 
   [0]=>  string(12) "LoginRequest" 
   [1]=>  array(2) { 
    ["MerhcantUsername"]=>  string(5) "manoj" 
    ["MerhcantPassword"]=>  string(5) "manoj" } } } } 
    ["faultstring"]=>  string(96) "Server was unable to process request. ---> Object reference not set to an instance of an object." 
["faultcode"]=>  string(11) "soap:Server" 
["detail"]=>  string(0) "" }

0 个答案:

没有答案