Visualizzazione dei risultati da 1 a 2 su 2

Discussione: web services con https

  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2007
    Messaggi
    11

    web services con https

    Salve a tutti, ho necessità di richiamare un web services da una classa java. Questo web services si trova in https con certificato solo server (il certificato l'ho fatto con keytool perciò non è attendibile) ed è protetto anche tramite autenticazione basic. Nel caso fosse presente solo l'autenticazione basic il codice è:


    codice:
    import org.apache.axis.client.*;
    import javax.xml.namespace.QName;
    import javax.xml.rpc.ParameterMode;
    import javax.xml.rpc.encoding.XMLType;
    
     public class CiaoATuttiAutenticato
     {
       public static void main(String [] args) throws Exception {
       String host = "http://localhost:8080";
       
       String servicepath = "/axis/services/CiaoATuttiWs";
       String endpoint = host   + servicepath;
       String method = "ciao" ;
    
       String ret = null;
       Service service = new Service();
       Call call = (Call) service.createCall();
    
       call.setUsername("us_username");
       call.setPassword("pas_password");
       
      
       call.setTargetEndpointAddress(new java.net.URL (endpoint));
       call.setOperationName(method);
    
       ret = (String) call.invoke(( Object [] )null);
       System.out.println("Got result : " + ret);
        }}
    Nel caso voglia accedere per https sicuramente cambierà la stringa dell'host che sarà
    String host = "https://localhost:8443"
    ma non so come gestire il certificato.
    PS. da browser mi viene richiesto se voglio accettare il certificato ritenuto non sicuro, mi viene richiesta user e password ed accedo tranqullamente al descrittore wsdl del web services deployato...

    ciao a tutti...

  2. #2
    Utente di HTML.it
    Registrato dal
    Nov 2007
    Messaggi
    11
    okay mi rispondo da solo. Dato che il certificato non è attendibile bisogna aggiungerlo al truststore. Bisogna aggiungere nel codice:

    codice:
    System.setProperty("javax.net.ssl.trustStore","c:\\path\\jdk1.6.0\\bin\\keystoreserver.jks");
    System.setProperty("javax.net.ssl.trustStorePassword", "changeit") ;
    ciao a tutti.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.