Bonjour,
Pour tests, j'ai une petite application qui utilise un Session Bean sans problème.
Dès que j'utilise dans cette application un Entity Bean, au démarrage du serveur JBoss j'obtiens l'exception suivante :
La classe Entity Bean est la suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 java.lang.RuntimeException: Illegal @PersistenceUnit on javax.persistence.EntityManager com.MonEJBBean.persistance :There is no default persistence unit in this deployment.
... et le fichier persistence.xml est le suivant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49 package com; import java.io.Serializable; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; import javax.persistence.Id; import javax.persistence.Table; @Entity @Table(name="MonEntite") // en option public class MonEntite implements Serializable { @Id @GeneratedValue(strategy=GenerationType.AUTO) private int id; private String name; private static final long serialVersionUID = 1L; public MonEntite() { super(); } public MonEntite(String name) { super(); setName(name); } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getId() { return this.id; } public void setId(int id) { this.id = id; } }
La base de données est une base MySQL en local et l'accès à la table jta est correcte à partir de phpmyadmin et à partir de eclipse.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 <?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="jpa" transaction-type="RESOURCE_LOCAL"> <provider>org.hibernate.ejb.HibernatePersistence</provider> <properties> <property name="hibernate.archive.autodetection" value="class, hbm" /> <property name="hibernate.connection.driver_class" value="com.mysql.jdbc.Driver" /> <property name="hibernate.connection.url" value="jdbc:mysql://localhost:3306/jpa" /> <property name="hibernate.connection.username" value="root" /> <property name="hibernate.connection.password" value="root" /> <property name="hibernate.dialect" value="org.hibernate.dialect.MySQL5InnoDBDialect" /> </properties> </persistence-unit> </persistence>
Comment régler ce problème que je cherche depuis de nombreuses heures déjà.
A+![]()
Partager