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

Wildfly/JBoss Java Discussion :

Configuration JBoss/Oracle pour un DataSource


Sujet :

Wildfly/JBoss Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Mars 2010
    Messages
    100
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 100
    Par défaut Configuration JBoss/Oracle pour un DataSource
    Bonjour à tous,

    après avoir chiner sur Internet et sur le forum (FAQ JDBC incluse), je n'ai jamais vraiment compris comment configurer mon application web pour l'ajout d'un DataSource.

    J'utilise JBoss 5.1.0 GA, Oracle 9i.

    Mon but, à très court terme est d'écrire le résultat d'une requete SQL dans une JSP.

    j'ai donc opté pour un DS. j'ai le driver Oracle ojdbc6.jar

    Dans mon WEB-INF, j'ai web.xml écrit comme ceci:

    web.xml
    Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <resource-ref>
              <description>Oracle Data Source</description>
              <res-ref-name>jdbc/app/OracleDS</res-ref-name>
              <res-type>javax.sql.DataSource</res-type>
              <res-auth>Container</res-auth>
    </resource-ref>

    Dans mon répertoire "deploy" sous Jboss, j'y ai ajouté oracle-ds.xml, écrit comme suit:

    oracle-ds.xml
    Code XML : 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
    <?xml version="1.0" encoding="UTF-8"?>
     
    <datasources>
      <local-tx-datasource>
        <jndi-name>OracleDS</jndi-name>
        <connection-url>jdbc:oracle:thin:@xxx.xxx.xxx.xx:1521/ORCL</connection-url>
     
        <driver-class>oracle.jdbc.driver.OracleDriver</driver-class>
        <user-name>USER</user-name>
        <password>PASS</password>
     
        <exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.OracleExceptionSorter</exception-sorter-class-name>
     
          <metadata>
             <type-mapping>Oracle9i</type-mapping>
          </metadata>
      </local-tx-datasource>
     
    </datasources>

    puis dans ma JSP, je créé ma connexion depuis le DataSource comme suit :

    Code JSP : 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
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    <%@ page language="java" contentType="text/html; charset=ISO-8859-1"
        pageEncoding="ISO-8859-1"%>
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
    <title>RESULT SQL</title>
    </head>
    <%@ page import= "java.sql.Connection"%>
    <%@ page import= "java.sql.SQLException"%>
    <%@ page import= "oracle.jdbc.pool.OracleDataSource"%>
    <%@ page import= "java.sql.Statement"%>
    <%@ page import= "java.sql.ResultSet"%>
    <body>
    <%
    String url = "xxx.xxx.xxx.xx";
    String login = "USER";
    String password = "PASS";
    Connection connexion = null;
     
    /* CREAZIONE DATASOURCE */
    OracleDataSource OracleDS = new OracleDataSource();
    OracleDS.setDriverType("thin");
     
    /* NOME SERVER */
    OracleDS.setServerName(url);
     
    /* TIPO CONNESSIONE */
    OracleDS.setNetworkProtocol("tcp");
     
    /* SID DELLA DATABASE */ 
    OracleDS.setDatabaseName("ORCL");
     
    /* PORTE CONNESSIONE */
    OracleDS.setPortNumber(1521);
     
    /* LOGIN + PASSWORD */ 
    OracleDS.setUser(login);
    OracleDS.setPassword(password);
     
    /* CONNESSIONE */ 
    try {
            
            connexion = OracleDS.getConnection();
            connexion.setAutoCommit(false);
            
            System.out.println("OK!");
            
             // On démarre la transaction
        Statement stmt = connexion.createStatement();
     
        // On fait lance la récupération (SELECT SQL,vous pouvez donc faire tous les select possibles et imaginables
        // Le résultat est récupéré dans un ResultSet
        ResultSet resultat = stmt.executeQuery("SELECT * FROM CLIENT");
     
        // Affichage du résultat des données récupérées
        while (resultat.next()) {
            System.out.println("Clé primaire = " + resultat.getString(1));
        }
     
        // On ferme la transaction
        stmt.close();
     
            
    }
    catch(Exception x){
            System.out.println("Unable to connect!");
    }
     
     
     
    %>
     
    </body>
    </html>

    Mais je n'arrive pas à déployer mon war comme ceci
    Donc, j'aurai besoin de comprendre ce qui ne va pas, ce qui me manque


    Pleasem help me

    merci d'avance

  2. #2
    Membre confirmé
    Inscrit en
    Mars 2010
    Messages
    100
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 100
    Par défaut
    Bon, je pense avoir réussi, mais je ne suis pas sur puisque je n'arrive pas à obtenir le résultat d'une requete SQL.

    j'ai paramétré oracle-ds.xml, oracle-xa-ds.xml et standardjbosscmp-jdbc.xml.

    ensuite j'ai une JSP qui doit réaliser une requete SQL mais j'ai le message d'erreur de mon exception.

    je n'ai pas du réussir à assurer la connection à ma DB. J'accède à ma base avec une URL du type jdbc:oracle:thin:@xxx.xxx.ced.it:1521/ORCL


    Code JAVA : 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
    49
    50
    51
    52
    /* PARAMETRI DI CONNESSIONE */
    String url = "xxx.xxx.ced.it";
    String login = "login";
    String password = "pass";
    Connection connexion = null;
    ResultSet rs = null;
     
    /* CREAZIONE DATASOURCE */
    OracleDataSource OracleDS = new OracleDataSource();
    OracleDS.setDriverType("thin");
     
    /* NOME SERVER */
    OracleDS.setServerName(url);
     
    /* TIPO CONNESSIONE */
    OracleDS.setNetworkProtocol("tcp");
     
    /* SID DELLA DATABASE */ 
    OracleDS.setDatabaseName("ORCL");
     
    /* PORTE CONNESSIONE */
    OracleDS.setPortNumber(1521);
     
    /* LOGIN + PASSWORD */ 
    OracleDS.setUser(login);
    OracleDS.setPassword(password);
     
    /* CONNESSIONE */ 
    try {
     
    	connexion = OracleDS.getConnection();
    	connexion.setAutoCommit(false);
     
    	Statement stmt = connexion.createStatement();
     
    	rs = stmt.executeQuery("SELECT * FROM CLIENT");
     
    	// Fetch each row from the result set
        while (rs.next()) {
            // Get the data from the row using the column index
            String s = rs.getString(1);
     
        }
     
     
    	stmt.close();
     
     
    }
    catch(Exception x){
    	System.out.println("Unable to connect!");
    }

    Est ce que quelqu'un pourrait m'aider???

    j'en ai marre des monologues

  3. #3
    Membre émérite Avatar de XmasRock
    Inscrit en
    Janvier 2007
    Messages
    729
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 729
    Par défaut
    Houlà!

    Normalement les étapes sont :
    - création de ta datasource: fichier xxxx-ds.xml (comme tu as fais c ok)
    - dans web.xml définir la reference : <resource-ref (comme tu as fais c ok)
    - dans jboss-web.xml : faire le lien entre le nom de ta resource ref et le nom jndi de ta datasource:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
        	<resource-ref>
    		<res-ref-name>jdbc/app/OracleDS</res-ref-name>  <--- nom utilisé dans web.xml
    		<res-type>java.lang.String</res-type>
    		<jndi-name>java:OracleDS</jndi-name>      <--- nom jndi utilisé dans xxx-ds.xml
    	</resource-ref>
    - dans ton appli web:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
      try  { 
        Context initCtx = new InitialContext();
        Context envCtx = (Context)
          initCtx.lookup("java:comp/env");
        DataSource ds = (DataSource) envCtx.lookup("jdbc/app/OracleDS");
        con =  ds.getConnection();
        System.out.println("Created connection to database.");
      ...

  4. #4
    Membre confirmé
    Inscrit en
    Mars 2010
    Messages
    100
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 100
    Par défaut
    Merci XmasRock de ta réponse.

    tout est ok désormais, j'ai aussi alléger mon code pour le data source, ne mettant que "setURL".

    Résolu

    Ciao

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 17/04/2008, 11h42
  2. Configuration jboss pour eclipse
    Par sjtraore dans le forum Wildfly/JBoss
    Réponses: 2
    Dernier message: 08/11/2007, 10h25
  3. configurer jboss pour connecter pls BD?
    Par mbouzouita dans le forum Wildfly/JBoss
    Réponses: 6
    Dernier message: 02/06/2007, 07h43
  4. pb de configuration Jboss pour JNDI
    Par D.Mounir dans le forum Wildfly/JBoss
    Réponses: 1
    Dernier message: 28/04/2007, 21h15
  5. [JBoss][Débutant] configurer JBoss pour MS SQL server 2000
    Par Houbbba dans le forum Wildfly/JBoss
    Réponses: 2
    Dernier message: 09/03/2006, 14h31

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