Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1326 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  Exception d'E/S: The Network Adapter could not establish the connectio

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Exception d'E/S: The Network Adapter could not establish the connectio

n°1866597
MarsOran
Posté le 27-03-2009 à 11:55:23  profilanswer
 

Bonjour,
j'ai cette exception lors de la connexion à oracle via jdbc.
le pire dans l'histoire, c'est que cette exception est aléatoire ?? elle peut apparaitre dans toutes mes méthodes JDBC à n'importe quel moments !
la même méthode peut fonctionner correctement, puuis lancer cette exception une ou deux fois, puis rien !
 
mes methodes JDBC sont très classique, voici un exemple :

Code :
  1. public static Vector getTypeOperation(){
  2.  Connection con = null;
  3.  String strQuery = null;
  4.  PreparedStatement ps = null;
  5.  String nomMethode = "getTypeOperation";
  6.  Type type = null;
  7.  Vector types = new Vector();
  8.  try {
  9.   Class.forName(UrlDriver);
  10.  } catch (java.lang.ClassNotFoundException e) {
  11.   System.err.print("ClassNotFoundException: " );
  12.   System.err.println(e.getMessage());
  13.  }
  14.  try {
  15.  try {
  16.   con = DriverManager.getConnection(DBurl,DBusername,DBpassword);
  17.   strQuery = "SELECT TOP_ID, TOP_NOM FROM TYPE_OPERATION";
  18.   ps = con.prepareStatement(strQuery);
  19.   ResultSet rs  = ps.executeQuery();
  20.   while(rs.next()){
  21.    type = new Type(rs.getString("TOP_ID" ), rs.getString("TOP_NOM" ));
  22.    types.add(type);
  23.   }
  24.   return types;
  25.  }catch (SQLException sqle) {r2oSqlException =  new R2oSqlException( "DbAccessSELECT." + nomMethode + " : " + sqle.getClass().getName() + sqle.getMessage());
  26.   } catch (Exception e) {r2oException =  new R2oException("DbAccessSELECT." + nomMethode + " : " + e.getClass().getName() + e.getMessage());        
  27.   } finally {
  28.    if (ps != null)
  29.     try {ps.close();
  30.     } catch (java.sql.SQLException sqle) {r2oSqlException =  new R2oSqlException("DbAccessSELECT." + nomMethode + " : " + sqle.getClass().getName() + sqle.getMessage());}
  31.    if (con != null)
  32.     try {con.close();
  33.     } catch (java.sql.SQLException sqle) {r2oSqlException =  new R2oSqlException( "DbAccessSELECT." + nomMethode + " : " + sqle.getClass().getName()+ sqle.getMessage());
  34.     }     
  35.  }
  36. }catch (Exception e) {
  37.  e.printStackTrace();
  38. }
  39.  return types;
  40. }

 
 
l'exception est lancée par :  

Code :
  1. con = DriverManager.getConnection(DBurl,DBusername,DBpassword);


 
mon listner log (dernières lignes)
 

Code :
  1. ...
  2. 27-MAR-2009 11:01:01 * (CONNECT_DATA=(SID=R2O)(CID=(PROGRAM=)(HOST=__jdbc__)(USER=oracle))) * (ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1707)) * establish * R2O * 0
  3. 27-MAR-2009 11:01:01 * (CONNECT_DATA=(SID=R2O)(CID=(PROGRAM=)(HOST=__jdbc__)(USER=oracle))) * (ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1710)) * establish * R2O * 0
  4. 27-MAR-2009 11:01:02 * (CONNECT_DATA=(SID=R2O)(CID=(PROGRAM=)(HOST=__jdbc__)(USER=oracle))) * (ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1713)) * establish * R2O * 0
  5. 27-MAR-2009 11:01:02 * (CONNECT_DATA=(SID=R2O)(CID=(PROGRAM=)(HOST=__jdbc__)(USER=oracle))) * (ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1716)) * establish * R2O * 0
  6. 27-MAR-2009 11:01:02 * (CONNECT_DATA=(SID=R2O)(CID=(PROGRAM=)(HOST=__jdbc__)(USER=oracle))) * (ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1719)) * establish * R2O * 0


 
