[J2ME] SocketConnection OK, SecureConnection KO...

SocketConnection OK, SecureConnection KO... [J2ME] - Java - Programmation

Marsh Posté le 24-08-2007 à 15:24:46    

Bonjour à tous.
 
Je suis actuellement en train de mettre en place une application sur mobile en Java (c'est pour début septembre...). L'une des actions réalisées par le smartphone est de se connecter à un serveur privé (pas HTTP, FTP ou autre) pour effectuer deux échanges de trames.
Lorsque le mobile (le client donc) se connecte sans chiffrement (l'objet instancié est un SocketConnection), tout se déroule bien : les trames sont échangées sans problème.
Ca donne ça, en gros :  

Code :
  1. String server = "193.XX.XX.XX";
  2. int port = XX;
  3. url = "socket://"+server+":"+port;
  4. SocketConnection sc = (SocketConnection) Connector.open(url, Connector.READ_WRITE, true);
  5. sc.setSocketOption(SocketConnection.LINGER, 5);
  6. InputStream is  = sc.openInputStream();
  7. OutputStream os = sc.openOutputStream();
  8. os.write(message);
  9. long t0 = System.currentTimeMillis()+10000;
  10. while(System.currentTimeMillis() < t0){
  11.      int available = is.available();
  12.      if(available > 0){
  13.           is.read(buff, offset,available);
  14.      }
  15. }


 
Par contre, dès que je change SocketConnection en SecureConnection, c'est le drame :  
La connexion s'etablie bien, le client envoie la premiere trame. Le serveur la reçoit et envoie sa réponse mais le client ne reçoit jamais rien...  
Le code :  

Code :
  1. String server = "193.XX.XX.XX";
  2. int port = XX;
  3. url = "ssl://"+server+":"+port;
  4. SecureConnection sc = (SecureConnection) Connector.open(url, Connector.READ_WRITE, true);
  5. sc.setSocketOption(SocketConnection.LINGER, 5);
  6. InputStream is  = sc.openInputStream();
  7. OutputStream os = sc.openOutputStream();
  8. os.write(message);
  9. long t0 = System.currentTimeMillis()+10000;
  10. while(System.currentTimeMillis() < t0){
  11.      int available = is.available();
  12.      if(available > 0){
  13.           is.read(buff, offset,available);
  14.      }
  15. }


 
Quelqu'un a t-il déjà eu ce genre de problème ? Une piste pour me dépanner ?  :??:  
 
Merci.

Reply

Marsh Posté le 24-08-2007 à 15:24:46   

Reply

Marsh Posté le 27-08-2007 à 10:53:02    

Personne n'a jamais rencontré ce type de problème ? C'est dommage.... :)

Reply

Marsh Posté le 27-08-2007 à 11:25:32    

c'est bien mais il faut certainement plus que changer le nom d'une classe pour faire du SSL ...

Reply

Marsh Posté le 31-08-2007 à 09:35:09    

Et il faut quoi de plus ? (Bien entendu, j'ai un certificat, un certificat root et une pair de clés...)
 
Je précise que j'ai suivi les exemples fournis par la javadoc.
 
Merci


Message édité par Papy Brossard le 31-08-2007 à 09:36:59
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed