Can't deploy CAS web application on Jonas 5.2.x
I have CAS web war v3.3.5 (http://www.jasig.org/cas). It can't be deployed on Jonas:
{noformat} 2011-12-21 16:55:08,161 : WARDeployer.doDeploy : Deploying cas-web.war 2011-12-21 16:55:09,453 : DeployableMonitor.detectNewArchives : DeployerException : Cannot deploy the deployable 'WARDeployableImpl[archive=C:\java\jo nas-full-5.2.2\deploy\cas-web.war]' org.ow2.util.ee.deploy.api.deployer.DeployerException: Unable to deploy deployable 'WARDeployableImpl[archive=C:\java\jonas-full-5.2.2\deploy\cas-web. war]' at org.ow2.util.ee.deploy.impl.deployer.AbsDeployer.deploy(AbsDeployer.java:102) at org.ow2.util.ee.deploy.impl.deployer.DeployerManager.deploy(DeployerManager.java:148) at org.ow2.jonas.deployablemonitor.DeployableMonitor.detectNewArchives(DeployableMonitor.java:491) at org.ow2.jonas.deployablemonitor.DeployableMonitor.checkNewArchives(DeployableMonitor.java:306) at org.ow2.jonas.deployablemonitor.DeployableMonitor.run(DeployableMonitor.java:216) Caused by: javax.persistence.PersistenceException: [PersistenceUnit: CasPersistence] Unable to build EntityManagerFactory at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:677) at org.hibernate.ejb.HibernatePersistence.createContainerEntityManagerFactory(HibernatePersistence.java:132) at org.ow2.easybeans.persistence.JPersistenceContext.init(JPersistenceContext.java:72) at org.ow2.easybeans.persistence.JPersistenceContext.(JPersistenceContext.java:65) at org.ow2.easybeans.persistence.PersistenceUnitManager.addExtraPersistenceUnitInfos(PersistenceUnitManager.java:88) at org.ow2.easybeans.persistence.PersistenceUnitManager.(PersistenceUnitManager.java:64) at org.ow2.easybeans.persistence.xml.PersistenceXmlFileAnalyzer.loadPersistenceProvider(PersistenceXmlFileAnalyzer.java:233) at org.ow2.jonas.ejb.easybeans.EasyBeansService.__getPersistenceUnitManager(EasyBeansService.java:882) at org.ow2.jonas.ejb.easybeans.EasyBeansService.getPersistenceUnitManager(EasyBeansService.java) at org.ow2.jonas.web.base.BaseWebContainerService.registerWar(BaseWebContainerService.java:836) at org.ow2.jonas.web.base.BaseWebContainerService.registerWar(BaseWebContainerService.java:1257) at org.ow2.jonas.web.base.proxy.HttpOnDemandProxy.addWar(HttpOnDemandProxy.java:352) at org.ow2.jonas.web.base.WARDeployer.doDeploy(WARDeployer.java:70) at org.ow2.util.ee.deploy.impl.deployer.AbsDeployer$1.execute(AbsDeployer.java:93) at org.ow2.util.ee.deploy.impl.deployer.AbsDeployer$1.execute(AbsDeployer.java:91) at org.ow2.util.execution.helper.RunnableHelper.execute(RunnableHelper.java:77) at org.ow2.util.ee.deploy.impl.deployer.AbsDeployer.deploy(AbsDeployer.java:91) ... 4 more Caused by: org.hibernate.HibernateException: 'hibernate.dialect' must be set when no Connection avalable at org.hibernate.dialect.resolver.DialectFactory.buildDialect(DialectFactory.java:107) at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:138) at org.hibernate.cfg.Configuration.buildSettingsInternal(Configuration.java:2119) at org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2115) at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1339) at org.hibernate.cfg.AnnotationConfiguration.buildSessionFactory(AnnotationConfiguration.java:867) at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:669) ... 20 more {noformat}
No such problem on Tomcat.
With the latest version (3.4.11) there is a different problem, but this one is simple to solve.
{noformat} 2011-12-21 17:13:49,807 : WARDeployer.doDeploy : Deploying cas.war 2011-12-21 17:13:50,450 : JPersistenceUnitInfoLoader.loadPersistenceUnitInfoImplList : No SharedCacheMode defined. Set to default UNSPECIFIED 2011-12-21 17:13:50,451 : DeployableMonitor.detectNewArchives : Error : Cannot deploy the deployable 'WARDeployableImpl[archive=C:\java\jonas-full-5.2 .2\deploy\cas.war]' java.lang.NoClassDefFoundError: javax/persistence/SharedCacheMode at org.ow2.easybeans.persistence.xml.JPersistenceUnitInfoLoader.loadPersistenceUnitInfoImplList(JPersistenceUnitInfoLoader.java:233) at org.ow2.easybeans.persistence.xml.JPersistenceUnitInfoHelper.getPersistenceUnitInfoList(JPersistenceUnitInfoHelper.java:118) at org.ow2.easybeans.persistence.xml.PersistenceXmlFileAnalyzer.analyzePersistenceXmlFile(PersistenceXmlFileAnalyzer.java:130) at org.ow2.jonas.ejb.easybeans.EasyBeansService.__getPersistenceUnitManager(EasyBeansService.java:880) at org.ow2.jonas.ejb.easybeans.EasyBeansService.getPersistenceUnitManager(EasyBeansService.java) at org.ow2.jonas.web.base.BaseWebContainerService.registerWar(BaseWebContainerService.java:836) at org.ow2.jonas.web.base.BaseWebContainerService.registerWar(BaseWebContainerService.java:1257) at org.ow2.jonas.web.base.proxy.HttpOnDemandProxy.addWar(HttpOnDemandProxy.java:352) at org.ow2.jonas.web.base.WARDeployer.doDeploy(WARDeployer.java:70) at org.ow2.util.ee.deploy.impl.deployer.AbsDeployer$1.execute(AbsDeployer.java:93) at org.ow2.util.ee.deploy.impl.deployer.AbsDeployer$1.execute(AbsDeployer.java:91) at org.ow2.util.execution.helper.RunnableHelper.execute(RunnableHelper.java:77) at org.ow2.util.ee.deploy.impl.deployer.AbsDeployer.deploy(AbsDeployer.java:91) at org.ow2.util.ee.deploy.impl.deployer.DeployerManager.deploy(DeployerManager.java:148) at org.ow2.jonas.deployablemonitor.DeployableMonitor.detectNewArchives(DeployableMonitor.java:491) at org.ow2.jonas.deployablemonitor.DeployableMonitor.checkNewArchives(DeployableMonitor.java:306) at org.ow2.jonas.deployablemonitor.DeployableMonitor.run(DeployableMonitor.java:216) Caused by: java.lang.ClassNotFoundException: javax.persistence.SharedCacheMode not found by org.ow2.jonas.osgi.javaee-api [48] at org.apache.felix.framework.ModuleImpl.findClassOrResourceByDelegation(ModuleImpl.java:787) at org.apache.felix.framework.ModuleImpl.access$400(ModuleImpl.java:71) at org.apache.felix.framework.ModuleImpl$ModuleClassLoader.loadClass(ModuleImpl.java:1768) at java.lang.ClassLoader.loadClass(ClassLoader.java:248) at org.apache.felix.framework.ModuleImpl.getClassByDelegation(ModuleImpl.java:645) at org.apache.felix.framework.resolver.WireImpl.getClass(WireImpl.java:99) at org.apache.felix.framework.ModuleImpl.searchImports(ModuleImpl.java:1390) at org.apache.felix.framework.ModuleImpl.findClassOrResourceByDelegation(ModuleImpl.java:722) at org.apache.felix.framework.ModuleImpl.access$400(ModuleImpl.java:71) at org.apache.felix.framework.ModuleImpl$ModuleClassLoader.loadClass(ModuleImpl.java:1768) at java.lang.ClassLoader.loadClass(ClassLoader.java:248) ... 17 more 2011-12-21 17:13:50,459 : J2EEServer.__info : JOnAS AS v5.2.2 named 'jonas' RUNNING {noformat}
Would you be so kind to resolve this? Thank you!