IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Java Discussion :

Requête Https en java


Sujet :

Java

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 77
    Par défaut Requête Https en java
    Bonjour, je cherche a réaliser une requête Https via Java.

    J'ai trouvé des élément de Java.net nous permettant d'effectuer des requêtes http, seulement ces requêtes ne fonctionne pas en https et me retourne l'erreur suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    java.net.SocketException: not allowed to set socket factory
    error: at javax.net.ssl.DefaultSSLSocketFactory.createSocket(Unknown Source)
    Pour info voici une partie de mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
     
       try {
     
    	 //création de la connection
    	 URL url = new URL(Req); //Req contient ma requête https
    	 HttpsURLConnection conn =(HttpsURLConnection)url.openConnection();
    	 conn.setDoOutput(true);	 
     
     
    	 //lecture de la réponse
             reader = new    BufferedReader(newInputStreamReader(conn.getInputStream()));
    	 String ligne;
    	 while ((ligne = reader.readLine()) != null) {
    	 System.out.println(ligne);
    	 }
     
    	   }
    	   catch (Exception e) {
    	      e.printStackTrace();
    	   }
     
    	     try{writer.close();}catch(Exception e){}
    	     try{reader.close();}catch(Exception e){}
    Auriez vous des solutions, des remarques ou des suggestions permettant de faire évoluer mon problème, merci d'avance !

  2. #2
    Nouveau membre du Club
    Inscrit en
    Avril 2010
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 7
    Par défaut
    bon j'ai pas une grande idée sur ça mais essaye de voir:

    http://java.sun.com/j2se/1.4.2/docs/...onnection.html

    j'espère que ça t'aides!!

    en parlant de requète http de java: c'est quoi la différence entre java.net et org.apach ??

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 77
    Par défaut [Résolu] Requête Https en java
    Au final c'est bon, je poste la solution si ça peut aider un jour quelqu'un !

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
     
    String resultat ="";
    String adr = "https://monurlsecurisee.com"
     
    		  TrustManager[] trustAllCerts = new  TrustManager[]{
    	   new X509TrustManager() {
       			public boolean checkClientTrusted(java.security.cert.X509Certificate[] chain){
       			return true;
       		}
       		public boolean isServerTrusted(java.security.cert.X509Certificate[] chain){
       			return true;
       		}
       		public boolean isClientTrusted(java.security.cert.X509Certificate[] chain){
       			return true;
       		}
       		public java.security.cert.X509Certificate[] getAcceptedIssuers() {
       			return null;
       		}
       		public void checkClientTrusted(java.security.cert.X509Certificate[] chain, String authType) {}
       		public void checkServerTrusted(java.security.cert.X509Certificate[] chain, String authType) {}
       		}
    		};
     
      		// creation et initialisation du context SSL permettant d'accepter tous les certificat via le trustManager
             try
             {
            	 	SSLContext sc = SSLContext.getInstance("SSL" );
             		sc.init(null, trustAllCerts, null);
             		HttpsURLConnection.setDefaultSSLSocketFactory(sc.getSocketFactory());
             }
             catch(Exception ex)
             {
              	ex.printStackTrace();
             }
     
    	      //création de la connection
    	      URL url = new URL(adr);
    	      HttpsURLConnection conn = (HttpsURLConnection) url.openConnection();
    	      conn.setDoOutput(true);	 
     
                   // lecture de la réponse
    		String ligne = null;
    		reader = new BufferedReader(new InputStreamReader(conn.getInputStream()));
    	      while ((ligne=reader.readLine()) != null) { 
    			Resultat= Resultat + ligne;     	
    	      }
     
                  System.out.println(sJson)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Requête HTTP client-serveur en Java
    Par mahdimaaroufi dans le forum Développement Web en Java
    Réponses: 7
    Dernier message: 26/04/2015, 10h37
  2. Requêtes HTTP avec java.nio
    Par DavidleVrai dans le forum Général Java
    Réponses: 4
    Dernier message: 02/11/2013, 18h28
  3. Java Requétes HTTP
    Par albert55 dans le forum Général Java
    Réponses: 2
    Dernier message: 01/07/2013, 00h36
  4. Requête http JAVA
    Par Kitiz dans le forum Débuter avec Java
    Réponses: 4
    Dernier message: 20/10/2009, 11h32
  5. [HTTP]Créer une requête http multipart/related
    Par jothi35 dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 05/04/2005, 15h32

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo