Bonjour, je suis en train de réaliser pour le compte d'une entreprise un site J2EE avec des EJBs mais j'ai un problème au niveau du JDBC.
Voici ma configuration:
IDE:Netbeans 6.5
JRE:1.6
SGBDR: PostgreSQL
Driver:postgresql-8.3-604.jdbc3.jar situé dans:C:\Program Files\glassfish-v2ur2\lib\. (Le fichier a été ajouté au CLASSPATH)
Framework:JSF
Persistance Provider:TopLink
Serveur lourd:glassfish v2 (en local), (BDD sur un serveur de l'entreprise).
Lorsque je compile mon projet j'obtiens l'erreur suivante:
Je constate que TopLink n'arrive même pas à créer son fichier temporaire "**createDDL.jdbc" et on peut lire à côté du paramètre Serveur : unknow.(Je ne sais pas si c'est important).
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 TopLink, version: Oracle TopLink Essentials - 2.0.1 (Build b04-fcs (04/11/2008)) Server: unknown file:/C:/Documents%20and%20Settings/MuMu/Mes%20documents/NetBeansProjects/OK_Web/dist/gfdeploy/OK_Web-war_war/WEB-INF/lib/OK_Web-ejb.jar-OK_Web-ejbPU login successful file:/C:/Documents%20and%20Settings/MuMu/Mes%20documents/NetBeansProjects/OK_Web/dist/gfdeploy/OK_Web-war_war/WEB-INF/lib/OK_Web-ejb.jar-OK_Web-ejbPU logout successful Une exception s''est produite dans la phase J2EEC. com.sun.enterprise.deployment.backend.IASDeploymentException: Exception [TOPLINK-7018] (Oracle TopLink Essentials - 2.0.1 (Build b04-fcs (04/11/2008))): oracle.toplink.essentials.exceptions.ValidationException Exception Description: File error. Internal Exception: java.io.FileNotFoundException: C:\Program Files\glassfish-v2ur2\domains\domain1\generated\ejb\j2ee-apps\OK_Web\OK_Web_OK\Web-war_OK_Web-ejbPU_createDDL.jdbc (Le chemin d'accès spécifié est introuvable) at oracle.toplink.essentials.internal.ejb.cmp3.EntityManagerSetupImpl.deploy(EntityManagerSetupImpl.java:239) at oracle.toplink.essentials.internal.ejb.cmp3.base.EntityManagerFactoryImpl.getServerSession(EntityManagerFactoryImpl.java:93) at oracle.toplink.essentials.internal.ejb.cmp3.base.EntityManagerFactoryImpl.createEntityManagerImpl(EntityManagerFactoryImpl.java:126) at oracle.toplink.essentials.internal.ejb.cmp3.base.EntityManagerFactoryImpl.createEntityManagerImpl(EntityManagerFactoryImpl.java:120) at oracle.toplink.essentials.internal.ejb.cmp3.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:91) at com.sun.jdo.spi.persistence.support.ejb.ejbc.PersistenceProcessor.loadPersistenceUnitBundle(PersistenceProcessor.java:513) at com.sun.jdo.spi.persistence.support.ejb.ejbc.PersistenceProcessor.createTablesInDB(PersistenceProcessor.java:353) at com.sun.jdo.spi.persistence.support.ejb.ejbc.PersistenceProcessor.processAppBundle(PersistenceProcessor.java:219) at com.sun.jdo.spi.persistence.support.ejb.ejbc.PersistenceProcessor.processApplication(PersistenceProcessor.java:146) at com.sun.jdo.spi.persistence.support.ejb.ejbc.DeploymentEventListenerImpl.processApplication(DeploymentEventListenerImpl.java:211) at com.sun.jdo.spi.persistence.support.ejb.ejbc.DeploymentEventListenerImpl.processEvent(DeploymentEventListenerImpl.java:172) at com.sun.jdo.spi.persistence.support.ejb.ejbc.DeploymentEventListenerImpl.notifyDeploymentEvent(DeploymentEventListenerImpl.java:122) at com.sun.enterprise.deployment.backend.DeploymentEventManager.notifyDeploymentEvent(DeploymentEventManager.java:79) at com.sun.enterprise.deployment.backend.AppDeployer.postDeploy(AppDeployer.java:392) at com.sun.enterprise.deployment.backend.AppDeployer.deploy(AppDeployer.java:251) at com.sun.enterprise.deployment.backend.AppDeployer.doRequestFinish(AppDeployer.java:148) at com.sun.enterprise.deployment.phasing.J2EECPhase.runPhase(J2EECPhase.java:191) at com.sun.enterprise.deployment.phasing.DeploymentPhase.executePhase(DeploymentPhase.java:108) at com.sun.enterprise.deployment.phasing.PEDeploymentService.executePhases(PEDeploymentService.java:919) at com.sun.enterprise.deployment.phasing.PEDeploymentService.deploy(PEDeploymentService.java:279) at com.sun.enterprise.deployment.phasing.PEDeploymentService.deploy(PEDeploymentService.java:788) at com.sun.enterprise.management.deploy.DeployThread.deploy(DeployThread.java:187) at com.sun.enterprise.management.deploy.DeployThread.run(DeployThread.java:223)
Pourtant en utilisant l'admin console de glassfish, j'ai crée une pool de connexion et un Ressource JDBC qui ping correctement sur ma BDD.
Au cas où je poste les arguments de ma pool:
databaseName:*****
portNumber:celui par défaut
datasourceName:org.postgresql.ds.PGSimpleDataSource
networkProtocol:psql
roleName:public
serverName:****
password:****
user:****
Ce que je ne comprends pas, c'est que j'ai réussi via NetBeans à créer plusieurs classes basées sur les tables de la BDD mais je n'arrive pas à déployer correctement mon projet sur Glassfish et je n'arrive pas à faire des requêtes qui renvoient des données pourtant le fichier persistance.xml a été géré automatiquement...
Partager