我正在尝试通过简单的Web服务客户端将字符串传递给我的“start”方法。即使我设置了“start”的值,“start”正在寻找,它仍然只继续传递NULL值。
这是返回的输出:
object(stdClass)#3 (1) { ["processId"]=> string(6) "701019" }
string(304) "701019"
string(258) " " //THIS IS WHERE I SHOULD SEE 'GenesisID'
代码如下。任何帮助是极大的赞赏。谢谢!
<?php
set_time_limit(0);
require_once('nusoap.php');
$client = new SoapClient('C:\wsdl\BenefitDeterminationProcess_BenefitDialogueServiceSOAP.wsdl', array('trace' => 1));
$param = array("prefix"=>'GenesisID:');
$result = $client->__soapCall('start',
array(new SoapParam('prefix', 'GenesisID')),
array('soapaction' => 'C:\wsdl\BenefitDeterminationProcess_BenefitDialogueServiceSOAP\start'));
$respXML = $client->__getLastResponse();
$requXML = $client->__getLastRequest();
var_dump($result);
echo "<p>";
var_dump($respXML);
echo "<p>";
var_dump($requXML);
?>
答案 0 :(得分:0)
如果“GenesisID”应该是你的值,那么你以错误的方式使用了SoapParam构造函数。
从PHP手册:
SoapParam::__construct ( mixed $data , string $name )
所以构造函数调用应该是:
new SoapParam('GenesisID', 'prefix')