2 Stimmen

Einfügen von jssecacert (cacert) in die Client-Jar-Datei beim Aufruf von https wsdl durch den Client

Ich habe eine Jar, die in der Client-Anwendung importiert werden muss und ermöglichen dem Client meine https wsdl Web-Service mit Hilfe der importierten Jar aufrufen.

Ich sehe, dass, wenn https Dienst aufgerufen werden muss, muss es eine gültige cacert-Datei in den Sicherheitsordner von < java_home > Standort sein.

Allerdings kann ich die cacert-Datei nicht in den javahome-Sicherheitsordner des Kunden installieren, indem ich nur das jar in die Anwendung des Kunden importiere.

Wenn Sie eine Idee haben, wie man dies erreichen kann, wäre ich für jede Hilfe dankbar, vielen Dank im Voraus.

EDIT [GELÖST]:

Ich habe mein Problem gelöst, indem ich diese Methode direkt vor dem Dienstaufruf hinzugefügt habe

public static void trustStore() {
    Properties systemProps = System.getProperties();
    systemProps.put("javax.net.ssl.trustStore","jssecacerts");
    System.setProperties(systemProps);
}

2voto

jpkrohling Punkte 13621

Sie haben zwei Möglichkeiten:

  1. Stellen Sie dem Benutzer, der das Keytool zum Importieren Ihres Zertifikats verwendet, Anweisungen oder ein Installationsprogramm zur Verfügung.
  2. Fügen Sie die Option "-Djavax.net.ssl.trustStore=..." zu dem Befehl hinzu, der Ihre Client-Anwendung startet.

2voto

javatar Punkte 4261

EDIT [GELÖST]: Ich habe mein Problem gelöst, indem ich diese Methode kurz vor dem Dienstaufruf hinzugefügt habe

public static void trustStore() { Properties systemProps = System.getProperties();

systemProps.put("javax.net.ssl.trustStore","jssecacerts");    
System.setProperties(systemProps); }

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X