[Java lista] https_mar_megint

Maglódszki Viktor bocios at citromail.hu
2007. Feb. 21., Sze, 09:44:10 CET


Sziasztok !

Tudom többszőr volt, egyszer már sikerült is.
Szerverhez való csatlakozás https-el.
A neten találtakból és listán kapott segitségből sikerült eljutnom odaáig, hogy felépitem a kapcsolat a szerverrel.
Végülis úgy sikerült, hogy IE -ből kiexportáltam (bináriat) és rámutattam a Java-ban, hogy hol van:

System.setProperty( "javax.net.ssl.trustStore" , "key");

Most új szerverre át lett húzva az egész mindenség (előző egy teszt szerver volt).
Ugyanezen az elven kiexportáltam a key-t, felülirtam a key fájlomat és valamiért nem kapcsolódik.
A hibám ugyanaz, mint akkor: java.net.SocketException: Default SSL context init failed: Invalid keystore format
Nem értem, ugyanazon az elven csináltam, az op rendszer meg minden gyak. a hardware-n kivűl minden ugyanaz.
Mit csinálok rosszul?
Segitségeteket előre is köszönöm!

Az egész Https kapcsolódási kódom: (teszt szerverrel működött)

lic HttpsURLConnection try_connect(URL url){
         HttpsURLConnection m_oHttpURLConnection;
     try {
          System.setProperty( "java.protocol.handler.pkgs" , "javax.net.ssl" );
          System.setProperty( "javax.net.ssl.trustStore" , "key"); //public key
          
          java.security.Security.addProvider( new com.sun.net.ssl.internal.ssl.Provider() );
          TrustManager[] trustAllCerts = new TrustManager[] {
                    new X509TrustManager(){
                         public java.security.cert.X509Certificate[] getAcceptedIssuers(){
                              return null;
                         }
                    public void checkClientTrusted( java.security.cert.X509Certificate[] certs, String authType ) { return; }
                    public void checkServerTrusted( java.security.cert.X509Certificate[] certs, String authType ) { return; }
                    }
               };

          SSLContext sc = SSLContext.getInstance( "SSL" );
          sc.init( null, trustAllCerts, new java.security.SecureRandom() );
          HttpsURLConnection.setDefaultSSLSocketFactory( sc.getSocketFactory() );
          m_oHttpURLConnection =  (HttpsURLConnection) url.openConnection();
          m_oHttpURLConnection.setUseCaches( false );
          
          m_oHttpURLConnection.setDoInput( true );
          m_oHttpURLConnection.setDoOutput( true );
          m_oHttpURLConnection.setRequestProperty( "Content-Type", "text/xml" );
          m_oHttpURLConnection.setAllowUserInteraction( true );
          m_oHttpURLConnection.setRequestMethod("POST");          
          m_oHttpURLConnection.setInstanceFollowRedirects( true );
          ( ( HttpsURLConnection )( m_oHttpURLConnection ) ).setHostnameVerifier( this );   
          } 
          catch (Exception e){
               return null;
          }

üdv, MV
--------- következő rész ---------
Egy csatolt HTML állomány át lett konvertálva...
URL: http://javagrund.hu/pipermail/javalist/attachments/20070221/c38f90bb/attachment-0001.html 


További információk a(z) Javalist levelezőlistáról