So erzeugen Sie eine web-service-client in Eclipse aus einer wsdl-Datei auf einer https-Adresse?

Ich erzeugen kann, die ein client von

http://localhost:8080/service?wsdl

ganz gut, aber jetzt möchte ich zum generieren von einem client aus

https://localhost:8081/service?wsdl

Eclipse und sagt die URL ist ungültig, und wenn Eclipse macht den Versuch mein Jetty server sagt

javax.net.ssl.SSLException: Received fatal alert: certificate_unknown

Kann ich problemlos navigieren, um die wsdl-Datei in meinem browser nach der Bestätigung der Sicherheit Ausnahme, es ist also definitiv da.

Ich habe versucht, das herunterladen der wsdl auf meiner lokalen Datei-system, aber ich kann immer noch nicht schaffen, von dort aus, weil die wsdl enthält einen Verweis auf andere https-Standorten, zB.

<xsd:import namespace="http://my.service.namespace/" schemaLocation="https://localhost:8081/serviceSchema?xsd=1"/>

Habe ich geändert eclipse.ini enthält die folgenden Zeilen:

-Djavax.net.ssl.trustStore="/path/to/my/truststore/.keystore"
-Djavax.net.ssl.trustStorePassword="mytruststorepassword"
-Djavax.net.ssl.keyStore="/path/to/my/keystore/.keystore"
-Djavax.net.ssl.keyStorePassword="mykeystorepassword"

ohne Erfolg. Eclipse scheint nicht haben eine Einstellung, die Einstellungen, die dieser entweder. Gibt es eine Möglichkeit, dies zu tun durch eclipse, oder muss ich irgendein externes tool?

BEARBEITEN:
Für andere mit dem gleichen Problem, hier ist, wie ich es gelöst.

  1. Navigieren Sie zu der wsdl-Datei in Ihrem browser, und laden Sie es auf Ihrem Dateisystem.
  2. Navigieren Sie zu nichts, es hängt davon ab, und laden Sie es als gut.
  3. Öffnen Sie die Abhängigkeit, die Sie gerade heruntergeladen haben mit einem browser und kopieren Sie den neuen Speicherort, zB.

    file:///path/to/my/schema/service.xsd

  4. Fügen Sie diesen in Ihre wsdl-Datei heruntergeladen, wo seine https-Adresse ist, wiederholen Sie den Vorgang für alle anderen schema, und speichern.
  5. Kopieren Sie die Datei Speicherort Ihrer wsdl-Datei, wie oben
  6. In Eclipse generieren einer Neuen->Andere...->Web-Service-Client und fügen Sie den Speicherort der Datei in der service-definition, und es sollte funktionieren. Vielen Dank an alle für die Hilfe!
Sie sollten laden Sie die WSDL-und alle Artefakte (z.B. xsd), auf dem es hängt. Ändern Sie das schema und erstellen Sie Ihre client... vergessen Sie nicht, fügen Sie diese WSDLs Sie version control Systems (es ist in Ihrem Vertrag)
aber wenn ich änderungen an der schema-Standort, nicht der client generiert falsch?
Warum? Sie sollten immer die endpoint-Adresse in Ihrem code... alles andere funktioniert einfach für 'hello world' - Anwendungen. In der realen Welt möglicherweise haben Sie verschiedene Endpunkt-Adressen für Produktions -, staging -, test -, etc.
Im besten Fall ist der Dienstleister veröffentlicht die WSDLs und XSDs ohne absolute Referenzen.
Ich werde give it a shot. Ich war einfach unter der (falschen?) Annahme, dass Sie sollten nie zu ändern, die automatisch generierten Dateien, vor allem, wenn Sie werden verwendet, um andere Artefakte.

InformationsquelleAutor Eric B | 2012-09-19

Schreibe einen Kommentar