Problem mit @Entity

moloch

Bekanntes Mitglied
Hallo, bin ein Anfänger auf dem Entity Gebiet und versuche mir ein einfaches Beispiel mit Eclipse zu programmieren.
Ich kriege immer diese Fehlermeldung von Glassfish

Java:
java.lang.IllegalArgumentException: Invalid ejb jar my-ejb.jar: 
it contains zero ejb. A valid ejb jar requires at least one 
session/entity/message driven bean 
although my jar file contains some @Entity annotated classes

Habe auch schon auf der Glassfish Seite gesehen dass andere auch das Problem haben. Es wird gesagt das man die Enity Bean nicht als EJB deklarien soll, da dass bei Version von EJB 3 der Fall war. Ich weiss jedoch nicht wie ich in Eclipse das bewerkstelligen soll. Kann mir da jemand helfen?

Grüße
 
Zuletzt bearbeitet von einem Moderator:

bronks

Top Contributor
Die Fehlermeldung ist m.E. ziemlich beknackt und erfordert mal wieder, daß man sich mit historischem Mist aus J2EE auskennen und die Unterschiede zwischen J2EE und EE5 kennen muß, um damit etwas anfangen zu können.

Einfach erklärt: Du mußt eine Session- oder MessageDriven- oder eine EntityBean in Deinem EjbJar haben. Blöderweise ist die erwähnte "@Entity annotated classes" keine EnterpriseBean und deshalb auch keine EntityBean, sondern nur ein klugsch.....isch genanntes POJO.

Gegenmaßnahme: Lege in Dein EjbJar eine SessionBean und ruh is ... ...
 

moloch

Bekanntes Mitglied
hallo, danke erstmal für deine antwort. also ich habe jetzt eine @Stateless bean per eclipse angelegt (leer also dummy)..
jetzt bekomme ich diese meldung

[Java]
cannot Deploy 01Beispiel_MeineErste_EntityBean
Deployment Error for module: 01Beispiel_MeineErste_EntityBean: Exception while deploying the app : java.lang.NullPointerException%%%EOL%%%
[/Java]

muss ich noch zusätzlich in den vielen xml s was einstellen?

hast du vielleicht einen tip wo man ausführlich und gut beschriebene leichte beispiele findet? ich baue das eigentlich aus einem buch nach (Java EE 5 Masterclass) und hab halt trotzdem diese Problemchen..

Grüße
 

moloch

Bekanntes Mitglied
ok scheint sich was getan zu haben. ohne wirklich zu wissen was ich tue hab ich auf der client seite jetzt alle möglichen libraries von hibernate importiert und jetzt kommt zumindest die meldung das die sql syntax falsch ist... da der sinn von hibernate ja aber eigentlich ist das automatisch richtig zu machen (wenn ich es nicht falsch verstanden habe) verstehe ich das problem wiederrum auch nicht... oje.. dacht ejb 3 soll leicht sein.
 

moloch

Bekanntes Mitglied
ja stimmt, da war noch ein fehler. der dialect war noch falsch.
also zumindest wird die tabelle angelegt schon mal, leider ohne inhalt.. dazu noch ne idee?
danke aber schon mal für deine hilfe
 

moloch

Bekanntes Mitglied
[Java]
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.persistence.Persistence;
import javax.persistence.EntityManager;
import javax.persistence.EntityTransaction;
import javax.persistence.EntityManagerFactory;

import com.sun.grizzly.Context;

import de.st.persistence.bean.Person;


public class Main {



public static void main(String[] args) {

try {
EntityManagerFactory emf = Persistence
.createEntityManagerFactory("masterclass");

EntityManager manager = emf.createEntityManager();

Person person = new Person("Nachname", "Vorname", 28);

manager.persist(person);

manager.close();

emf.close();

} catch (Exception exc) {
exc.printStackTrace();
}
}

}
[/Java]
 

moloch

Bekanntes Mitglied
[Java]
package de.st.persistence.bean;

import java.io.Serializable;

import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;

