Bonjour,
Mon application WEB doit être migrée sous WAS8.5 et j'utilise le RAD 8.5 de Websphere. Apparemment, la version d'hibernate ne convenais plus pour le type de connection à la base de donnée que l'on utilise. J'utilise donc le jar hibernate-2.1.7c.jar. Cela se lance plutôt bien, seulement cela coince au moment de créer la SessionFactory.
Le code est le suivant:
-----
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 public class DatabaseAccessHibernate extends AbstractDatabaseAccess implements Configurable { ... /** The Hibernate session factory. */ private transient SessionFactory sessionFactory = null; ... private void configureHibernate( String implementation, String url, String user, String password, PoolConfig poolConfig, String driver, String dialect, String datasource) throws HibernateException { ... net.sf.hibernate.cfg.Configuration config = new net.sf.hibernate.cfg.Configuration(); config.setProperty("hibernate.connection.datasource", datasource); sessionFactory = config.buildSessionFactory(); // Là, génération de l'erreur .. }
Le datasource est passé en paramètre et se trouve dans la configuration du Server.
Voici l'erreur renvoyée:
Je suis plutôt nouveau sur ce forum donc si vous trouvez que je ne formule pas assez bien mon problème, n'hésitez pas à me le faire savoir.
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 [29/07/14 14:55:26:754 CEST] 00000043 SettingsFacto I net.sf.hibernate.cfg.SettingsFactory buildSettings Use outer join fetching: true [29/07/14 14:55:26:760 CEST] 00000043 NamingHelper I net.sf.hibernate.util.NamingHelper getInitialContext JNDI InitialContext properties:{} [29/07/14 14:55:26:774 CEST] 00000043 NamingHelper E net.sf.hibernate.util.NamingHelper getInitialContext Could not obtain initial context javax.naming.NoInitialContextException: Cannot instantiate class: com.ibm.websphere.naming.WsnInitialContextFactory [Root exception is java.lang.ClassCastException: com.ibm.websphere.naming.WsnInitialContextFactory incompatible with javax.naming.spi.InitialContextFactory] at javax.naming.spi.NamingManager.getInitialContext(Unknown Source) at javax.naming.InitialContext.getDefaultInitCtx(Unknown Source) at javax.naming.InitialContext.init(Unknown Source) at javax.naming.InitialContext.<init>(Unknown Source) at net.sf.hibernate.util.NamingHelper.getInitialContext(NamingHelper.java:28) at net.sf.hibernate.connection.DatasourceConnectionProvider.configure(DatasourceConnectionProvider.java:44) at net.sf.hibernate.connection.ConnectionProviderFactory.newConnectionProvider(ConnectionProviderFactory.java:83) at net.sf.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:76) at net.sf.hibernate.cfg.Configuration.buildSettings(Configuration.java:1160) at net.sf.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:794) at be.ing.ipa.database.DatabaseAccessHibernate.configureHibernate(DatabaseAccessHibernate.java:744) at be.ing.ipa.database.DatabaseAccessHibernate.refreshConfiguration(DatabaseAccessHibernate.java:610) at be.ing.ipa.database.DatabaseAccessHibernate.<init>(DatabaseAccessHibernate.java:274) at be.ing.ipa.database.DatabaseAccessHibernate.getInstance(DatabaseAccessHibernate.java:193) at be.ing.ipa.database.DatabaseAccessFactory.getDatabaseAccess(DatabaseAccessFactory.java:182) at be.ing.ipa.database.CachedDatabaseAccess.refreshConfiguration(CachedDatabaseAccess.java:430) at be.ing.ipa.database.CachedDatabaseAccess.<init>(CachedDatabaseAccess.java:186) at be.ing.ipa.database.CachedDatabaseAccess.getInstance(CachedDatabaseAccess.java:172) at be.ing.ipa.database.DatabaseAccessFactory.getCachedDatabaseAccess(DatabaseAccessFactory.java:202) at be.ing.ipa.servlet.IpaListener.contextInitialized(IpaListener.java:156) at com.ibm.ws.webcontainer.webapp.WebApp.notifyServletContextCreated(WebApp.java:1676) at com.ibm.ws.webcontainer.webapp.WebAppImpl.initialize(WebAppImpl.java:414) at com.ibm.ws.webcontainer.webapp.WebGroupImpl.addWebApplication(WebGroupImpl.java:88) at com.ibm.ws.webcontainer.VirtualHostImpl.addWebApplication(VirtualHostImpl.java:169) at com.ibm.ws.webcontainer.WSWebContainer.addWebApp(WSWebContainer.java:749) at com.ibm.ws.webcontainer.WSWebContainer.addWebApplication(WSWebContainer.java:634) at com.ibm.ws.webcontainer.component.WebContainerImpl.install(WebContainerImpl.java:426) at com.ibm.ws.webcontainer.component.WebContainerImpl.start(WebContainerImpl.java:718) at com.ibm.ws.runtime.component.ApplicationMgrImpl.start(ApplicationMgrImpl.java:1173) at com.ibm.ws.runtime.component.DeployedApplicationImpl.fireDeployedObjectStart(DeployedApplicationImpl.java:1370) at com.ibm.ws.runtime.component.DeployedModuleImpl.start(DeployedModuleImpl.java:639) at com.ibm.ws.runtime.component.DeployedApplicationImpl.start(DeployedApplicationImpl.java:968) at com.ibm.ws.runtime.component.ApplicationMgrImpl.startApplication(ApplicationMgrImpl.java:772) at com.ibm.ws.runtime.component.ApplicationMgrImpl.start(ApplicationMgrImpl.java:2175) at com.ibm.ws.runtime.component.CompositionUnitMgrImpl.start(CompositionUnitMgrImpl.java:445) at com.ibm.ws.runtime.component.CompositionUnitImpl.start(CompositionUnitImpl.java:123) at com.ibm.ws.runtime.component.CompositionUnitMgrImpl.start(CompositionUnitMgrImpl.java:388) at com.ibm.ws.runtime.component.CompositionUnitMgrImpl.access$500(CompositionUnitMgrImpl.java:116) at com.ibm.ws.runtime.component.CompositionUnitMgrImpl$CUInitializer.run(CompositionUnitMgrImpl.java:994) at com.ibm.wsspi.runtime.component.WsComponentImpl$_AsynchInitializer.run(WsComponentImpl.java:349) at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1814) Caused by: java.lang.ClassCastException: com.ibm.websphere.naming.WsnInitialContextFactory incompatible with javax.naming.spi.InitialContextFactory ... 41 more
Ma question est donc: Quel serait mon problème? Les heures passées sur google ne m'ont pas fort aidé.
Merci D'avance
Partager