Liebe Forengemeinde,
ich verzweifle an der Bindung der jtable mit der SQLite Datenbank.
Die Datenbank enthält eine Tabelle Kunden. Inhalt: id als Primary Key und autoincrement.
Name und Vornamen Spalten.
Die Verbindung wird erfolgreich hergestellt. Treiber jdbc
Jtable übernimmt die Spalten und wenn ich den Code ausführe ergibt sich folgende Exception
Bei Verbindung über eine Datenbank via NetbeansDB "localhost" gibt es keine Probleme.
kann mir bitte jemand eine Hilfestellung geben?
Netbeans generiert automatisch eine Kunden.java und eine KundenPK.java.
in der KundenPK.java wird der Fehler angezeigt.
ich verzweifle an der Bindung der jtable mit der SQLite Datenbank.
Die Datenbank enthält eine Tabelle Kunden. Inhalt: id als Primary Key und autoincrement.
Name und Vornamen Spalten.
Die Verbindung wird erfolgreich hergestellt. Treiber jdbc
Jtable übernimmt die Spalten und wenn ich den Code ausführe ergibt sich folgende Exception
Code:
run:
Exception in thread "AWT-EventQueue-0" Local Exception Stack:
Exception [EclipseLink-30005] (Eclipse Persistence Services - 2.5.2.v20140319-9ad6abd): org.eclipse.persistence.exceptions.PersistenceUnitLoadingException
Exception Description: An exception was thrown while searching for persistence archives with ClassLoader: sun.misc.Launcher$AppClassLoader@647e05
Internal Exception: javax.persistence.PersistenceException: Exception [EclipseLink-28018] (Eclipse Persistence Services - 2.5.2.v20140319-9ad6abd): org.eclipse.persistence.exceptions.EntityManagerSetupException
Exception Description: Predeployment of PersistenceUnit [Kunden.sqlitePU] failed.
Internal Exception: Exception [EclipseLink-7249] (Eclipse Persistence Services - 2.5.2.v20140319-9ad6abd): org.eclipse.persistence.exceptions.ValidationException
Exception Description: Entity [class jtablesqlite.Kunden] uses [class jtablesqlite.KundenPK] as embedded ID class whose access-type has been determined as [FIELD]. But [class jtablesqlite.KundenPK] does not define any [FIELD]. It is likely that you have not provided sufficient metadata in your ID class [class jtablesqlite.KundenPK].
at org.eclipse.persistence.exceptions.PersistenceUnitLoadingException.exceptionSearchingForPersistenceResources(PersistenceUnitLoadingException.java:127)
at org.eclipse.persistence.jpa.PersistenceProvider.createEntityManagerFactoryImpl(PersistenceProvider.java:107)
at org.eclipse.persistence.jpa.PersistenceProvider.createEntityManagerFactory(PersistenceProvider.java:177)
at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:79)
at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:54)
at jtablesqlite.Mainframe.initComponents(Mainframe.java:31)
at jtablesqlite.Mainframe.<init>(Mainframe.java:18)
at jtablesqlite.Mainframe$1.run(Mainframe.java:105)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:756)
at java.awt.EventQueue.access$500(EventQueue.java:97)
at java.awt.EventQueue$3.run(EventQueue.java:709)
at java.awt.EventQueue$3.run(EventQueue.java:703)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:726)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
Caused by: javax.persistence.PersistenceException: Exception [EclipseLink-28018] (Eclipse Persistence Services - 2.5.2.v20140319-9ad6abd): org.eclipse.persistence.exceptions.EntityManagerSetupException
Exception Description: Predeployment of PersistenceUnit [Kunden.sqlitePU] failed.
Internal Exception: Exception [EclipseLink-7249] (Eclipse Persistence Services - 2.5.2.v20140319-9ad6abd): org.eclipse.persistence.exceptions.ValidationException
Exception Description: Entity [class jtablesqlite.Kunden] uses [class jtablesqlite.KundenPK] as embedded ID class whose access-type has been determined as [FIELD]. But [class jtablesqlite.KundenPK] does not define any [FIELD]. It is likely that you have not provided sufficient metadata in your ID class [class jtablesqlite.KundenPK].
at org.eclipse.persistence.internal.jpa.EntityManagerSetupImpl.createPredeployFailedPersistenceException(EntityManagerSetupImpl.java:1954)
at org.eclipse.persistence.internal.jpa.EntityManagerSetupImpl.predeploy(EntityManagerSetupImpl.java:1945)
at org.eclipse.persistence.internal.jpa.deployment.JPAInitializer.callPredeploy(JPAInitializer.java:98)
at org.eclipse.persistence.jpa.PersistenceProvider.createEntityManagerFactoryImpl(PersistenceProvider.java:96)
... 20 more
Caused by: Exception [EclipseLink-28018] (Eclipse Persistence Services - 2.5.2.v20140319-9ad6abd): org.eclipse.persistence.exceptions.EntityManagerSetupException
Exception Description: Predeployment of PersistenceUnit [Kunden.sqlitePU] failed.
Internal Exception: Exception [EclipseLink-7249] (Eclipse Persistence Services - 2.5.2.v20140319-9ad6abd): org.eclipse.persistence.exceptions.ValidationException
Exception Description: Entity [class jtablesqlite.Kunden] uses [class jtablesqlite.KundenPK] as embedded ID class whose access-type has been determined as [FIELD]. But [class jtablesqlite.KundenPK] does not define any [FIELD]. It is likely that you have not provided sufficient metadata in your ID class [class jtablesqlite.KundenPK].
at org.eclipse.persistence.exceptions.EntityManagerSetupException.predeployFailed(EntityManagerSetupException.java:230)
... 24 more
Caused by: Exception [EclipseLink-7249] (Eclipse Persistence Services - 2.5.2.v20140319-9ad6abd): org.eclipse.persistence.exceptions.ValidationException
Exception Description: Entity [class jtablesqlite.Kunden] uses [class jtablesqlite.KundenPK] as embedded ID class whose access-type has been determined as [FIELD]. But [class jtablesqlite.KundenPK] does not define any [FIELD]. It is likely that you have not provided sufficient metadata in your ID class [class jtablesqlite.KundenPK].
at org.eclipse.persistence.exceptions.ValidationException.embeddedIdHasNoAttributes(ValidationException.java:2533)
at org.eclipse.persistence.internal.jpa.metadata.accessors.mappings.EmbeddedIdAccessor.process(EmbeddedIdAccessor.java:182)
at org.eclipse.persistence.internal.jpa.metadata.MetadataDescriptor.processMappingAccessors(MetadataDescriptor.java:1518)
at org.eclipse.persistence.internal.jpa.metadata.accessors.classes.ClassAccessor.processMappingAccessors(ClassAccessor.java:1648)
at org.eclipse.persistence.internal.jpa.metadata.accessors.classes.EntityAccessor.processMappingAccessors(EntityAccessor.java:1234)
at org.eclipse.persistence.internal.jpa.metadata.accessors.classes.EntityAccessor.process(EntityAccessor.java:697)
at org.eclipse.persistence.internal.jpa.metadata.MetadataProject.processStage2(MetadataProject.java:1793)
at org.eclipse.persistence.internal.jpa.metadata.MetadataProcessor.processORMMetadata(MetadataProcessor.java:576)
at org.eclipse.persistence.internal.jpa.deployment.PersistenceUnitProcessor.processORMetadata(PersistenceUnitProcessor.java:585)
at org.eclipse.persistence.internal.jpa.EntityManagerSetupImpl.predeploy(EntityManagerSetupImpl.java:1869)
... 22 more
BUILD SUCCESSFUL (total time: 10 seconds)
kann mir bitte jemand eine Hilfestellung geben?
Netbeans generiert automatisch eine Kunden.java und eine KundenPK.java.
in der KundenPK.java wird der Fehler angezeigt.
Java:
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package jtablesqlite;
import java.io.Serializable;
import javax.persistence.Embeddable;
/**
*
* @author pi
*/
@Embeddable
public class KundenPK implements Serializable {
public KundenPK() {
}
public KundenPK() {
}
@Override
public int hashCode() {
int hash = 0;
return hash;
}
@Override
public boolean equals(Object object) {
// TODO: Warning - this method won't work in the case the id fields are not set
if (!(object instanceof KundenPK)) {
return false;
}
KundenPK other = (KundenPK) object;
return true;
}
@Override
public String toString() {
return (ERROR); //Hier ist der Fehler!!! ERROR ist rot unterstrichen
}
}