Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

wsdl, php und windows!

Empfohlene Antworten

Veröffentlicht

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

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.

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.