Hello, we finally found the culprit via "invalid constant type: 18". We have two dependencies to javassist (3.12 and 3.18) via the same two different jpa implementations. Excluding the older javassist did the trick. It seems some Java 1.8 compiled class didn't work...? Perhaps javassist 3.18 is compiled with 1.8 and as we are running 1.7 compliance it broke?
Anyway, thanks for listening. Regards, Daniel P. -----Ursprüngliche Nachricht----- Von: Poggenpohl, Daniel [mailto:daniel.poggenp...@isst.fraunhofer.de] Gesendet: Montag, 20. Juli 2015 11:34 An: users@tapestry.apache.org Betreff: Deploying a Tapestry 5.3.8 app on Tomcat 7 - Dependency problems (probably) Hello everyone, We're trying to deploy our application to an Apache Tomcat 7 and are having problems visiting the app's pages because of JPA problems. First: Deploying the application to an embedded Jetty 9.2 works. Using the app, too. We've had problems deploying the app to Tomcat at first because we have a dependency to tapestry-jpa (which in turn depends on geronimo-jpa 2.0) and a dependency to hibernate-entitymanager (which in turn depends on hibernate-jpa 2.1), which depend on a different implementation of the JPA spec. The error for the above was ERROR] TapestryIOCModule.RegistryStartup Construction of service RegistryStartup failed: Error invoking service contribution method org.apache.tapestry5.jpa.JpaModule.startupEarly(EntityManagerManager, boolean): javax.persistence.JoinColumn.foreignKey()Ljavax/persistence/ForeignKey; org.apache.tapestry5.ioc.internal.OperationException: Error invoking service contribution method org.apache.tapestry5.jpa.JpaModule.startupEarly(EntityManagerManager, boolean): javax.persistence.JoinColumn.foreignKey()Ljavax/persistence/ForeignKey; We excluded the geronimo-jpa dependency from tapestry-jpa (and removed the dependency to tapestry-test which seems to depend on geronimo-jpa, too) and then we were able to deploy the app. But now we can't visit the app pages because of this error: An unexpected application exception has occurred.Render queue error in BeginRender[Index:layout.if_1]: Failure reading parameter 'test' of component Index:layout.if_1: Exception constructing service 'SomeDAO': Unable to add method javax.persistence.EntityGraph createEntityGraph(java.lang.String) to class $EntityManager_14eaaa049ba: java.io.IOException: invalid constant type: 18 SomeDAO is a service accessing the database, injecting the EntityManager into the class. What are we doing wrong? Our setup: <tapestry-release-version>5.3.8</tapestry-release-version> <jquery-release-version>3.4.2</jquery-release-version> <commons-release-version>1.3.3</commons-release-version> <jetty-release-version>9.2.10.v20150310</jetty-release-version> <hibernate-release-version>4.3.9.Final</hibernate-release-version> <hibernate-validator-release-version>5.1.3.Final</hibernate-validator-release-version> <mysql-connector-release-version>5.1.31</mysql-connector-release-version> At the moment, Tapestry manages the transactions, we use @CommitAfter. Our persistence.xml looks like this: <?xml version="1.0" encoding="UTF-8"?> <persistence xmlns="http://java.sun.com/xml/ns/persistence" version="2.0"> <persistence-unit name="unit" transaction-type="RESOURCE_LOCAL"> <provider>org.hibernate.jpa.HibernatePersistenceProvider</provider> <properties> <property name="javax.persistence.jdbc.driver" value="com.mysql.jdbc.Driver"/> <property name="javax.persistence.jdbc.url" value="jdbc:mysql://our.host:3306/db"/> <property name="javax.persistence.jdbc.user" value="user"/> <property name="javax.persistence.jdbc.password" value="pw"/> <!-- <property name="javax.persistence.schema-generation.database.action" value="update"/> --> <property name="hibernate.connection.provider_class" value="org.hibernate.connection.C3P0ConnectionProvider"/> <property name="hibernate.dialect" value="org.hibernate.dialect.MySQLDialect" /> <property name="hibernate.hbm2ddl.auto" value="create" /> <property name="hibernate.show_sql" value = "true" /> <property name="hibernate.format_sql" value = "true" /> </properties> </persistence-unit> </persistence> Do we have to let Tomcat manage transactions? Do we have to let Tomcat manage the db connections? Do we need to have a Data Source? Regards, Daniel P. --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org For additional commands, e-mail: users-h...@tapestry.apache.org