Hallo,
bräuchte da mal Hilfe.. habe ein seam-Projekt, mit EJBs und JBoss, aber brauche nun innerhalb dieses Projektes ein zusätzliches Servlet (welches keinen Zugriff auf irgendwelche EJBs braucht, einfach ein stinknormales Servlet, was auf die Datenbank zugreift und Requests beantwortet). In diesem Servlet ist ebenfalls Zugriff auf die Datenbank per JPA (wie es bei seam so üblich ist, wird hibernate verwendet) notwendig, aber ich scheitere daran, einen EntityManager zu erzeugen. Ich dachte mir: Am einfachsten wäre es, wenn das Servlet eine eigene, vom Rest der Applikation unabhängige, EntityManagerFactory hat. Wenn ich jedoch als Persistence Unit für diese die gleiche wie für den Rest des Projekts verwendet, meckert hibernate
("javax.persistence.PersistenceException: org.hibernate.HibernateException: The chosen transaction strategy requires access to the JTA TransactionManager
").
Nun wäre es sicher klein Problem, eine zweite PU zu definieren, die auf die gleiche Datenbank zugreift. Aber dies wie gehabt zu tun durch entsprechende Einträge in der persistence.xml-Datei scheitert auch. Dann bekomme ich die Meldung
java.lang.RuntimeException: You have not defined a non-jta-data-source for a RESOURCE_LOCAL enabled persistence context named: pu2
Ich verstehe diese Meldungen zwar vage aber was ich nun tun muss damit es funktioniert ist mir unklar. Kann jemand helfen?
Gruß+Danke
Jan
bräuchte da mal Hilfe.. habe ein seam-Projekt, mit EJBs und JBoss, aber brauche nun innerhalb dieses Projektes ein zusätzliches Servlet (welches keinen Zugriff auf irgendwelche EJBs braucht, einfach ein stinknormales Servlet, was auf die Datenbank zugreift und Requests beantwortet). In diesem Servlet ist ebenfalls Zugriff auf die Datenbank per JPA (wie es bei seam so üblich ist, wird hibernate verwendet) notwendig, aber ich scheitere daran, einen EntityManager zu erzeugen. Ich dachte mir: Am einfachsten wäre es, wenn das Servlet eine eigene, vom Rest der Applikation unabhängige, EntityManagerFactory hat. Wenn ich jedoch als Persistence Unit für diese die gleiche wie für den Rest des Projekts verwendet, meckert hibernate
("javax.persistence.PersistenceException: org.hibernate.HibernateException: The chosen transaction strategy requires access to the JTA TransactionManager
").
Nun wäre es sicher klein Problem, eine zweite PU zu definieren, die auf die gleiche Datenbank zugreift. Aber dies wie gehabt zu tun durch entsprechende Einträge in der persistence.xml-Datei scheitert auch. Dann bekomme ich die Meldung
java.lang.RuntimeException: You have not defined a non-jta-data-source for a RESOURCE_LOCAL enabled persistence context named: pu2
Ich verstehe diese Meldungen zwar vage aber was ich nun tun muss damit es funktioniert ist mir unklar. Kann jemand helfen?
Gruß+Danke
Jan