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

Tomcat et TomEE Java Discussion :

Tomcat 6 + JNDI


Sujet :

Tomcat et TomEE Java

  1. #1
    Candidat au Club
    Inscrit en
    Mai 2007
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 14
    Points : 2
    Points
    2
    Par défaut Tomcat 6 + JNDI
    Salut tout le monde,
    Bon voilà je viens d'installer le nouveau tomcat sur une machine Linux.
    Je déploie toutes mes applis ... ok.
    Je lance le navigateur et la paf, ben j'avais oublié de configurer les pools de connection JNDI pour tomcat.
    Cependant, comment faire? La doc de tomcat est pas très précise, moi je veux pas mettre la connection dans le code, mais dans un fichier xml, c'est possible non?
    A savoir que je dois migrer mon appli de JBoss vers Tomcat 6.
    Voilà, je vous remercie.
    +

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    352
    Détails du profil
    Informations personnelles :
    Âge : 57
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2006
    Messages : 352
    Points : 445
    Points
    445
    Par défaut
    Pour déclarer ton pool de connexion, tu as 2 solutions:
    - dans le fichier server.xml : tu déclares un datasource global
    - dans le fichier de contexte de ton application (si tu la déploies avec un fichier de contexte) sinon dans la définition du contexte de ton application au sein du fichier server.xml : tu déclares un datasource local

    Il existe aussi une troisième solution qui consiste à déclarer un datasource global et de rajouter une référence à celui-ci dans le contexte de l'application. Cette méthode est intéressante lorsque l'on veut partager un datasource entre plusieurs applications. Sinon ma préférence va à l'utilisation d'un fichier de contexte par application avec le datasource déclaré dans celui-ci. Ainsi on ne modifie pas le fichier server.xml.

    Jacques Desmazières

  3. #3
    Candidat au Club
    Inscrit en
    Mai 2007
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 14
    Points : 2
    Points
    2
    Par défaut
    Bonjour,
    merci de ta réponse.
    Mon application est un ensemble de war.
    Il faut que j'écrive un fichier de contexte pour chaque war?
    J'ai déjà essayé de modifier server.xml (à l'aide du tutorial qu'il y a sur developpez.net), mais sans succès.
    Mais bon déjà, c'est dans quel fichier que tu me dis d'écrire?

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    352
    Détails du profil
    Informations personnelles :
    Âge : 57
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2006
    Messages : 352
    Points : 445
    Points
    445
    Par défaut
    Personnellement c'est ce que je fais : un fichier de contexte par fichier war. Par contre si chacun de tes war accède à la même base de données, le mieux est donc peut être de déclarer ton datasource au niveau du server.xml (il correspond à une référence JNDI globale ex:jdbc/monDS). Ensuite dans chacun de tes fichiers de contexte tu déclares une référence vers le datasource globale (elle correspond à une référence JNDI locale excomp/env/jdbc/monDS).

    server.xml (extract):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <GlobalNamingResources>
    <Resource name="jdbc/monDS" auth="Container" type="javax.sql.DataSource"/> 
    <ResourceParams name="jdbc/monDS">  <parameter><name>factory</name><value>org.apache.commons.dbcp.BasicDataSourceFactory</value></parameter>  <parameter><name>driverClassName</name><value>oracle.jdbc.driver.OracleDriver</value></parameter>  <parameter><name>url</name><value>jdbc:oracle:thin:@server:port:SID</value></parameter>  <parameter><name>username</name><value>user</value></parameter>  <parameter><name>password</name><value>password</value></parameter>
      <parameter><name>maxActive</name><value>20</value></parameter>
      <parameter><name>initialSize</name><value>0</value></parameter>
      <parameter><name>maxWait</name><value>-1</value></parameter>  <parameter><name>removeAbandoned</name><value>true</value></parameter>  <parameter><name>removeAbandonedTimeout</name><value>300</value></parameter>  <parameter><name>timeBetweenEvictionRunsMillis</name><value>120000</value></parameter>  <parameter><name>minEvictableIdleTimeMillis</name><value>60000</value></parameter>  <parameter><name>poolPreparedStatements</name><value>true</value></parameter>  <parameter><name>maxOpenPreparedStatements</name><value>100</value></parameter>
    </ResourceParams>
    </GlobalNamingResources>
    Et le fichier de contexte (dans webapps) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <Context path="/app" docBase="D:/deploy/app/app.war" debug="0">
    	<ResourceLink name="jdbc/monDSLocal" global="jdbc/monDS" type="javax.sql.DataSource"/>
    </Context>
    (dans cet exemple, la référence JNDI est alors "java:comp/env/jdbc/monDSLocal")

    Bien sûr, tu peux pour des tests mettre tout cela directement dans server.xml.

    J'espère que ça te permettra d'avancer

    Jacques Desmazières

  5. #5
    Candidat au Club
    Inscrit en
    Mai 2007
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 14
    Points : 2
    Points
    2
    Par défaut
    Je te remercie de tout ça!
    Je précise que je n'ai pas de dossier extract, mais bon je vais modifier server.xml qui se trouve pour moi dans le répertoire conf de tomcat, il me semble que c'est celui la.
    Je vais tester cela et je te donne ma réponse.
    Encore merci de ta patience.

  6. #6
    Candidat au Club
    Inscrit en
    Mai 2007
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 14
    Points : 2
    Points
    2
    Par défaut
    Je suis désolé d'être aussi mauvais mais bon je bute encore
    Donc du coup, je vais te donner toutes mes infos.
    Le server.xml est dans le répertoire conf (il me semble que c'est celui la)
    Ensuite dans webapps, j'ai mes war. C'est tout.
    J'ai un war qui s'appelle "home.war" qui est celui de démarrage.
    Ce war va voir sur une BDD SQL Server. Dans le code ( ce n'est pas moi qui l'ai fait), la BDD est appellé via le nom GESTAPLI.
    Et en fait quand je vais sur http://ip/home je recois ce message d'erreur :
    javax.servlet.ServletException: Error occurred. Cause: com.ibatis.common.xml.NodeletException: Error parsing XML. Cause: com.ibatis.common.exception.NestedRuntimeException: Error parsing XPath '/sqlMapConfig/transactionManager/dataSource/end()'. Cause: com.ibatis.sqlmap.client.SqlMapException: There was an error configuring JndiDataSourceDaoTransactionPool. Cause: javax.naming.NameNotFoundException: Le Nom GESTAPLI n'est pas lié à ce Contexte
    Caused by: javax.naming.NameNotFoundException: Le Nom GESTAPLI n'est pas lié à ce Contexte
    Caused by: com.ibatis.sqlmap.client.SqlMapException: There was an error configuring JndiDataSourceDaoTransactionPool. Cause: javax.naming.NameNotFoundException: Le Nom GESTAPLI n'est pas lié à ce Contexte
    Caused by: javax.naming.NameNotFoundException: Le Nom GESTAPLI n'est pas lié à ce Contexte
    Caused by: com.ibatis.common.exception.NestedRuntimeException: Error parsing XPath '/sqlMapConfig/transactionManager/dataSource/end()'. Cause: com.ibatis.sqlmap.client.SqlMapException: There was an error configuring JndiDataSourceDaoTransactionPool. Cause: javax.naming.NameNotFoundException: Le Nom GESTAPLI n'est pas lié à ce Contexte
    Caused by: javax.naming.NameNotFoundException: Le Nom GESTAPLI n'est pas lié à ce Contexte
    Caused by: com.ibatis.sqlmap.client.SqlMapException: There was an error configuring JndiDataSourceDaoTransactionPool. Cause: javax.naming.NameNotFoundException: Le Nom GESTAPLI n'est pas lié à ce Contexte
    Caused by: javax.naming.NameNotFoundException: Le Nom GESTAPLI n'est pas lié à ce Contexte
    org.apache.struts.action.RequestProcessor.processException(RequestProcessor.java:545)
    org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:486)
    org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274)
    org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
    org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:525)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
    Voilà, si ca peut t'aider dans mon problème.
    Je te serais énormément reconnaissant de m'éclairer un peu plus.
    Merci.

  7. #7
    Candidat au Club
    Inscrit en
    Mai 2007
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 14
    Points : 2
    Points
    2
    Par défaut
    S'il vous plaît, je suis assez désespéré là quand même, les modifications que je porte sur sever.xml ne font rien du tout!

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    352
    Détails du profil
    Informations personnelles :
    Âge : 57
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2006
    Messages : 352
    Points : 445
    Points
    445
    Par défaut
    Envoie le fichier server.xml

    Jacques Desmazières

  9. #9
    Candidat au Club
    Inscrit en
    Mai 2007
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 14
    Points : 2
    Points
    2
    Par défaut
    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
    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
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
     
    <!-- Note:  A "Server" is not itself a "Container", so you may not
         define subcomponents such as "Valves" at this level.
         Documentation at /docs/config/server.html
     -->
    <Server port="8005" shutdown="SHUTDOWN">
     
      <!--APR library loader. Documentation at /docs/apr.html -->
      <Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
      <!--Initialize Jasper prior to webapps are loaded. Documentation at /docs/jasper-howto.html -->
      <Listener className="org.apache.catalina.core.JasperListener" />
      <!-- JMX Support for the Tomcat server. Documentation at /docs/non-existent.html -->
      <Listener className="org.apache.catalina.mbeans.ServerLifecycleListener" />
      <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />
     
      <!-- Global JNDI resources
           Documentation at /docs/jndi-resources-howto.html
      -->
      <GlobalNamingResources>
        <!-- Editable user database that can also be used by
             UserDatabaseRealm to authenticate users
        -->
        <Resource name="UserDatabase" auth="Container"
                  type="org.apache.catalina.UserDatabase"
                  description="User database that can be updated and saved"
                  factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
                  pathname="conf/tomcat-users.xml" />
     
    	<Resource name="GESTAPLI" auth="Container" type="javax.sql.DataSource"/> 
    	<ResourceParams name="GESTAPLI">  
    		<parameter>
    			<name>factory</name>
    			<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
    		</parameter>  
    		<parameter>
    			<name>driverClassName</name>
    			<value>com.microsoft.jdbc.sqlserver.SQLServerDriver</value>
    		</parameter>  
    		<parameter>
    			<name>url</name>
    			<value>jdbc:microsoft:sqlserver://10.1.1.30:1433;DatabaseName=GESTAPLI</value>
    		</parameter>  
    		<parameter>
    			<name>username</name>
    			<value>DI</value>
    		</parameter>  
    		<parameter>
    			<name>password</name>
    			<value>1259374</value>
    		</parameter>
      		<parameter>
      			<name>maxActive</name>
      			<value>20</value>
      		</parameter>
      		<parameter>
      			<name>initialSize</name>
      			<value>0</value>
      		</parameter>
      		<parameter>
      			<name>maxWait</name>
      			<value>-1</value>
      		</parameter>  
      		<parameter>
      			<name>removeAbandoned</name>
      			<value>true</value>
      		</parameter>  
      		<parameter>
      			<name>removeAbandonedTimeout</name>
      			<value>300</value>
      		</parameter>  
      		<parameter>
      			<name>timeBetweenEvictionRunsMillis</name>
      			<value>120000</value>
      		</parameter>  
      		<parameter>
      			<name>minEvictableIdleTimeMillis</name>
      			<value>60000</value>
      		</parameter>  
      		<parameter>
      			<name>poolPreparedStatements</name>
      			<value>true</value>
      		</parameter>  
      		<parameter>
      			<name>maxOpenPreparedStatements</name>
      			<value>100</value>
      		</parameter>
    	</ResourceParams>
      </GlobalNamingResources>
     
      <!-- A "Service" is a collection of one or more "Connectors" that share
           a single "Container" Note:  A "Service" is not itself a "Container", 
           so you may not define subcomponents such as "Valves" at this level.
           Documentation at /docs/config/service.html
       -->
      <Service name="Catalina">
     
        <!--The connectors can use a shared executor, you can define one or more named thread pools-->
        <!--
        <Executor name="tomcatThreadPool" namePrefix="catalina-exec-" 
            maxThreads="150" minSpareThreads="4"/>
        -->
     
     
        <!-- A "Connector" represents an endpoint by which requests are received
             and responses are returned. Documentation at :
             Java HTTP Connector: /docs/config/http.html (blocking & non-blocking)
             Java AJP  Connector: /docs/config/ajp.html
             APR (HTTP/AJP) Connector: /docs/apr.html
             Define a non-SSL HTTP/1.1 Connector on port 8080
        -->
        <Connector port="7070" protocol="HTTP/1.1" 
                   connectionTimeout="20000" 
                   redirectPort="8443" />
        <!-- A "Connector" using the shared thread pool-->
        <!--
        <Connector executor="tomcatThreadPool"
                   port="8080" protocol="HTTP/1.1" 
                   connectionTimeout="20000" 
                   redirectPort="8443" />
        -->           
        <!-- Define a SSL HTTP/1.1 Connector on port 8443
             This connector uses the JSSE configuration, when using APR, the 
             connector should be using the OpenSSL style configuration
             described in the APR documentation -->
        <!--
        <Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
                   maxThreads="150" scheme="https" secure="true"
                   clientAuth="false" sslProtocol="TLS" />
        -->
     
        <!-- Define an AJP 1.3 Connector on port 8009 -->
        <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
     
     
        <!-- An Engine represents the entry point (within Catalina) that processes
             every request.  The Engine implementation for Tomcat stand alone
             analyzes the HTTP headers included with the request, and passes them
             on to the appropriate Host (virtual host).
             Documentation at /docs/config/engine.html -->
     
        <!-- You should set jvmRoute to support load-balancing via AJP ie :
        <Engine name="Standalone" defaultHost="localhost" jvmRoute="jvm1">         
        --> 
        <Engine name="Catalina" defaultHost="localhost">
     
          <!--For clustering, please take a look at documentation at:
              /docs/cluster-howto.html  (simple how to)
              /docs/config/cluster.html (reference documentation) -->
          <!--
          <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>
          -->        
     
          <!-- The request dumper valve dumps useful debugging information about
               the request and response data received and sent by Tomcat.
               Documentation at: /docs/config/valve.html -->
          <!--
          <Valve className="org.apache.catalina.valves.RequestDumperValve"/>
          -->
     
          <!-- This Realm uses the UserDatabase configured in the global JNDI
               resources under the key "UserDatabase".  Any edits
               that are performed against this UserDatabase are immediately
               available for use by the Realm.  -->
          <Realm className="org.apache.catalina.realm.UserDatabaseRealm"
                 resourceName="UserDatabase"/>
     
          <!-- Define the default virtual host
               Note: XML Schema validation will not work with Xerces 2.2.
           -->
          <Host name="localhost"  appBase="webapps"
                unpackWARs="true" autoDeploy="true"
                xmlValidation="false" xmlNamespaceAware="false">
     
            <!-- SingleSignOn valve, share authentication between web applications
                 Documentation at: /docs/config/valve.html -->
            <!--
            <Valve className="org.apache.catalina.authenticator.SingleSignOn" />
            -->
     
            <!-- Access log processes all example.
                 Documentation at: /docs/config/valve.html -->
            <!--
            <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"  
                   prefix="localhost_access_log." suffix=".txt" pattern="common" resolveHosts="false"/>
            -->
     
          </Host>
        </Engine>
      </Service>
    </Server>

  10. #10
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    352
    Détails du profil
    Informations personnelles :
    Âge : 57
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2006
    Messages : 352
    Points : 445
    Points
    445
    Par défaut
    Le fichier server.xml semble correct. Par contre, le message d'erreur spécifie que le nom GESTAPLI n'est pas trouvé dans le contexte. J'aurais donc tendance à en déduire qu'il essaye de trouver le nom JNDI local "java:comp/env/GESTAPLI" et non pas juste "GESTAPLI".

    Pour cela il te faut impérativement déclarer le contexte de ton appli "home", soit directement dans server.xml, soit dans un fichier de contexte distinct (dans webapp), et déclarer dans ce contexte la référence vers le datasource global GESTAPLI. De cette façon le nom JNDI "java:comp/env/GESTAPLI" sera défini.

    Jacques Desmazières

  11. #11
    Candidat au Club
    Inscrit en
    Mai 2007
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 14
    Points : 2
    Points
    2
    Par défaut
    Alors j'essaie de créer le fichier de contexte directement dans le server.xml mais le probleme c'est où le mettre, parce que j'imagine qu'il faut mettre la balise <Context> à un endroit bien précis.
    Sinon, le mettre dans webapp... dans le .war??? ou comme ça dans le dossier webapp?
    Je te remercie quand même de prendre du temps sur toi;

  12. #12
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    352
    Détails du profil
    Informations personnelles :
    Âge : 57
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2006
    Messages : 352
    Points : 445
    Points
    445
    Par défaut
    Pour moi le plus simple est de créer un fichier de contexte dans le répertoire webapp. Pour cela, il faut que tu déplaces ton fichier war afin qu'il ne soit pas déployé automatiquement par Tomcat. Tu crées un fichier de contexte que tu peux nommer comme ton fichier war mais avec l'extension xml, et tu y mets quelque chose qui devrait ressembler à ça:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <Context path="/home" docBase="D:/temp/home.war" debug="0">
    	<ResourceLink name="GESTAPLI" global="GESTAPLI" type="javax.sql.DataSource"/>
    </Context>
    Jacques Desmazières

  13. #13
    Candidat au Club
    Inscrit en
    Mai 2007
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 14
    Points : 2
    Points
    2
    Par défaut
    bon je viens de rajouter le fichier xml dans le dossier webapss avec pour le chemin "/home/.../home.war" et résultat ben toujours pareil, GESTAPLI n'est pas lié au contexte.

  14. #14
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    59
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2006
    Messages : 59
    Points : 76
    Points
    76
    Par défaut
    Hello,

    Alors j'ai aussi pas mal galèrer avec le setup d'une ressource jdbc avecTomcat et JNDI (setup différent presqu'à chaque nouvelle version de tomcat...)
    Alors finalement, la config pour tomcat 6 me semble assez simple :
    dans ton application web, dans le répertoire META-INF, tu crées un fichier context.xml qui ressemble à ça :
    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
     
    <?xml version="1.0" encoding="UTF-8"?>
    <Context path="/BlaBla" debug="1" reloadable="true">
    	<Resource 
    		name="jdbc/BlaDB" 
    		auth="Container" 
    		type="javax.sql.DataSource" 
    		maxActive="10" 
    		maxIdle="3" 
    		maxWait="10000" 
    		username="bla_admin" 
    		password="bla_admin" 
    		driverClassName="com.mysql.jdbc.Driver"
    		url="jdbc:mysql://localhost:3306/bladb"
    	/>
     
    </Context>
    et ensuite la reference dans web.xml (qui ne semble pas nécessaire avec JPA)
    et pas de probleme

    AUCUNE modification des fichiers de tomcat...

    edit :
    je viens de tester sans passer par JPA, acquérir la ressource et obtenir une connection ne nécéssite aucune modif de web.xml
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    initCtx = new InitialContext();
    Context envCtx = (Context) initCtx.lookup("java:comp/env");
    DataSource ds = (DataSource) envCtx.lookup("jdbc/BlaDB");

  15. #15
    Candidat au Club
    Inscrit en
    Mai 2007
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 14
    Points : 2
    Points
    2
    Par défaut
    Ok merci à toi YeFFrey, je testerais ça plutard (on m'a fait passé à autre chose de plus important, Subversion )
    Dès que je recommencerais à essayer de faire marcher tomcat 6 je te ferais signe.
    Encore merci!!!
    +

  16. #16
    Candidat au Club
    Inscrit en
    Mai 2007
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 14
    Points : 2
    Points
    2
    Par défaut
    hey YeFFreY, ça y est je viens de tester, mais j'ai toujours la même erreur que avant.
    Je n'ai rajouté que context.xml dans le dossier META-INF de mon war.
    Je n'ai que ce fichier qui spécifie les pools de connexion, rien dans le server.xml de tomcat, que dans le META-INF.
    Rien à faire je me fais toujours jetter par Tomcat.
    Je ne sais que faire et je m'en remet à toi pour savoir où donner de la tête.

  17. #17
    Nouveau membre du Club
    Inscrit en
    Mars 2005
    Messages
    60
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 60
    Points : 33
    Points
    33
    Par défaut
    Salut,
    il y a un truc qui me chiffonne dans tout ça : dans mon Tomcat 6, je n'ai pas la librairie commons-dbcp.jar contenant la factory org.apache.commons.dbcp.BasicDataSourceFactory !?!

    Comment se fait-ce ? Moi je n'ai que la librairie tomcat-dbcp.jar ! Et avec celle-ci, j'ai des problèmes aussi ...

Discussions similaires

  1. [tomcat 5.5,hibernate 3.2] bind entre la session factory et jndi
    Par sallemel dans le forum Tomcat et TomEE
    Réponses: 1
    Dernier message: 19/08/2010, 21h43
  2. JNDI sous Tomcat, class not found exception
    Par ChristopheH dans le forum Tomcat et TomEE
    Réponses: 16
    Dernier message: 19/12/2009, 01h24
  3. Tomcat Datasource JNDI
    Par *alexandre* dans le forum Tomcat et TomEE
    Réponses: 1
    Dernier message: 21/07/2009, 10h46
  4. Tomcat 6 & JNDI
    Par Creenshaw dans le forum Tomcat et TomEE
    Réponses: 2
    Dernier message: 02/12/2008, 11h20
  5. tomcat 6 - JNDI syntaxe context.xml fichier .properties
    Par plm12 dans le forum Tomcat et TomEE
    Réponses: 0
    Dernier message: 30/09/2008, 16h51

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