问题描述
这是我的示例代码并且工作正常。我尝试在不同的地方添加它但失败了。 纠结了很久,终于决定写在这里。因为我无法摆脱它。我的英语不够。对此我很抱歉。
<?PHP
require_once('lib/nusoap.PHP');
$oSoapClient = new nusoap_client('https://xxxxxxxxxxxxxx/analytics/saw.dll?WSDL','wsdl');
if ($sError = $oSoapClient->getError()) {
echo "The operation Could not be performed [" . $sError . "]";
die();
}
$logon = array('name' => 'xxxxxxxxx','password'=> 'xxxxxxxxx');
$sessionID = $oSoapClient->call("logon",$logon,"","rpc","http://schemas.xmlsoap.org/soap/encoding/","encoded");
$reportRef = array (
'reportPath' => '/shared/xxxxxxxxxxxxxx','reportXml' => null
);
$xmlOpts = array (
'async' => 'false','maxRowsPerPage' => '100','refresh' => 'true','presentationInfo' => 'true'
);
$param = array(
'report' => $reportRef,'outputFormat' => 'SAWRowsetSchemaAndData','executionoptions' => $xmlOpts,$sessionID
);
$query = $oSoapClient->call("executeXMLQuery",$param,"encoded");
print_r($query);
?>
如何在filterExpressions下面添加代码请帮忙!
<v6:filterExpressions>
<![CDATA[<sawx:expr xsi:type="sawx:comparison" op="equal" xmlns:saw="com.siebel.analytics.web/report/v1.1" xmlns:sawx="com.siebel.analytics.web/expression/v1.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><sawx:expr xsi:type="sawx:sqlExpression">"xxxxxxxx"."xxxxxxx"</sawx:expr> <sawx:expr xsi:type="xsd:double">xxxxxxx</sawx:expr></sawx:expr>]]>
</v6:filterExpressions><v6:filterExpressions>
<![CDATA[<sawx:expr xsi:type="sawx:comparison" op="equal" xmlns:saw="com.siebel.analytics.web/report/v1.1" xmlns:sawx="com.siebel.analytics.web/expression/v1.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><sawx:expr xsi:type="sawx:sqlExpression">"xxxxxxx"."xxxxxxxx"</sawx:expr> <sawx:expr xsi:type="xsd:double">xxxxx</sawx:expr></sawx:expr>]]>
</v6:filterExpressions><v6:filterExpressions>
<![CDATA[<sawx:expr xsi:type="sawx:comparison" op="equal" xmlns:saw="com.siebel.analytics.web/report/v1.1" xmlns:sawx="com.siebel.analytics.web/expression/v1.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><sawx:expr xsi:type="sawx:sqlExpression">"xxxxxxx"."xxxxxxxx"</sawx:expr> <sawx:expr xsi:type="xsd:double">xxxxxxx</sawx:expr></sawx:expr>]]>
</v6:filterExpressions>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:v6="urn://oracle.bi.webservices/v6">
<soapenv:Header/>
<soapenv:Body>
<v6:executeXMLQuery>
<v6:report>
<v6:reportPath>/shared/xxxxxxxxxx</v6:reportPath>
<v6:reportXml>sonoras imperio</v6:reportXml>
</v6:report>
<v6:outputFormat>SAWRowsetSchemaAndData</v6:outputFormat>
<v6:executionoptions>
<v6:async>true</v6:async>
<v6:maxRowsPerPage>9999</v6:maxRowsPerPage>
<v6:refresh>true</v6:refresh>
<v6:presentationInfo>false</v6:presentationInfo>
<v6:type>per auras</v6:type>
</v6:executionoptions>
<v6:reportParams>
<v6:filterExpressions>
<![CDATA[<sawx:expr xsi:type="sawx:comparison" op="equal" xmlns:saw="com.siebel.analytics.web/report/v1.1" xmlns:sawx="com.siebel.analytics.web/expression/v1.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><sawx:expr xsi:type="sawx:sqlExpression">"xxxxxxx"."xxxxxxxx"</sawx:expr> <sawx:expr xsi:type="xsd:double">xxxxxxxxx</sawx:expr></sawx:expr>]]>
</v6:filterExpressions><v6:filterExpressions>
<![CDATA[<sawx:expr xsi:type="sawx:comparison" op="equal" xmlns:saw="com.siebel.analytics.web/report/v1.1" xmlns:sawx="com.siebel.analytics.web/expression/v1.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><sawx:expr xsi:type="sawx:sqlExpression">"xxxxxxx"."xxxxxxxx"</sawx:expr> <sawx:expr xsi:type="xsd:double">xxxxxxxxxxx</sawx:expr></sawx:expr>]]>
</v6:filterExpressions><v6:filterExpressions>
<![CDATA[<sawx:expr xsi:type="sawx:comparison" op="equal" xmlns:saw="com.siebel.analytics.web/report/v1.1" xmlns:sawx="com.siebel.analytics.web/expression/v1.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><sawx:expr xsi:type="sawx:sqlExpression">"xxxxxxxxxx"."xxxxxxxxx"</sawx:expr> <sawx:expr xsi:type="xsd:double">xxxxxxxxxx</sawx:expr></sawx:expr>]]>
</v6:filterExpressions>
</v6:reportParams>
<v6:sessionID>xxxxxxxxxxxxxxxxxxxxx</v6:sessionID>
</v6:executeXMLQuery>
</soapenv:Body>
</soapenv:Envelope>
当我使用soapUi 5.6 发送以下xml 时,它可以工作。如何使用nuSoap 发送此文件?问题是我无法发送
$client = new SoapClient("https://xxxxxxxxxxx/analytics/saw.dll?WSDL",array("trace" => 1,"exceptions" => 0));
/*$functions = $client->__getFunctions();
foreach($functions as $func) {
echo $func . "\n";
}*/
$logon = array('name' => 'xxxxxxx','password'=> 'xxxxxxxxxx');
$SessionID = $client->logon($logon);
$reportRef = array (
'reportPath' => '/shared/xxxxxxxxxxxxxxxxxxxxxx','presentationInfo' => 'false'
);
$xmlstr = <<<XML
<filterExpressions>
<![CDATA[<sawx:expr xsi:type="sawx:comparison" op="equal" xmlns:saw="com.siebel.analytics.web/report/v1.1" xmlns:sawx="com.siebel.analytics.web/expression/v1.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><sawx:expr xsi:type="sawx:sqlExpression">"xxxxxxxx"."xxxxxxxx"</sawx:expr> <sawx:expr xsi:type="xsd:double">xxxxxxxxxx</sawx:expr></sawx:expr>]]>
</filterExpressions>
<filterExpressions>
<![CDATA[<sawx:expr xsi:type="sawx:comparison" op="equal" xmlns:saw="com.siebel.analytics.web/report/v1.1" xmlns:sawx="com.siebel.analytics.web/expression/v1.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><sawx:expr xsi:type="sawx:sqlExpression">"xxxxxxxxxxx"."xxxxxxxxxxx"</sawx:expr> <sawx:expr xsi:type="xsd:double">xxxxxxxxxxxxx</sawx:expr></sawx:expr>]]>
</filterExpressions>
<filterExpressions>
<![CDATA[<sawx:expr xsi:type="sawx:comparison" op="equal" xmlns:saw="com.siebel.analytics.web/report/v1.1" xmlns:sawx="com.siebel.analytics.web/expression/v1.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><sawx:expr xsi:type="sawx:sqlExpression">"xxxxxxxxxxxxx"."xxxxxxxxxxxxx"</sawx:expr> <sawx:expr xsi:type="xsd:double">xxxxxxxxxxxxx</sawx:expr></sawx:expr>]]>
</filterExpressions>
XML;
$param = array(
'report' => $reportRef,'reportParams' => $xmlstr,'sessionID' => $SessionID->sessionID
);
$query = $client->executeXMLQuery($param);
print_r($query);
} catch (Exception $exc) {
echo "Soap Hatasi Olustu: " . $exc->getMessage();
}
我测试过这段代码不正确。你有什么想法??请帮我。我无法发送 $xmlstr。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)