[EclipseLink] [Derby] [J2SE] Pas de sauvegarde sur persist
Bonjour,
Mon problème est simple c'est que j'ai pas d'objet qui soit crée dans la base de donées lorsque que je fais un persiste
J'ai mon fichier persistence.xml
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| <?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="pictureViewerObject" transaction-type="RESOURCE_LOCAL">
<provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
<class>fr.pictureViewer.bean.CD</class>
<properties>
<property name="eclipselink.jdbc.url" value="jdbc:derby:derbyDB/pictureViewer;create=true"/>
<property name="eclipselink.jdbc.driver" value="org.apache.derby.jdbc.ClientDriver"/>
<property name="eclipselink.ddl-generation" value="drop-and-create-tables"/>
<property name="eclipselink.ddl-generation.output-mode" value="database"/>
</properties>
</persistence-unit>
</persistence> |
J'ai mon bean
Code:
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 50 51 52 53 54 55 56 57 58 59 60
| package fr.pictureViewer.bean;
import java.io.Serializable;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;
/**
* Bean CD. Représente un CD dans la base de donnée.
* @author angelsafrania
* @version 1.0
* @since 1.0
*/
@Entity
@Table(name = "CD")
public final class CD implements Serializable {
private static final long serialVersionUID = 6430520189319753432L;
@Column(name = "nom", nullable = false, unique = true)
private String name;
@Id
@Column(name = "id")
private Integer id;
public CD() {
this((String) null);
}
public CD(final String namE) {
this(null, namE);
}
public CD(final Integer iD) {
this(iD, null);
}
public CD(final Integer iD, final String namE) {
this.setId(iD);
this.setName(namE);
}
public void setName(final String namE) {
if (namE == null) {
this.name = "";
} else {
this.name = namE;
}
}
public String getName() {
return this.name;
}
public void setId(final Integer iD) {
if (iD != null && iD.intValue() < 0) {
throw new IllegalArgumentException(
"Un id ne peut être inférieur à 0");
}
this.id = iD;
}
public Integer getId() {
return this.id;
}
} |
Et mon main
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
| public static void main(final String[] args) {
EntityManagerFactory factory =
Persistence.createEntityManagerFactory(
"pictureViewerObject");
EntityManager manager = factory.createEntityManager();
CD cd = new CD();
cd.setName("exemple");
manager.persist(cd);
System.out.println(cd.getId());
System.out.println(
manager.createQuery("SELECT c FROM CD c")
.getResultList().size());
} |
Et j'obtiens les traces suivantes dans la console :
Code:
1 2 3
| [EL Info]: 2009-07-04 14:47:35.506--ServerSession(24763620)--EclipseLink, version: Eclipse Persistence Services - 1.1.2.v20090612-r4475
[EL Info]: 2009-07-04 14:47:36.695--ServerSession(24763620)--file:/*****/build/classes/-pictureViewerObject login successful
null |
Donc il semble que j'ai aucun problème dans la création de l'entitymanager, les requêtes semble passer, mais le persist ne veux pas fonctionné...
Es-ce que quelqu'un aurait une idée sur le problème que je rencontre ?