@Entity
@Table(name = "PERSON")
public class Person implements Serializable{

private static final long serialVersionUID = -3370471288109320024L;

private int id;
private String vorname;
private String nachname;
private Integer alter;


// Standard Konstruktor
public Person() {
}

// Minimaler Konstruktor
public Person(String sNachname) {

this.nachname = sNachname;
}

// Vollständiger Konstruktor
public Person(String sNachname, String sVorname, Integer iAlter) {
this.nachname = sNachname;
this.vorname = sVorname;
this.alter = iAlter;
}

@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "id")
public int getId() {
return id;
}

protected void setId(int id){
this.id = id;
}

@Column(name="nach_name", nullable=false, length=120)
public String getNachname(){
return nachname;
}
public void setNachname(String nachname){
this.nachname = nachname;
}

@Column(name="vor_name", length=120)
public String getVorname(){
return vorname;
}
public void setVorname(String vorname){
this.vorname = vorname;
}

@Override
public String toString() {
return "Person [alter=" + alter + ", id=" + id + ", nachname="
+ nachname + ", vorname=" + vorname + "]";
}



}

[/Java]
 

moloch

Bekanntes Mitglied
der client soll ja die main methode sein. also so ist es in eclipse auch angelegt..ein ejb projekt mit der @Entity
und ein client mit der main... jboss kriegt ja nur die entity

oder versteh ich was falsch
 

bronks

Top Contributor
der client soll ja die main methode sein. also so ist es in eclipse auch angelegt..ein ejb projekt mit der @Entity
und ein client mit der main... jboss kriegt ja nur die entity

oder versteh ich was falsch
Großes Mißverständnis!

Du muß Dir immer vorstellen, daß der Server nicht lokal läuft. An die Entity kommst Du remote nicht ran, denn es ist keine EnterpriseBean. Du mußt lokal, auf dem Server, mit einer SessionBean auf die Entity zugreifen. Diese SessionBean machst Du remote, als Fassade, für den Client verfügbar. Der Client ruft dann eine Methode der SessionBean auf.
 

moloch

Bekanntes Mitglied
hallo, verstehe. also ich habe versucht das beispiel zu erstellen wovon du mir einen link gepostet hast. war eigentlich alles gut verständlich nur den part mit dem jndi einrichten und auf welche db man zugreift also das zu konfigurieren verstehe ich nicht ganz in dem beispiel..
 

moloch

Bekanntes Mitglied
hallo, ich kann erst am montag wieder probieren. jedoch kann ich so schon sagen dass ich das ganze prinzip nicht verstanden habe mit dem jndi, ich meine jetzt nicht wofür er da ist sondern das einstellen über den quellcode und diesen extra dateien die man dafür anlegen soll. und wenn ich jetzt z.b. mysql verwenden möchte, wo stelle ich die zugriffs geschichten ein in dieser -ds.xml`?
 

bronks

Top Contributor
... z.b. mysql verwenden möchte, wo stelle ich die zugriffs geschichten ein in dieser -ds.xml`?
Code:
<datasources>
<local-tx-datasource>
  <jndi-name>jdbc/test</jndi-name>
  <connection-url>jdbc:mysql://localhost/testdatenbank</connection-url>
  <driver-class>com.mysql.jdbc.Driver</driver-class>
  <user-name>root</user-name>
  <password>password</password>
  <metadata>
     <type-mapping>mySQL</type-mapping>
  </metadata>
</local-tx-datasource>
</datasources>
 

moloch

Bekanntes Mitglied
ah ja ok. dazu gibt es auch beispiele im application server...

