I SOAP und XQuery verwenden möchte, eine XML-Datei auf einer lokalen exist Datenbank abzufragen, aber ich bekomme die folgende Fehlermeldung im Browser:SOAP Query Error
Funktionen:
array (10) {[ 0] => string (56) "getResourceResponse getResource (getResource $ Parameter)" [1] => string (38) "queryResponse Abfrage (Abfrage $ Parameter)" [2] => string (44) "connectResponse connect (connect $ Parameter) "[3] => string (47)" retrieveResponse retrieve (ruft $ Parameter ab) "[4] => string (53)" disconnectResponse disconnect (trenne $ parameter) "[5] => string (68)" getResourceDataResponse getResourceData (getResourceData $ Parameter) "[6] => string (41)" xqueryResponse xquery (xquery $ Parameter) "[7] => string (59)" retr ieveDataResponse retrieveData (retrieveData $ Parameter)“[8] => string (77) "retrieveByDocumentResponse retrieveByDocument (retrieveByDocument Parameter $)"[9] => string (65) "listCollectionResponse Listcollection (Listcollection $ Parameter)"}
SoapFault Ausnahme: [soapenv: Server.userException] java.lang.NullPointerException in C: \ xampp \ htdocs \ phexist \ helloclient.php: 8 Stack-Trace: # 0 [interne Funktion]: SoapClient -> __ Aufruf ('xquery', Array) # 1 C: \ xampp \ htdocs \ phexist \ helloclient.php (8): SoapClient-> xquery ('Ross') # 2 {main}
Server-Code:
<?php
include ('include/eXist.php');
function xquery($firstName) {
return "Hello ".$firstName;
//sayhello
try
{
$db = new eXist();
# Connect
$db->connect() or die ($db->getError());
$query = 'for $line in //Orders/Taxes return $line';
print "<p><b>XQuery:</b></p><pre>$query</pre>";
# XQuery execution
//$db->setDebug(TRUE);
$db->setHighlight(FALSE);
$result = $db->xquery($query) or die ($db->getError());
}
ini_set("soap.wsdl_cache_enabled", "0"); // disabling WSDL cache
$server = new SoapServer("http://localhost:8080/exist/services/Query?wsdl");
$server->addFunction("xquery");
$server->handle();
?>
Clie nt Code:
<?php
$client = new SoapClient("http://localhost:8080/exist/services /Query?wsdl");
echo "Functions:<br/><br/>";
echo var_dump($client->__getFunctions());
echo "<br/><br/>";
try
{
$return = $client->xquery("Ross");
echo($return."<br>");
}
catch(SoapFault $soapFault)
{
echo ($soapFault);
}
?>
Ja, weißt du, wie ich es zum Laufen bringen kann? Ich bin nicht sehr gut darin, wie Sie sehen können. – RossH
Ich mache auch dieses Modul haha, USW ?? – rejy11
Ja, haha, ich habe keine Ahnung, wie ich es zum Laufen bringen kann. – RossH