EJB und Java EE - No Persistence provider

Hallo Leute,

ich habe ein Problem, dass mich fast in den Wahnsinn treibt.

(Habe schon viel danach in google geschaut, auch etwas gefunden, aber keinen Nutzen
daraus gezogen)

Mittels EJB und einem GlassfishServer möchte ich eine Abfrage von meiner Datenbanktabelle machen, allerdings erscheint immer eine Exception beim ausführen meiner Datei, in welcher die Abfrage stattfindet.

Als Persistenzverfahren habe ich TopLink gewählt.

Der Fehler lautet:

Java:
[TopLink Info]: 2010.08.09 05:22:10.390--ServerSession(28571894)--TopLink, version: Oracle TopLink Essentials - 2.0.1 (Build b09d-fcs (12/06/2007))
Exception in thread "main" javax.persistence.PersistenceException: Exception [TOPLINK-7060] (Oracle TopLink Essentials - 2.0.1 (Build b09d-fcs (12/06/2007))): oracle.toplink.essentials.exceptions.ValidationException
Exception Description: Cannot acquire data source [Test2].
Internal Exception: javax.naming.NoInitialContextException: 
        ... 11 more

Meine persistence.xml

(Test2 ist meine Datenbankverbindung die ich im Wizard ausgewählt habe, dort steht Name, Passwort, IP der DB drinnen)

[XML]<?xml version="1.0" encoding="UTF-8"?>
<persistence version="1.0" xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd">
<persistence-unit name="TrafficMonitor-ejbPU" transaction-type="JTA">
<provider>oracle.toplink.essentials.PersistenceProvider</provider>
<jta-data-source>Test2</jta-data-source>
<class>_ejb.entities.DBuser</class>
<class>_ejb.entities.Ip</class>
<class>_ejb.entities.Vert</class>
<class>_ejb.entities.Vertrart</class>
<exclude-unlisted-classes>false</exclude-unlisted-classes>
<properties>
<property name="toplink.ddl-generation" value="create-tables"/>
</properties>
</persistence-unit>
</persistence>
[/XML]

Ich wäre euch sehr dankbar, falls ihr mir helfen könntet.

LG,

steph
 
Zuletzt bearbeitet:
Hi,

du hast in deiner persistence.xml:

[XML]<property name="toplink.ddl-generation" value="create-tables"/>[/XML]

angegeben. Werden die Tabellen denn auch angelegt, oder sind die schon vorhanden?
Klingt für mich irgendwie nach einem Rechte-Problem, kann mich aber auch irren.
 
Guten Abend,

vielen Dank für die Antworten.

Also die Tabellen hab ich im QueryBrowser bereits zuvor erstellt.
Mir geht es sowieso nur ums lesen, also ums abfragen von Inhalten.

Hmm, aber was kann ich dagegen tun rail?
 
In der Glassfish-Admin-Console gibt es einen Punkt "JDBC". Darunter kann man JDBC-Connection-Pools
und DB-Verbindungen anlegen. Letztere muss den Namen haben, den du durch:

[XML]<jta-data-source>Test2</jta-data-source>[/XML]

angegeben hast. Dann sollte es gehen. Ich vergesse diesen Schritt auch immer, deshalb bin ich
auch nicht sofort auf die Fehlerursache gekommen 😳 (Danke, raiL).
 

Zurück
Oben