Hi Thiago, thanks for your answer!
After some "more" dependency exclusions, the following (hibernate
related) libs are left:
* org.apache.tapestry:tapestry-hibernate:5.4.0
* org.apache.tapestry:tapestry-hibernate-core:5.4.0
and
* org.hibernate.javax.persistence:hibernate-jpa-2.0-api:1.0.1.Final
* org.hibernate:hibernate-commons-annotations:3.2.0.Final
* org.hibernate:hibernate-core:3.6.10.Final
* org.hibernate:hibernate-validator:3.1.0.GA
But the error still exists.
org.apache.tapestry5.ioc.internal.OperationException: Error invoking
method public static
org.apache.tapestry5.hibernate.HibernateSessionManager
org.apache.tapestry5.hibernate.modules.HibernateCoreModule.buildHibernateSessionManager(org.apache.tapestry5.hibernate.HibernateSessionSource,org.apache.tapestry5.ioc.services.PerthreadManager):
org.hibernate.SessionFactory.openSession()Lorg/hibernate/Session;
at
org.apache.tapestry5.ioc.internal.OperationTrackerImpl.logAndRethrow(OperationTrackerImpl.java:186)
at
org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:90)
at
org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:72)
at
org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1260)
at
org.apache.tapestry5.ioc.internal.util.ConstructionPlan.createObject(ConstructionPlan.java:61)
at
org.apache.tapestry5.ioc.internal.ServiceBuilderMethodInvoker.createObject(ServiceBuilderMethodInvoker.java:61)
at
org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator$1.invoke(OperationTrackingObjectCreator.java:47)
at
org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:82)
at
org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:72)
at
org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1260)
at
org.apache.tapestry5.ioc.internal.OperationTrackingObjectCreator.createObject(OperationTrackingObjectCreator.java:51)
at
org.apache.tapestry5.ioc.internal.services.PerthreadManagerImpl$DefaultObjectCreator.createObject(PerthreadManagerImpl.java:275)
at $HibernateSessionManager_142885567b0747b9.delegate(Unknown Source)
at $HibernateSessionManager_142885567b0747b9.getSession(Unknown Source)
at $HibernateSessionManager_142885567b0746e9.getSession(Unknown Source)
at $Session_142885567b0747b8.readProperty(Unknown Source)
at $Session_142885567b0747b8.createCriteria(Unknown Source)
at $Session_142885567b074696.createCriteria(Unknown Source)
....
Caused by: java.lang.RuntimeException: Error invoking method public
static org.apache.tapestry5.hibernate.HibernateSessionManager
org.apache.tapestry5.hibernate.modules.HibernateCoreModule.buildHibernateSessionManager(org.apache.tapestry5.hibernate.HibernateSessionSource,org.apache.tapestry5.ioc.services.PerthreadManager):
org.hibernate.SessionFactory.openSession()Lorg/hibernate/Session;
at
org.apache.tapestry5.ioc.internal.util.MethodInvoker.invoke(MethodInvoker.java:63)
at
org.apache.tapestry5.ioc.internal.util.LoggingInvokableWrapper.invoke(LoggingInvokableWrapper.java:43)
at
org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:82)
... 116 more
Caused by: java.lang.NoSuchMethodError:
org.hibernate.SessionFactory.openSession()Lorg/hibernate/Session;
at
org.apache.tapestry5.internal.hibernate.HibernateSessionSourceImpl.create(HibernateSessionSourceImpl.java:71)
at $HibernateSessionSource_142885567b0746b3.create(Unknown Source)
at
org.apache.tapestry5.internal.hibernate.HibernateSessionManagerImpl.<init>(HibernateSessionManagerImpl.java:31)
at
org.apache.tapestry5.hibernate.modules.HibernateCoreModule.buildHibernateSessionManager(HibernateCoreModule.java:96)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at
org.apache.tapestry5.ioc.internal.util.MethodInvoker.invoke(MethodInvoker.java:52)
Surprisingly, the database structure is correctly read, so
SchemaValidator and TableMetaData had no issues at all on startup...
Forcing Tapestry to use 5.3.8 just for Hibernate related libs results in:
Caused by: java.lang.RuntimeException: Failure loading Tapestry IoC
module class org.apache.tapestry5.hibernate.HibernateCoreModule: Error
invoking service binder method
org.apache.tapestry5.hibernate.HibernateCoreModule.bind(ServiceBinder)
(at HibernateCoreModule.java:45): org/apache/tapestry5/ioc/MethodAdvice
at
org.apache.tapestry5.ioc.RegistryBuilder.add(RegistryBuilder.java:164)
at
org.apache.tapestry5.ioc.IOCUtilities.addModulesInList(IOCUtilities.java:132)
at
org.apache.tapestry5.ioc.IOCUtilities.addModulesInManifest(IOCUtilities.java:105)
... 49 more
Caused by: java.lang.RuntimeException: Error invoking service binder
method
org.apache.tapestry5.hibernate.HibernateCoreModule.bind(ServiceBinder)
(at HibernateCoreModule.java:45): org/apache/tapestry5/ioc/MethodAdvice
at
org.apache.tapestry5.ioc.internal.DefaultModuleDefImpl.bind(DefaultModuleDefImpl.java:624)
at
org.apache.tapestry5.ioc.internal.DefaultModuleDefImpl.<init>(DefaultModuleDefImpl.java:148)
at
org.apache.tapestry5.ioc.RegistryBuilder.add(RegistryBuilder.java:123)
at
org.apache.tapestry5.ioc.RegistryBuilder.add(RegistryBuilder.java:161)
... 51 more
Caused by: java.lang.NoClassDefFoundError:
org/apache/tapestry5/ioc/MethodAdvice
at java.lang.Class.getDeclaredConstructors0(Native Method)
at java.lang.Class.privateGetDeclaredConstructors(Class.java:2585)
at java.lang.Class.getConstructors(Class.java:1522)
at
org.apache.tapestry5.ioc.internal.util.InternalUtils.findAutobuildConstructor(InternalUtils.java:562)
at
org.apache.tapestry5.ioc.internal.ServiceBinderImpl.createStandardConstructorBasedObjectCreatorSource(ServiceBinderImpl.java:146)
at
org.apache.tapestry5.ioc.internal.ServiceBinderImpl.createObjectCreatorSourceFromImplementationClass(ServiceBinderImpl.java:129)
at
org.apache.tapestry5.ioc.internal.ServiceBinderImpl.flush(ServiceBinderImpl.java:96)
at
org.apache.tapestry5.ioc.internal.ServiceBinderImpl.bind(ServiceBinderImpl.java:250)
at
org.apache.tapestry5.hibernate.HibernateCoreModule.bind(HibernateCoreModule.java:47)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at
org.apache.tapestry5.ioc.internal.DefaultModuleDefImpl.bind(DefaultModuleDefImpl.java:599)
... 54 more
Caused by: java.lang.ClassNotFoundException:
org.apache.tapestry5.ioc.MethodAdvice
at
org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1293)
at
org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1145)
... 68 more
Any other idea?
Jens
Am 11.01.16 um 17:08 schrieb Thiago H de Paula Figueiredo:
On Mon, 11 Jan 2016 14:06:15 -0200, Jens Breitenstein
<mailingl...@j-b-s.de> wrote:
Hi All,
Hi!
I am migrating an application from T5.3.8 to T5.4. In the past the
application was based one Hibernate 3x but T5.4 seems to make use of
Hibernate 4 explicitly (correct me if I am wrong). So currently I am
facing the following exception:
I'd try forcing the tapestry-hibernate version to 5.3.8 and leaving
everything else at 5.4.0 and see whether it works.