0

UNIFACE 9.3 に Web サービスを書き込んでいます。当社のサービスは WSDL を提供します。最初のテストには SOAPUi を使用し、さらにいくつかのテストには PHP を使用したいと考えていますが、PHP では何も得られません。なんで?

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"    xmlns:urn="urn:uniface:applic:wrapped:services:WEBSOAPWSV">
<soapenv:Header/>
<soapenv:Body>
    <urn:INFO>
        <urn:SP_IN>OCCURRENCE=TEST</urn:SP_IN>
    </urn:INFO>
</soapenv:Body>
</soapenv:Envelope>

これは私たちのPHPテストセットです:

$client = new SoapClient("http://patch-server:8080/uniface/services/websoapwsvdlw?wsdl");
var_dump($client->__getFunctions());
$args = array('OCCURRENCE', 'TEST');
$result = $client->__soapCall('INFO', $args);
echo "Request:\n" . $client->__getLastRequest() . "\n";

PHP-getFunctions はこれを提供します:

array(6) {
[0]=> string(41) "ACCEPTResponse ACCEPT(ACCEPT $parameters)"
[1]=> string(35) "EXECResponse EXEC(EXEC $parameters)"
[2]=> string(35) "INFOResponse INFO(INFO $parameters)"
[3]=> string(41) "INSERTResponse INSERT(INSERT $parameters)"
[4]=> string(35) "QUITResponse QUIT(QUIT $parameters)"
[5]=> string(41) "UPDATEResponse UPDATE(UPDATE $parameters)" } 

答えは何もありません!なんで?どうもありがとう。

4

2 に答える 2

1

私は本当に SOAP を知りません。ここで自分自身で SOAP 呼び出しについて質問したところですが、そのコードを次のように少し変更するとどうなるでしょうか。

// change here
$options        = array( 'trace' => 1, 'exceptions' => 1);

$client = new SoapClient("http://patch-server:8080/uniface/services/websoapwsvdlw?wsdl", $options);

var_dump($client->__getFunctions());
$args = array('OCCURRENCE', 'TEST');

// change here..
$result = $client->INFO($args);
echo "Request:\n" . $client->__getLastRequest() . "\n";
于 2013-03-27T08:15:36.740 に答える
1
$client = new SoapClient($url, array("trace" => 1));
于 2013-11-14T13:47:34.830 に答える