Zum Inhalt springen

wsdl, php und windows!


Empfohlene Beiträge

Moin Moin,

ich habe ein Verständnisproblem der aktuellen Situation beim Ansprechen von webservices innerhalb eines geschlossenen (in sich erreichbaren) Netzwerk. Wenn ich meine Webservices-Klasse erstellen möchte (via wsdl2php - funktioniert für öffnetliche Services hervorragend) erhalte ich die Meldung

PHP Warning: SoapClient::__construct(http://10.20.30.123/test/test.svc?xsd=xsd0): failed to open stream: HTTP request failed! in /srv/www/test/html/utils/wsdl-test.php on line 35

PHP Warning: SoapClient::__construct(): I/O warning : failed to load external entity "http://10.20.30.123/test/test.svc?xsd=xsd0'>http://10.20.30.123/test/test.svc?xsd=xsd0" in /srv/www/test/html/utils/wsdl-test.php on line 35

PHP Fatal error: SOAP-ERROR: Parsing Schema: can't import schema from 'http://10.20.30.123/test/test.svc?xsd=xsd0'>http://10.20.30.123/test/test.svc?xsd=xsd0' in /srv/www/test/html/utils/wsdl-test.php on line 35

Wobei die URL, die ich für den Websevice hinterlege wie folgt lautet:

http://10.20.30.123/test/test.svc?wsdl

Wenn ich aber versuche einfach nur den Inhalt als wsdl anzuzeigen, funktionierts:

hier der Code dafür:


$homepage = file_get_contents('http://10.1.0.46/digigs/DigigsUser.svc?wsdl');
echo $homepage."\r\n";
[/PHP]

Ich habe auch bereits Dr. Google gefragt.

Hier bei sind folgende Lösungs-Ansätze gefunden wurden:

1. die Änderung von ?wsdl nach ?xsd=xsd0 sei Standard, da der Interpreter ansonsten nicht damit zurecht kommt

--> hmm ok, nächster Punkt

2. im C:\Windows\Temp rechte für den Benutzer einrichten

--> wäre nicht zielführend, da ansonsten nicht die Ausgabe als wsdl nicht funktionieren würde nehme ich an.

Weitere vermeintlich korrekten lösungansätze habe ich ncht gefunde.

Habt ihr einen Hinweis für mich?

Port 80 ist auf dem 10.20.30 frei geschaltet!

Gruß euer Peter

Link zu diesem Kommentar
Auf anderen Seiten teilen

Gib die Adresse mal in einen Browser ein und schaue ob es zu einem redirect kommt. Nicht alle wsdl2* Werkzeuge können mit redirects sauber umgehen. Die haben dann plötzlich vollkommen falsche Adressen in der Hand und versuchen dann drauf eine Generierung durchzuführen. Wenn es zu einem redirect kommt nimm die "neue" Adresse und gib sie wsdl2php dann sollte es besser klappen.

Wenn es nicht zu einem Redirekt kommt versuche mal zu schauen ob in der wsdl dann alle imports, die eventuell vorhanden sind, auch erreichbar sind.

Alternativ kannst du mal versuchen diese URL z.B. in SoapUI zu importieren um zu schauen ob er diese wsdl verarbeiten kann. Denn nicht alle Webservice Anbieter liefern valide wsdl's aus. Auch dann kann dann zu einem Problem werden.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...