mal was "anderes" hat jemand einen Tip / link wo man eine grafische ansicht hat über ein n- tier system wo ersichtlich wird welcher container was läd, instanziert etc (webserver z.b. servlet)... das man mal ein überblick über die architektur bekommt..
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
J PC-Start Problem JDBC Connection Datenbankprogrammierung 10
C Problem mit Apache Poi Datenbankprogrammierung 6
N HSQLDB Problem mit Eclipselink in runnable Jar Datenbankprogrammierung 10
P GroupLayout-Problem Datenbankprogrammierung 12
F XAMPP max connections problem Datenbankprogrammierung 6
C MySQL Problem in phpMyAdmin Oberfläche Datenbankprogrammierung 5
C Problem with INSERT.............ON DUPLICATE KEY Datenbankprogrammierung 3
C Problem with insertion in database. Datenbankprogrammierung 7
F Problem mit Hibernate c3p0 Datenbankprogrammierung 2
W Problem mit Insert in zwei Tabellen Datenbankprogrammierung 8
G MySQL Problem mit MySQL verbindung Datenbankprogrammierung 8
A kleines Problem Datenbankprogrammierung 6
T Problem mit Datenbankverbindung Datenbankprogrammierung 22
V Derby/JavaDB updateRow Problem Datenbankprogrammierung 0
G MySQL Java Problem: Nullpointer Exception obwohl Daten vorhanden sind? Datenbankprogrammierung 2
Nuiton EmbeddedDriver Problem Datenbankprogrammierung 6
A MongoDB Passwort Problem Datenbankprogrammierung 0
O HSQLDB Hibernate Criteria Problem Datenbankprogrammierung 3
F MySQL JDBC Problem Datenbankprogrammierung 5
Anfänger2011 Datenbankstruktur/aufbau (theoretisches Problem) Datenbankprogrammierung 5
M Derby/JavaDB Drop Database problem Datenbankprogrammierung 3
M Derby/JavaDB NOT LIKE problem Datenbankprogrammierung 19
N HSQLDB Problem mit EntityManager Datenbankprogrammierung 7
B MySQL JPAContainer Problem Datenbankprogrammierung 4
K Eclipse Apache Derby Treiber Problem Datenbankprogrammierung 4
C Problem oder Denkfehler mit H2-Database Datenbankprogrammierung 3
E Wie kann man das Problem mit der BLOB-Spalte lösen? Datenbankprogrammierung 1
M Problem mit jcouchdb und CouchDB - UTF8 kein gültiger Zeichentyp Datenbankprogrammierung 4
T MySQL Problem mit Datenbankanbindung Datenbankprogrammierung 4
M INSERT-Problem = integrity constraint violation: foreign key no parent Datenbankprogrammierung 5
P SQL Query Problem Datenbankprogrammierung 14
A MySQL Problem bei Tabelle ausgeben Datenbankprogrammierung 3
Q MySQL JDBC-Treiber Problem Datenbankprogrammierung 2
B SQLite Problem bei Planung der Datenbank [Jeopardy] Datenbankprogrammierung 3
A Problem mit dem Import und Export von Bildern Datenbankprogrammierung 4
P Oracle Problem mit Umlauten Datenbankprogrammierung 9
A Problem mit Create-Statement Datenbankprogrammierung 9
D Problem mit COLUMN_IDENTIFIERS Datenbankprogrammierung 8
Bluedaishi MySQL Abfrage Problem :-) Datenbankprogrammierung 21
M Problem mit mehreren Datasourcen Datenbankprogrammierung 3
R Resultset.last() Problem Datenbankprogrammierung 12
M Problem GroupBy Datenbankprogrammierung 3
S CURRENT_DATE problem Datenbankprogrammierung 2
M Problem mt JPA Id-Generators Datenbankprogrammierung 18
Gossi Oracle Problem mit group by... Datenbankprogrammierung 22
M MySQL SQL Abfrage Problem Datenbankprogrammierung 6
R MS-SQL Express Login-Problem Datenbankprogrammierung 8
P Lazy-Fetchig und Session-Problem mit Hibernate Datenbankprogrammierung 4
N HSQLDB Problem beim Treiberladen im Jar Datenbankprogrammierung 6
M Problem beim Erstellen einer Query Datenbankprogrammierung 7
C Hibernate ManyToMany zusammengesetzter Primärschlüssel, problem. Datenbankprogrammierung 3
M Problem mit HQL Syntax Datenbankprogrammierung 5
K Db4o Delete Problem Datenbankprogrammierung 11
Mike90 Deadlock/Lock Problem Datenbankprogrammierung 4
T Access 32bit on Win7 64Bit ODBC Problem Datenbankprogrammierung 1
C unverständliches DB Problem (Es ist kein temporärer Systemtabellenbereich mit einer ausreichenden..) Datenbankprogrammierung 5
S ODBC Treiber Problem/oder unvermögen Datenbankprogrammierung 18
J Problem bei Boolean in PreparedStatement Datenbankprogrammierung 5
C MySQL Problem mit UPDATE Abfrage Datenbankprogrammierung 13
C Problem mit SQL-Abfrage Datenbankprogrammierung 5
K Problem mit Datenbankverbindung via Eclipse Datenbankprogrammierung 2
A Problem mit Eintragen von Daten in eine Datenbank mittels DAO Datenbankprogrammierung 4
S Oracle Problem mit PreparedStatement.setString(1,"str") Datenbankprogrammierung 10
B MySQL Problem mit Datenbankanbindung an MySQL Datenbankprogrammierung 2
N Problem bei Erstellung eines Index Datenbankprogrammierung 12
C Hibernate Property-Problem Datenbankprogrammierung 5
J MyBatis - Update Problem Datenbankprogrammierung 4
S JPA: Problem mit Update von Daten Datenbankprogrammierung 7
c_sidi90 Hibernate Problem Table doesnt excist Datenbankprogrammierung 8
M Problem mit JPA - OneToMany-Relation Datenbankprogrammierung 3
I Hibernate: Composite Foreign Key Problem Datenbankprogrammierung 14
S JPA OptimisticLocking Problem Datenbankprogrammierung 11
I Derby/JavaDB Problem mit Befüllung von Tabelle Datenbankprogrammierung 7
JavaKaffee Derby/JavaDB Quartz-WebAnwendung - Connection/Treiber Problem Datenbankprogrammierung 47
I Problem mit ResultSet Datenbankprogrammierung 2
L Excel in MySQL importieren Problem Datenbankprogrammierung 5
S Problem beim Anlegen einer Tabelle Datenbankprogrammierung 5
R MS Access mit Java Problem mit Update Statment Datenbankprogrammierung 13
S MySQL Problem mit SELECT bzw encoding Datenbankprogrammierung 4
T Problem beim schreiben von daten Datenbankprogrammierung 4
M MySQL getConnection - Verbindung Problem Datenbankprogrammierung 2
K Hibernate + MySQL Problem... Datenbankprogrammierung 2
I MySQL MySQL – Proxy Problem Datenbankprogrammierung 4
M Problem mit Hibernate und Named Query Datenbankprogrammierung 1
M Problem mit Hibernate und Access Datenbankprogrammierung 9
C firebird problem Datenbankprogrammierung 5
F Problem mit Datenbankabfrage Datenbankprogrammierung 7
K SQL Problem mit Date Datenbankprogrammierung 3
jeppi MySQL Design-Problem: DB-Verbindung herstellen und halten - JdbcRowSet / Idle-Timeout? Datenbankprogrammierung 9
J sql abfrage ... Problem mit Datumswert Datenbankprogrammierung 3
G MySQL Connection Problem Datenbankprogrammierung 3
O MySQL Problem mit Umlauten?! Datenbankprogrammierung 2
E Hibernate Problem bei bidirektionaler 1:n Verbindung Datenbankprogrammierung 2
D MySQL Problem beim einfügen von Double-Zahlen Datenbankprogrammierung 4
M Oracle Problem mit Resultset Datenbankprogrammierung 11
T Problem bei Zugriff auf Access Datenbank Datenbankprogrammierung 7
W jpmdbc Problem -Beispiel funktioniert nicht Datenbankprogrammierung 9
W Verständnis-Problem JPA Grundlagen Datenbankprogrammierung 5
M Problem Array in BLOB-Feld in DerbyDB zu speichern Datenbankprogrammierung 5
M JPA-Persist Problem Datenbankprogrammierung 2

Ähnliche Java Themen

Neue Themen


Oben