jndi Datenbankverbindung mit jpa und eclipselink

8

Ich versuche eine Datenbankverbindung in Java mit JNDI in Kombination mit eclipseLink / JPA auf Tomcat 5.5 einzurichten. Ich habe die JNDI-Ressource bereits in web.xml und context.xml konfiguriert.

Die db-Verbindung funktioniert mit JNDI, ohne JPA und eclipseLink zu verwenden. Nach der Konfiguration der Datei persistence.xml für eclipseLink habe ich die folgende Ausnahme erhalten:

Ich kann die Datei persistence.xml nicht richtig konfigurieren, um die JNDI-Datenquelle für die db-Verbindung zu verwenden.

Die Ausnahme

%Vor%

web.xml

%Vor%

context.xml

%Vor%

persistence.xml

%Vor%     
MartinVonMartinsgrün 20.09.2010, 13:04
quelle

5 Antworten

9

Fügen Sie Ihrem Projekt einfach die Klasse JPAEclipseLinkSessionCustomizer hinzu und konfigurieren Sie die Datei persistence.xml als siehe unten:

%Vor%

Sie benötigen diese Problemumgehung nur für Apache Tomcat.

    
skanne 21.09.2010, 08:36
quelle
1

Legen Sie die URL der Datenquelle auf "jdbc / myDs" und <non-jta-data-source>jdbc/myDs</non-jta-data-source>

fest     
Gordon Yorke 20.09.2010 13:22
quelle
1

Ich hoffe, Sie konnten das Problem mit den gegebenen Kommentaren lösen ...

Ich repariere es, indem ich eine Eigenschaft "javax.persistence.nonJtaDataSource" mit dem gleichen Wert wie das Element non-jta-data-source

hinzufüge     
JuanjoC 28.02.2012 15:02
quelle
0

Ich denke, Sie müssen einen Workaround für die Ausnahme javax.naming.NamingException: This context must be accessed throught a java: URL programmieren, wie in Ссылка

Siehe auch diesen Link, der durch das Problem debuggt

Ссылка

    
JoseK 21.09.2010 05:46
quelle
0

Jahr 2015 Aktualisierung: Ich bin mir nicht sicher, Eclipselink SessionCustomizer ist erforderlich. In meinem Test arbeiten alle ohne (Tomcat 7.x, Java 7.x, Eclipselink 2.4.x).

Einige ältere Materialien deuten auf ein spezifisches Problem mit Tomcat 5/6 und eine spezielle Lösung hin.

    
Jacek Cz 22.08.2015 09:25
quelle

Tags und Links