Téléchargement
illégal
Posez votre question Signaler

Probleme java-oracle

Oussema86 46Messages postés 18 octobre 2007Date d'inscription 5 novembre 2011Dernière intervention - Dernière réponse le 25 août 2009 à 06:25
Bonjour,
j'essaye de faire une connexion entre java et oracle, sachant que j'utilise netbeans 6.0 et oracle 10g (la version express), en pricipe j'ai le code necessaire pour le faire qui est le suivant :
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
} catch (ClassNotFoundException e) {
System.err.println(e) ;
System.exit (-1) ;
}
try {
// Création d'une connexion à la base
DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
Connection ma_connection = DriverManager.getConnection("jdbc:oracle:thin:127.0.0.1:1521:XE",num_utilisateur,MPD);
// Une requête simple
String ma_requete = "select CODE_FAMILLE from FAMILLE" ;
// Requête en utilisant un Statement
Statement mon_statement = ma_connection.createStatement();
// On récu
ResultSet mon_resultset = mon_statement.executeQuery(ma_requete);
// récupération et traitement du résultat
while (mon_resultset.next ()) {
System.out.println( "| " +
mon_resultset.getString("CODE_FAMILLE"));
}
ma_connection.close();
} catch (java.sql.SQLException e) {
System.err.println(e);
System.exit(-1);
}
mais lors de l'execution, je recois cette erreur :
java.sql.SQLException: Listener refused the connection with the following error:
ORA-12505, TNS:listener does not currently know of SID given in connect descriptor
The Connection descriptor used by the client was:
localhost:1521:orcl
sachant que j'ai installé le driver oracle qu'il faut.
Merci.
Lire la suite 

Probleme java-oracle »

13 réponses
Réponse
+0
moins plus
y'a un pb dans le descripteur du tns listener
t'as changé le tnsnames.ora ou listener.ora ?
dans ton tns tu dois trouver :
XE =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = NOM_TA_MACHINE)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = XE)
)
)
tu le trouves ?
Ajouter un commentaire
Réponse
+0
moins plus
oui j'a changé le nom de la machine par 127.0.0.1 mais ca n'a rien changé, l'erreur existe encore
Ajouter un commentaire
Réponse
+0
moins plus
Bonsjour oussema
svp je cherche a faire la meme chose que vous pour mon projet mais je suis bloqué.
est ce que je mets ce bloc de code dans une classe ou direct dans ma page jsp du projet ?
merci
Ajouter un commentaire
Réponse
+0
moins plus
c'est surtout XE
puis apres
tu vas sur la fenetre des commandes
tu fais
lsnrctl
stop
start


comme ça les modifications seront prises en charge
Ajouter un commentaire
Réponse
+0
moins plus
fais mais ... le probleme persiste :/
java.sql.SQLException: Listener refused the connection with the following error:
ORA-12505, TNS:listener does not currently know of SID given in connect descriptor
The Connection descriptor used by the client was:
localhost:1521:orcl
Ajouter un commentaire
Réponse
+0
moins plus
svp vous pouvez m'aidez aussi
Ajouter un commentaire
Réponse
+0
moins plus
t'es sur t'as verifie

(SERVICE_NAME = XE) dans les tnsnames.ora ?
Oussema86- 27 mars 2009 à 16:12
oui oui, voila le fichier "tnsnames.ora" :
XE =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = XE)
)
)

EXTPROC_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC_FOR_XE))
)
(CONNECT_DATA =
(SID = PLSExtProc)
(PRESENTATION = RO)
)
)

ORACLR_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC_FOR_XE))
)
(CONNECT_DATA =
(SID = CLRExtProc)
(PRESENTATION = RO)
)
)
Ajouter un commentaire
Réponse
+0
moins plus
mido*

<%
String login = request.getParameter("login");
String mp = request.getParameter("mp");
try{
Driver drv = (Driver)Class.forName("oracle.jdbc.OracleDriver").newInstance();
Connection conn = java.sql.DriverManager.getConnection("jdbc:oracle:thin:@Server:1531:SID","Utilisateur","MotDePasse");
session.setAttribute("db_connection",conn);
String sql = "select pkg_securite.Verifier_pwd_web(";
sql+=login;
sql+=",'";
sql+=mp;
sql+="') as res from dual";
Statement stat = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE);
ResultSet res = stat.executeQuery(sql);
res.next();
int res_cnx = res.getInt(1);
if(res_cnx!= 0)
{
stat.close();
%>

</p>
<table width="100%" border="00" align="left">
<tr>
<td width="50%" height="129" ><img src="img/denied.png" width="48" height="48" align="right" /></td>
<td width="50%"><span class="errorLabel">
<%
if(res_cnx == 6)
out.print("Accès Web désactivé pour ce Login");
else
out.print("Accès Refusé");

%>
</span></td>


tu peux melanger du java avec du html
comme dans cet exemple extrait d'une page de menu juste apres l'introduction du login / mot de passe
Ajouter un commentaire
Réponse
+0
moins plus
je vais essayer yar7ham weldik
Ajouter un commentaire
Réponse
+0
moins plus
min ghir mzeya t'as un pb je serais là ken ktib
Ajouter un commentaire
Réponse
+0
moins plus
salut
voila ce que j'ai fais moi mais j'ai des trucs soulignés en rouge donc je ne peux même pas compiler (j'utilise oracle 10g et netbeans 6.5.1 et j'ai fais addjar et selectionner le ojdbc14.jar )
voila l'image de mon application merci de me corriger car c'est vraiement important chokran
http://img18.imageshack.us/img18/5089/73342721.jpg
http://img22.imageshack.us/img22/7924/61686977.jpg
Ajouter un commentaire
Réponse
+0
moins plus
bonjour
j'utilise le jdeveloper 11g et Oracle 11g
svp je veux savoir comment afficher une frame dans une page jsf ??
Ajouter un commentaire
Ce document intitulé « probleme java-oracle » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?