aber leider geht es bei mir noch nicht...
also ich versuche gerade auf dieser Seite : http://www.professionelle-softwareentwicklung-mit-php5.de/erste_auflage/programming-php.soap.html
das Soap-Tutorial zu verstehen, und leicht abzuändern...
Da es schon eine HalloWorld-Funktion gibt, möchte ich jetzt zum Test mal eine Hallo Hölle-Funktion hinzufügen. Ich habe so den Eindruck, dass meine WSDL-Datei falsch ist, oder habe ich einen anderen Fehler gemacht?
Datei Bulletin2_server.php
Datei client.php
und zu guter letzt, meiner Meinung nach der Grund für meine Problemchen:
Die WSDL-Datei:
Also ich wäre für jede Hilfe dankbar!!
Gruß,
Michael
also ich versuche gerade auf dieser Seite : http://www.professionelle-softwareentwicklung-mit-php5.de/erste_auflage/programming-php.soap.html
das Soap-Tutorial zu verstehen, und leicht abzuändern...
Da es schon eine HalloWorld-Funktion gibt, möchte ich jetzt zum Test mal eine Hallo Hölle-Funktion hinzufügen. Ich habe so den Eindruck, dass meine WSDL-Datei falsch ist, oder habe ich einen anderen Fehler gemacht?
Datei Bulletin2_server.php
PHP:
<?php
class Webdienst {
public function halloWelt() {
return 'Hallo Welt';
}
public function halloHoelle() {
return 'Hallo Hölle';
}
}
try {
$server = new SOAPServer('Bulletin2.wsdl');
$server->setClass('Webdienst');
$server->handle();
}
catch (SOAPFault $f) {
print $f->faultstring;
}
?>
Datei client.php
PHP:
<?php
try {
$client = new SOAPClient('http://localhost/Bulletin2_server.php?wsdl');
print $client->halloWelt();
print $client->halloHoelle();
}
catch (SOAPFault $f) {
print $f->faultstring;
}
?>
und zu guter letzt, meiner Meinung nach der Grund für meine Problemchen:
Die WSDL-Datei:
Code:
<?xml version ="1.0" encoding ="UTF-8" ?>
<definitions name="Bulletin2_server"
targetNamespace="http://localhost/Bulletin2_server"
xmlns:tns=" http://localhost/Bulletin2_server"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns="http://schemas.xmlsoap.org/wsdl/">
<message name="halloWeltResponse">
<part name="Result" type="xsd:string"/>
</message>
<portType name="HalloWeltPortType">
<operation name="halloWelt">
<output message="tns:halloWeltResponse"/>
</operation>
<operation name="halloHoelle">
<output message="tns:halloHoelleResponse"/>
</operation>
</portType>
<binding name="HalloWeltBinding" type="tns:HalloWeltPortType">
<soap:binding
style="rpc"
transport="http://schemas.xmlsoap.org/soap/http"/>
<operation name="halloWelt">
<soap:operation soapAction="urn:hallowelt#halloWelt"/>
<output>
<soap:body
use="encoded"
namespace="urn:hallowelt"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
</output>
</operation>
</binding>
<message name="halloHoelleResponse">
<part name="Result" type="xsd:string"/>
</message>
<binding name="HalloHoelleBinding" type="tns:HalloHoellePortType">
<soap:binding
style="rpc"
transport="http://schemas.xmlsoap.org/soap/http"/>
<operation name="halloHoelle">
<soap:operation soapAction="urn:hallohoelle#halloHoelle"/>
<output>
<soap:body
use="encoded"
namespace="urn:hallohoelle"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
</output>
</operation>
</binding>
<service name="HalloWeltService">
<port name="HalloWeltPort" binding="HalloWeltBinding">
<soap:address location="http://localhost/Bulletin2_server.php"/>
</port>
</service>
</definitions>
Also ich wäre für jede Hilfe dankbar!!
Gruß,
Michael