Probleme Application JAVA Connexion DB MySQL (connector/J driver) - Java - Programmation
Marsh Posté le 27-08-2013 à 09:34:35
Tu essayes d'accéder à une ressource jndi et il manque des éléments de configuration (ie la naming factory class).
Marsh Posté le 27-08-2013 à 11:46:52
des éléments? ha bon, je l'ai créé avec l'assistant de netbeans pourtant et ca fonctionne avec un run dans netbeans...
J'ai cherché un peu partout mais j'ai rien trouvé... t'ajouterai quoi? où?
J'ai essayé en ajoutant la propriété factory-class="com.mysql.jdbc.Driver" a la resource
Code :
|
mais ca marche toujours pas en dehors de netbeans... dedans y a aucun problème ...
Marsh Posté le 27-08-2013 à 12:37:04
Je connais pas ton environnement, mais la théorie c'est: tu accèdes à une ressource (ta connexion jdbc) via un nom (le jndi-name) dans un annuaire de ressources (jndi). Cet annuaire est mal paramétré dans ton serveur.
Marsh Posté le 27-08-2013 à 00:11:13
Bonsoir tout le monde,
J'ai un petit soucis. Je suis en train de développer une application client qui doit permettre de gérer une base de données MySLQ distante... J'ai donc configuré le projet de la façon suivante :
-) Dans l'onglet services-Databases, j'ai ajouté une connexion avec le Connector/J driver.
-) Création d'une jdbc ressource et d'un jdbc connection pool...
Lorsque je run l'application dans netbeans ca fonctionne parfaitement... Mais lorsque que je lance le projet "cleaned and built" (dossier dist) j'ai une erreur dont voilà la stacktrace :
et le message de l'erreur :
"Need to specify class name in environment property, or as an applet parameter, or in an application resource file : java.naming.factory.initial"
J'ai essayé d'ajouter le jar du connector/j driver au dossier dist et dist/lib mais ca ne change rien...
mon fichier glassfish-ressources.xml
<resources>
<jdbc-resource enabled="true" jndi-name="jdbc/myDatasource" object-type="user" pool-name="Pool">
<description/>
</jdbc-resource>
<jdbc-connection-pool allow-non-component-callers="false" associate-with-thread="false" connection-creation-retry-attempts="0" connection-creation-retry-interval-in-seconds="10" connection-leak-reclaim="false" connection-leak-timeout-in-seconds="0" connection-validation-method="auto-commit" datasource-classname="com.mysql.jdbc.jdbc2.optional.MysqlDataSource" fail-all-connections="false" idle-timeout-in-seconds="300" is-connection-validation-required="false" is-isolation-level-guaranteed="true" lazy-connection-association="false" lazy-connection-enlistment="false" match-connections="false" max-connection-usage-count="0" max-pool-size="32" max-wait-time-in-millis="60000" name="lipstiPool" non-transactional-connections="false" ping="false" pool-resize-quantity="2" pooling="true" res-type="javax.sql.DataSource" statement-cache-size="0" statement-leak-reclaim="false" statement-leak-timeout-in-seconds="0" statement-timeout-in-seconds="-1" steady-pool-size="8" validate-atmost-once-period-in-seconds="0" wrap-jdbc-objects="false">
<property name="URL" value="jdbc:mysql://xxx.xxx.xxx.xxx:3306/xxx?zeroDateTimeBehavior=convertToNull"/>
<property name="serverName" value="xxx.xxx.xxx.xxx"/>
<property name="PortNumber" value="3306"/>
<property name="User" value="xxx"/>
<property name="Password" value="xxx"/>
<property name="databaseName" value="xxx"/>
</jdbc-connection-pool>
</resources>
Si quelqu'un sait comment régler ce problème ou a ne serait-ce qu'une piste, ce serait bien gentil de m'en faire part
Merci!