J'insiste sur le fait que l'exception est lancée aléatoirement !!
Ma config :
OS : XP
SGBDR : Oracle8i
Drivers : classes12.zip
Server : Websphere 6.1
 
Merci de votre aide.

mood
Publicité
Posté le 27-03-2009 à 11:55:23  profilanswer
 

n°1866964
bugsan
Posté le 28-03-2009 à 14:48:38  profilanswer
 

Un conseil, met toi à SpringFramework 3.0
 


private JdbcOperations jdbc = new JdbcTemplate(dataSource);
 
public List<Type> getTypeOperation() {
    List<Type> types = jdbc.query("SELECT TOP_ID, TOP_NOM FROM TYPE_OPERATION", new RowMapper<Type>() {
        public Type mapRow(ResultSet rs, int rowNum) throws SQLException {
            return new Type(rs.getString("TOP_ID" ), rs.getString("TOP_NOM" ));
        }
    });
    return types;
}

n°1867004
MarsOran
Posté le 28-03-2009 à 18:13:54  profilanswer
 

Merci pour le conseil,
mais, ma question est claire et précise !  
autrement dit, je n'ai pas demandé un conseil pour l'acces à la BD !
d'autaut plus, que tu ne connais pas le contexte de mon projet, le choix des technologies, des produits, des frameWorks...et autres donc je vois mal comment tu peux me conseiller telle ou telle solution !!  
Si on a opté pour le JDBC classique (à la main) c'est qu'on a nos raisons ! d'ailleurs, le problème est plus autour de la connexion qu'à la façon de coder ou autres.
Donc, si t'as une idée, je suis preneur avec joie, sinon, merci de ne pas polluer les discussions avec des messages qui ne sert à rien.
Salut.  
 

n°1867051
zapan666
Tout est relatif
Posté le 29-03-2009 à 01:50:59  profilanswer
 

tu dois te faire couper la connexion par un firewall, par la base de données ou autre (timeout ?).

 


par contre, il y a des partis de ton code que je trouve étrange. ça ne résout pas le problème mais ça peut en résoudre d'autre...

 

J'ai la mauvaise impression que tes exceptions ne sont là que pour loger.


Message édité par zapan666 le 29-03-2009 à 01:51:17

---------------
my flick r - Just Tab it !
n°1867190
bugsan
Posté le 29-03-2009 à 20:20:45  profilanswer
 

MarsOran a écrit :


Si on a opté pour le JDBC classique (à la main) c'est qu'on a nos raisons !


C'était du jdbc classique (cf. le ResultSet)... Je pourrais te redonner le même exemple avec 1 classe et 1 interface entièrement écrites moi même, sans spring.
 
Retravaille ta gestion des exceptions, laisse tout remonter avec des rethrow de RuntimeException pour tester ... tu as des catch qui ne font rien, c'est un anti pattern.

n°2170690
smalltalke​r
Posté le 11-01-2013 à 10:40:47  profilanswer
 

Bonjour à tous,
 
Je sais que j'arrive un peu tard mais j'ai espoire de trouver de l'aide ici.
 
Je travail actuellement sur un projet ou je rencontre exactement le même problème. Je lance des requêtes en utilisant les mêmes méthodes, et parfois une erreur surgit lors de la connection à la Bdd.
 
Erreur: "Exception d'E/S: The Network Adapter could not establish the connection"'
 
J'utilise JDBC aussi: ojdbc14_g.jar, et suis sous oracle.
 
 
MarsOran aurais-tu trouvé une solution à ton problème? quelqu'un pourrait-il m'éclairer sur les raisons probables de cette erreur?
 
En vous remerciant d'avance.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  Exception d'E/S: The Network Adapter could not establish the connectio

 

Sujets relatifs
pb NULL.POITEUR.EXCEPTION[Resolu]Exception Php
Exception: java.lang.RuntimeException: java.lang.NoClassDefFoundErrorquel intérêt de relancer une exception dans un catch ?
Aide moi S.V.PImpossible d'enlever une border + adapter bg en fonction de la réso
MappedByteBuffer or FileChannel from a Network (FTP) file ???Les exception sur delphi
Adapter menu à la taille de la police du joueurCréation E boutique
Plus de sujets relatifs à : Exception d'E/S: The Network Adapter could not establish the connectio


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR