MySQL probleme beim "Generate Tables from Entities"

Maghrebi

Mitglied
Hi Leute,

anbei habe ich ein Screenshot hochgeladen. Ich sitze mittlerweile seit einer Woche daran und weiß nicht wie ich diesen Fehler beheben kann.

Wäre sehr dankbar, wenn ihr mir zumindest einen Anhaltspunkt geben könntet :D
 

Anhänge

  • Unbenannt.jpg
    Unbenannt.jpg
    121,2 KB · Aufrufe: 40

mla.rue

Bekanntes Mitglied
Du machst lieber einen Screenshot und lädst den hoch, statt per einfachem Copy&Paste die Fehlermeldung in den Thread zu packen? Manche Leute haben wahrlich viel Zeit :)

Machsmal bitte und den dazugehörtigen Code womöglich auch, dann wird dir schneller geholfen. Ich kann auf dem Screenshot jedenfalls Nichts entziffern.
 

mla.rue

Bekanntes Mitglied
[OT]Buchstaben zu klein, verschwommen, es ist unsauber und unschön zu lesen. Ich hatte bereits nach dem zweiten Wort keinen Nerv mehr weiter auf den Screenshot zu schauen[/OT]
 

Maghrebi

Mitglied
sorry

PHP:
Runtime Exceptions: 
---------------------------------------------------------

Exception in thread "main" javax.persistence.PersistenceException: Exception [EclipseLink-28019] (Eclipse Persistence Services - 2.4.1.v20121003-ad44345): org.eclipse.persistence.exceptions.EntityManagerSetupException
Exception Description: Deployment of PersistenceUnit [Auftrag_1_0] failed. Close all factories for this PersistenceUnit.
Internal Exception: Exception [EclipseLink-0] (Eclipse Persistence Services - 2.4.1.v20121003-ad44345): org.eclipse.persistence.exceptions.IntegrityException
Descriptor Exceptions: 
---------------------------------------------------------

Exception [EclipseLink-1] (Eclipse Persistence Services - 2.4.1.v20121003-ad44345): org.eclipse.persistence.exceptions.DescriptorException
Exception Description: The attribute [hatGeliefert] is not declared as type ValueHolderInterface, but its mapping uses indirection.
Mapping: org.eclipse.persistence.mappings.ManyToManyMapping[hatGeliefert]
Descriptor: RelationalDescriptor(auftragsverwaltung.i.geschaeftspartner.Lieferant --> [DatabaseTable(auftrag_1_0.lieferant)])

Exception [EclipseLink-1] (Eclipse Persistence Services - 2.4.1.v20121003-ad44345): org.eclipse.persistence.exceptions.DescriptorException
Exception Description: The attribute [telefonL] is not declared as type ValueHolderInterface, but its mapping uses indirection.
Mapping: org.eclipse.persistence.mappings.OneToManyMapping[telefonL]
Descriptor: RelationalDescriptor(auftragsverwaltung.i.geschaeftspartner.Geschaeftspartner --> [DatabaseTable(auftrag_1_0.geschaeftspartner)])

Exception [EclipseLink-1] (Eclipse Persistence Services - 2.4.1.v20121003-ad44345): org.eclipse.persistence.exceptions.DescriptorException
Exception Description: The attribute [auftraege] is not declared as type ValueHolderInterface, but its mapping uses indirection.
Mapping: org.eclipse.persistence.mappings.ManyToManyMapping[auftraege]
Descriptor: RelationalDescriptor(auftragsverwaltung.i.geschaeftspartner.Kunde --> [DatabaseTable(auftrag_1_0.kunde)])

Exception [EclipseLink-1] (Eclipse Persistence Services - 2.4.1.v20121003-ad44345): org.eclipse.persistence.exceptions.DescriptorException
Exception Description: The attribute [auftragspositionen] is not declared as type ValueHolderInterface, but its mapping uses indirection.
Mapping: org.eclipse.persistence.mappings.OneToManyMapping[auftragspositionen]
Descriptor: RelationalDescriptor(auftragsverwaltung.i.auftrag.Auftrag --> [DatabaseTable(auftrag_1_0.auftrag)])

Exception [EclipseLink-1] (Eclipse Persistence Services - 2.4.1.v20121003-ad44345): org.eclipse.persistence.exceptions.DescriptorException
Exception Description: The attribute [kommtVorIn] is not declared as type ValueHolderInterface, but its mapping uses indirection.
Mapping: org.eclipse.persistence.mappings.ManyToManyMapping[kommtVorIn]
Descriptor: RelationalDescriptor(auftragsverwaltung.i.artikel.Artikel --> [DatabaseTable(auftrag_1_0.artikel)])

Runtime Exceptions: 
---------------------------------------------------------

	at org.eclipse.persistence.internal.jpa.EntityManagerSetupImpl.createDeployFailedPersistenceException(EntityManagerSetupImpl.java:616)
	at org.eclipse.persistence.internal.jpa.EntityManagerSetupImpl.deploy(EntityManagerSetupImpl.java:596)
	at org.eclipse.persistence.internal.jpa.EntityManagerFactoryDelegate.getDatabaseSession(EntityManagerFactoryDelegate.java:186)
	at org.eclipse.persistence.internal.jpa.EntityManagerFactoryDelegate.createEntityManagerImpl(EntityManagerFactoryDelegate.java:278)
	at org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.createEntityManagerImpl(EntityManagerFactoryImpl.java:304)
	at org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:282)
	at org.eclipse.jpt.jpa.eclipselink.core.ddlgen.Main.perform(Main.java:85)
	at org.eclipse.jpt.jpa.eclipselink.core.ddlgen.Main.execute(Main.java:76)
	at org.eclipse.jpt.jpa.eclipselink.core.ddlgen.Main.main(Main.java:63)
Caused by: Exception [EclipseLink-28019] (Eclipse Persistence Services - 2.4.1.v20121003-ad44345): org.eclipse.persistence.exceptions.EntityManagerSetupException
Exception Description: Deployment of PersistenceUnit [Auftrag_1_0] failed. Close all factories for this PersistenceUnit.
Internal Exception: Exception [EclipseLink-0] (Eclipse Persistence Services - 2.4.1.v20121003-ad44345): org.eclipse.persistence.exceptions.IntegrityException
Descriptor Exceptions: 
---------------------------------------------------------

Exception [EclipseLink-1] (Eclipse Persistence Services - 2.4.1.v20121003-ad44345): org.eclipse.persistence.exceptions.DescriptorException
Exception Description: The attribute [hatGeliefert] is not declared as type ValueHolderInterface, but its mapping uses indirection.
Mapping: org.eclipse.persistence.mappings.ManyToManyMapping[hatGeliefert]
Descriptor: RelationalDescriptor(auftragsverwaltung.i.geschaeftspartner.Lieferant --> [DatabaseTable(auftrag_1_0.lieferant)])

Exception [EclipseLink-1] (Eclipse Persistence Services - 2.4.1.v20121003-ad44345): org.eclipse.persistence.exceptions.DescriptorException
Exception Description: The attribute [telefonL] is not declared as type ValueHolderInterface, but its mapping uses indirection.
Mapping: org.eclipse.persistence.mappings.OneToManyMapping[telefonL]
Descriptor: RelationalDescriptor(auftragsverwaltung.i.geschaeftspartner.Geschaeftspartner --> [DatabaseTable(auftrag_1_0.geschaeftspartner)])

Exception [EclipseLink-1] (Eclipse Persistence Services - 2.4.1.v20121003-ad44345): org.eclipse.persistence.exceptions.DescriptorException
Exception Description: The attribute [auftraege] is not declared as type ValueHolderInterface, but its mapping uses indirection.
Mapping: org.eclipse.persistence.mappings.ManyToManyMapping[auftraege]
Descriptor: RelationalDescriptor(auftragsverwaltung.i.geschaeftspartner.Kunde --> [DatabaseTable(auftrag_1_0.kunde)])

Exception [EclipseLink-1] (Eclipse Persistence Services - 2.4.1.v20121003-ad44345): org.eclipse.persistence.exceptions.DescriptorException
Exception Description: The attribute [auftragspositionen] is not declared as type ValueHolderInterface, but its mapping uses indirection.
Mapping: org.eclipse.persistence.mappings.OneToManyMapping[auftragspositionen]
Descriptor: RelationalDescriptor(auftragsverwaltung.i.auftrag.Auftrag --> [DatabaseTable(auftrag_1_0.auftrag)])

Exception [EclipseLink-1] (Eclipse Persistence Services - 2.4.1.v20121003-ad44345): org.eclipse.persistence.exceptions.DescriptorException
Exception Description: The attribute [kommtVorIn] is not declared as type ValueHolderInterface, but its mapping uses indirection.
Mapping: org.eclipse.persistence.mappings.ManyToManyMapping[kommtVorIn]
Descriptor: RelationalDescriptor(auftragsverwaltung.i.artikel.Artikel --> [DatabaseTable(auftrag_1_0.artikel)])

Runtime Exceptions: 
---------------------------------------------------------

	at org.eclipse.persistence.exceptions.EntityManagerSetupException.deployFailed(EntityManagerSetupException.java:229)
	... 9 more
Caused by: Exception [EclipseLink-0] (Eclipse Persistence Services - 2.4.1.v20121003-ad44345): org.eclipse.persistence.exceptions.IntegrityException
Descriptor Exceptions: 
---------------------------------------------------------

Exception [EclipseLink-1] (Eclipse Persistence Services - 2.4.1.v20121003-ad44345): org.eclipse.persistence.exceptions.DescriptorException
Exception Description: The attribute [hatGeliefert] is not declared as type ValueHolderInterface, but its mapping uses indirection.
Mapping: org.eclipse.persistence.mappings.ManyToManyMapping[hatGeliefert]
Descriptor: RelationalDescriptor(auftragsverwaltung.i.geschaeftspartner.Lieferant --> [DatabaseTable(auftrag_1_0.lieferant)])

Exception [EclipseLink-1] (Eclipse Persistence Services - 2.4.1.v20121003-ad44345): org.eclipse.persistence.exceptions.DescriptorException
Exception Description: The attribute [telefonL] is not declared as type ValueHolderInterface, but its mapping uses indirection.
Mapping: org.eclipse.persistence.mappings.OneToManyMapping[telefonL]
Descriptor: RelationalDescriptor(auftragsverwaltung.i.geschaeftspartner.Geschaeftspartner --> [DatabaseTable(auftrag_1_0.geschaeftspartner)])

Exception [EclipseLink-1] (Eclipse Persistence Services - 2.4.1.v20121003-ad44345): org.eclipse.persistence.exceptions.DescriptorException
Exception Description: The attribute [auftraege] is not declared as type ValueHolderInterface, but its mapping uses indirection.
Mapping: org.eclipse.persistence.mappings.ManyToManyMapping[auftraege]
Descriptor: RelationalDescriptor(auftragsverwaltung.i.geschaeftspartner.Kunde --> [DatabaseTable(auftrag_1_0.kunde)])

Exception [EclipseLink-1] (Eclipse Persistence Services - 2.4.1.v20121003-ad44345): org.eclipse.persistence.exceptions.DescriptorException
Exception Description: The attribute [auftragspositionen] is not declared as type ValueHolderInterface, but its mapping uses indirection.
Mapping: org.eclipse.persistence.mappings.OneToManyMapping[auftragspositionen]
Descriptor: RelationalDescriptor(auftragsverwaltung.i.auftrag.Auftrag --> [DatabaseTable(auftrag_1_0.auftrag)])

Exception [EclipseLink-1] (Eclipse Persistence Services - 2.4.1.v20121003-ad44345): org.eclipse.persistence.exceptions.DescriptorException
Exception Description: The attribute [kommtVorIn] is not declared as type ValueHolderInterface, but its mapping uses indirection.
Mapping: org.eclipse.persistence.mappings.ManyToManyMapping[kommtVorIn]
Descriptor: RelationalDescriptor(auftragsverwaltung.i.artikel.Artikel --> [DatabaseTable(auftrag_1_0.artikel)])

Runtime Exceptions: 
---------------------------------------------------------

	at org.eclipse.persistence.internal.sessions.DatabaseSessionImpl.initializeDescriptors(DatabaseSessionImpl.java:638)
	at org.eclipse.persistence.internal.sessions.DatabaseSessionImpl.initializeDescriptors(DatabaseSessionImpl.java:574)
	at org.eclipse.persistence.internal.sessions.DatabaseSessionImpl.initializeDescriptors(DatabaseSessionImpl.java:533)
	at org.eclipse.persistence.internal.sessions.DatabaseSessionImpl.postConnectDatasource(DatabaseSessionImpl.java:777)
	at org.eclipse.persistence.internal.sessions.DatabaseSessionImpl.loginAndDetectDatasource(DatabaseSessionImpl.java:722)
	at org.eclipse.persistence.internal.jpa.EntityManagerFactoryProvider.login(EntityManagerFactoryProvider.java:215)
	at org.eclipse.persistence.internal.jpa.EntityManagerSetupImpl.deploy(EntityManagerSetupImpl.java:542)
	... 7 more
 

KSG9|sebastian

Top Contributor
Öhm, im Screenshot ist jetzt eine @ManyToOne zu sehen mit ner anderen Fehlermeldung?!

Poste doch mal bitte

1. die betroffenen Klassen
2. die Compilefehler

Dass es zur Laufzeit kracht ist ja klar, der Compiler meckert ja schon..
 

Maghrebi

Mitglied
Die Fehler sind in den Klassen alle gleich, deswegen werde ich nur eine Fehlermeldung posten.

Klasse Lieferant:

Java:
package auftragsverwaltung.i.geschaeftspartner;
import auftragsverwaltung.i.Fehlermeldung;
import auftragsverwaltung.i.auftrag.*;
import auftragsverwaltung.i.artikel.*;

import javax.persistence.*;

import java.util.*;

/**
 * <P>Anwendungsklasse:
 * <BR>Lieferanten verwalten.
 * 
 * @author  
 *
 */

@Entity
@Table (schema = "auftrag_1_0", name = "lieferant" )
public class Lieferant {
	
	/*
	 * @Id als Primärschlüssel
	 */
	@Id @GeneratedValue (strategy = GenerationType.IDENTITY) 
	@Column (nullable = false, unique = true, name = "LIEFERANT_ID" )
	private int id;	
	
	/**
	 * @super Geschaeftspartner
	 */
	@OneToOne (cascade = { CascadeType.ALL },fetch = FetchType.EAGER )
	@JoinColumn (nullable = false)
	private Geschaeftspartner gp;
	
	/**
	 * <P>Lieferant verweist auf einen Bankkonto
	 */
	@OneToOne (mappedBy = "lieferant", cascade = { CascadeType.ALL },fetch = FetchType.EAGER )
	private Bankkonto bankverbindung;
	
	/**
	 * <P< Lieferant verweist auf mehrere Handelswaren
	 */
	@OneToMany (mappedBy = "lieferant", cascade = { CascadeType.ALL },fetch = FetchType.LAZY)
	private ArrayList<Handelsware> hatGeliefert;

	/**
	 * @return id
	 */
	public int getId() {
		return id;
	}

	/**
	 * @param set id
	 */
	public void setId(int id) {
		this.id = id;
	}

	public Lieferant (){
		this.id = id;
	}
	
	/**
	* Kopierkonstruktor
	*/
	public Lieferant( Lieferant lieferant )
	{
		this.id = lieferant.id;
	}

	public Bankkonto getBankverbindung() {
		return bankverbindung;
	}

	public void setBankverbindung(Bankkonto bankverbindung) {
		this.bankverbindung = bankverbindung;
	}
	
	public ArrayList<Handelsware> getHatGeliefert() {
		if(hatGeliefert == null)
		{
			hatGeliefert = new ArrayList<Handelsware>();
		}
		return hatGeliefert;
	}

	public void setTelefon(ArrayList<Handelsware> hatGeliefert) {
		this.hatGeliefert = hatGeliefert;
	}
	
	public void verweiskopien( Lieferant lieferant ){
		
		copyBankkonto( lieferant.bankverbindung );
		copyHandelsware( lieferant.hatGeliefert );
	}
	
	public void copyHandelsware( ArrayList<Handelsware> hatGeliefert ){
		
		if ( this.hatGeliefert == null ){
			this.hatGeliefert = new ArrayList<Handelsware>( hatGeliefert) ; 
			this.hatGeliefert.setLieferant( this ); 
			this.hatGeliefert.verweiskopien( hatGeliefert ); 
		}
	}
	
	public void copyBankkonto( Bankkonto bankkonto ){
		
		if ( this.bankverbindung == null ){
			this.bankverbindung = new Bankkonto (); 
			this.bankverbindung.setLieferant( this ); 
			this.bankverbindung.verweiskopien( bankkonto ); 
		}
	}
	
	/*
	 * Handelsware/Bankkonto voreingestellter verweise
	 */
	public void voreingestellteVerweise(){
		defaultHandelsware();
		defaultBankkonto();
	}
	
	public void defaultHandelsware(){
		hatGeliefert = new ArrayList<Handelsware>();
	}
	
	public void defaultBankkonto(){
		if(bankverbindung != null){
			bankverbindung = new Bankkonto();
			bankverbindung.voreingestellteVerweise();
		}
	}

	public Geschaeftspartner getGeschaeftspartner() {
		return gp;
	}

	public void setGeschaeftspartner(Geschaeftspartner geschaeftspartner) {
		this.gp = geschaeftspartner;
	}
	
	public void set_GeschaeftspartnerLieferant (Geschaeftspartner geschaeftspartner)
	{
		this.gp=geschaeftspartner;
		geschaeftspartner.setIstLieferant(true);
		geschaeftspartner.setLieferant(this);
	}
	
	public void setBankkonto(Bankkonto bankkonto) {
		this.bankverbindung = bankkonto;
	}
	
	public void validateBankverbindung( ArrayList< Fehlermeldung > fehlermeldungen )
	{
		if ( bankverbindung == null )
		{
			Fehlermeldung fehlermeldung = new Fehlermeldung( 
	        "Bankverbindung", "kein Wert angegeben", "Wert muss eingegeben werden" ); 
			fehlermeldungen.add( fehlermeldung );
		}
	}
	
	public void identifikatorNullSetzen( ){
		id = 0;
		if ( gp != null )
			gp.identifikatorNullSetzen( );
	}
	
	public void koppeln( ){
		if ( gp != null ){
			gp.setLieferant(this);
			gp.koppeln( );
		}
	}
	
	
	
	public void loeschen( ArrayList< Fehlermeldung > fehlermeldungen ){
		
		EntityManagerFactory emFabrik = Persistence.createEntityManagerFactory( "Auftrag_1_0" );
		EntityManager em = emFabrik.createEntityManager( );
		
		
		if ( fehlermeldungen.isEmpty( ) ){
		
			if ( gp != null )
				gp.geschaeftspartnerVorhanden( fehlermeldungen ); 
			if ( fehlermeldungen.isEmpty( ) ){
				em.setFlushMode( FlushModeType.COMMIT );
				try{
					EntityTransaction etxn = em.getTransaction( );
					etxn.begin( );
					em.remove( em.merge( this ) );
					etxn.commit( );
				}
				catch ( Exception ex ){
					Fehlermeldung fehlermeldung = new Fehlermeldung("Lieferantendaten löschen","Fehler beim Zugriff auf die Datenbank", "" );
					fehlermeldungen.add( fehlermeldung );
				}
				finally{
					em.close( );
				}
			}
		}
	}
	
	public static List< Lieferant > suchen(ArrayList< Fehlermeldung > fehlermeldungen ){
		
		EntityManagerFactory emFabrik = Persistence.createEntityManagerFactory( "Auftrag_1_0" );
		EntityManager em = emFabrik.createEntityManager( );
		try{
			
			Query q = em.createQuery( "SELECT k FROM Lieferant k" );
			List< Lieferant > lieferantL = ( List< Lieferant > ) q.getResultList( );
			return lieferantL;
		}
		catch ( Exception ex ){
			
			Fehlermeldung fehlermeldung = new Fehlermeldung("Kundendaten suchen",
															"Fehler beim Zugriff auf die Datenbank", "" );
			fehlermeldungen.add( fehlermeldung );
			return null;
		}
		finally{
			em.close( );
		}
	}
}

Klasse Handelsware -> hatgeliefert

Java:
package auftragsverwaltung.i.artikel;
import auftragsverwaltung.i.*;
import auftragsverwaltung.i.geschaeftspartner.Lieferant;

import javax.persistence.*;

import java.util.*;

/**
 * <P>Anwendungsklasse:
 * <BR>Handelsware verwalten.
 * 
 * @author 
 * 
 */
@Entity
@Table ( schema = "auftrag_1_0", name = "handelsware"  )
public class Handelsware {
	
	/*
	 * @Id als Primärschlüssel
	 */
	@Id @GeneratedValue (strategy = GenerationType.IDENTITY) 
	@Column (nullable = false, unique = true, name = "HANDELSWARE_ID" )
	private int id;	
	
	/**
	 * @super Artikel
	 */
	@OneToOne ( cascade = { CascadeType.ALL },fetch = FetchType.EAGER )
	@JoinColumn ( nullable = false)
	private Artikel artikel;
	
	/**
	 * <P>Handelsware verweist auf einen Lieferanten
	 */
	@ManyToOne( cascade = { CascadeType.ALL },fetch = FetchType.EAGER ) 
	private Lieferant lieferant;
	
	/*
	 * Einkaufspreis pro Einheit verwalten.
	 */
	@Column (nullable = false, unique = true, name = "EINKAUFSPREISPROEINHEIT" )
	private Double einkaufspreisProEinheit;


	/**
	 * @return  id
	 */
	public int getId() {
		return id;
	}

	/**
	 * @param set id
	 */
	public void setId(int id) {
		this.id = id;
	}

	/**
	 * @param einkaufspreisProEinheit Einkaufspreis pro Einheit
	 */
	
	public Handelsware() {
		
		einkaufspreisProEinheit();
	}
	
	public void einkaufspreisProEinheit( ){
		einkaufspreisProEinheit = 0.0;
	}
	
	/**
	* Kopierkonstruktor
	*/
	public Handelsware( Handelsware handelsware ){
		this.id = handelsware.id;
		this.einkaufspreisProEinheit = handelsware.einkaufspreisProEinheit;
	}
	
	public void verweiskopien( Handelsware handelsware ){
	
		copyArtikel( handelsware.artikel );
		copyLieferant( handelsware.lieferant );
	}

	/**
	 * @return auswertende Einkaufspreis pro Einheit
	 */
	public Double getEinkaufspreisProEinheit() {
		return einkaufspreisProEinheit;
	}

	/**
	 * @param zuweisende Einkaufspreis pro Einheit
	 */
	public void setEinkaufspreisProEinheit(Double einkaufspreisProEinheit) {
		this.einkaufspreisProEinheit = einkaufspreisProEinheit;
	}
	
	public Lieferant getLieferant()
	{
		return lieferant;
	}
	
	public void setLieferant(Lieferant lieferant){
		
		this.lieferant = lieferant;
	}
	
	/*
	 * Lieferant/Artikel voreingestellter Verweis
	 */
	public void voreingestellteVerweise()
	{
		defaultLieferant();
		defaultArtikel();
	}
		
	public void defaultLieferant()
	{
		if(lieferant == null){
			lieferant = new Lieferant();
			lieferant.voreingestellteVerweise();
		}
	}
	
	public Artikel getArtikel() {
		return artikel;
	}

	public void setArtikel(Artikel artikel) {
		this.artikel = artikel;
	}
	
	public void defaultArtikel()
	{
		if(artikel==null){
			artikel= new Artikel();
			artikel.setHandelsware( this );
			artikel.voreingestellteVerweise();
		}
	}
	
	public void copyArtikel( Artikel artikel ){
	
		if ( this.artikel == null ) {
	
			this.artikel = new Artikel( artikel );
			this.artikel.setHandelsware( this );
			this.artikel.verweiskopien( artikel );
		}
	}
	
	public void copyLieferant( Lieferant lieferant ){
		
		if ( this.lieferant == null ) {
	
			this.lieferant = new Lieferant( lieferant );
			this.lieferant.verweiskopien( lieferant );
		}
	}
	

	
	/*
	 * Ausnahme und Fehlermeldung Lieferant
	 */
	
	public void validateAuftragsLieferant( ArrayList< Fehlermeldung > fehlermeldungen )
	{
		if ( lieferant == null )
		{
			Fehlermeldung fehlermeldung = new Fehlermeldung( 
	        "Lieferant", "kein Wert angegeben", "Wert muss eingegeben werden" ); 
			fehlermeldungen.add( fehlermeldung );
		}
	}
	
	public void validateLieferant( ArrayList< Fehlermeldung > fehlermeldungen ){
	
		if ( lieferant == null ){
	
			Fehlermeldung fehlermeldung = new Fehlermeldung("Lieferant", "nicht ausgewählt",
											"Einen Lieferanten aus dem Datenbestand auswählen" );
			fehlermeldungen.add( fehlermeldung );
		}
	}
	
	public void validateEinkaufspreisProEinheit( ArrayList< Fehlermeldung > fehlermeldungen ){
		
		if ( einkaufspreisProEinheit == null ){
	
			Fehlermeldung fehlermeldung = new Fehlermeldung("Einkaufspreis pro Einheit", "nicht ausgewählt",
											"Einen Einkaufspreis aus dem Datenbestand auswählen" );
			fehlermeldungen.add( fehlermeldung );
		}
	}
	
	public void loeschen( ArrayList< Fehlermeldung > fehlermeldungen ){
		
		EntityManagerFactory emFabrik = Persistence.createEntityManagerFactory( "Auftrag_1_0" );
		EntityManager em = emFabrik.createEntityManager( );
		kommtInKundenVor( fehlermeldungen );
	
		if ( fehlermeldungen.isEmpty( ) ){
	
			em.setFlushMode( FlushModeType.COMMIT );
			try{
	
				EntityTransaction etxn = em.getTransaction( );
				etxn.begin( );
				em.remove( em.merge( this ) );
				etxn.commit( );
			}
			catch ( Exception ex ){
				Fehlermeldung fehlermeldung = new Fehlermeldung("Handelswaredaten löschen",
																"Fehler beim Zugriff auf die Datenbank", "" );
				fehlermeldungen.add( fehlermeldung );
			}
			finally{
				em.close( );
			}
		}
	}
	
public void kommtInKundenVor(ArrayList< Fehlermeldung > fehlermeldungen ){
		
		EntityManagerFactory emFabrik = Persistence.createEntityManagerFactory( "Auftrag_1_0" );
		EntityManager em = emFabrik.createEntityManager( );
			
		try{
			
			Query query = em.createQuery("SELECT auftrag FROM Kunde AS kunde, " + 
					"IN( kunde.auftraege ) auftrag " + "WHERE kunde.id = :idParam" ); 
			query.setParameter( "idParam", id );
			
			if ( query.getResultList( ).size( ) > 0 ){
				Fehlermeldung fehlermeldung = new Fehlermeldung( "Handelsware löschen",
												"Handelware kommt noch in mindestens einem Kunden vor", "" );
				fehlermeldungen.add( fehlermeldung );
			}
		}
		catch ( Exception ex ){
			Fehlermeldung fehlermeldung = new Fehlermeldung(
			"Handelsware löschen: Prüfung, ob Kunde noch in Aufträgen vorkommt",
			"Fehler beim Zugriff auf die Datenbank", "" );
			fehlermeldungen.add( fehlermeldung );
		}
	}

	public void istHandelswareVonLieferant(ArrayList< Fehlermeldung > fehlermeldungen ){
	
	EntityManagerFactory emFabrik = Persistence.createEntityManagerFactory( "Auftrag_1_0" );
	EntityManager em = emFabrik.createEntityManager( );
	
	try{
		Query query = em.createQuery("SELECT handelsware FROM Handelsware handelsware WHERE handelsware.id = " +
																										":idParam" );
		query.setParameter( "idParam", id );
		
		if ( query.getResultList( ).size( ) == 0 ){
		
			Fehlermeldung fehlermeldung = new Fehlermeldung("Handelsware: Prüfung, ob Handelsware vorhanden",
																		"Handelsware nicht vorhanden",
																			"Handelsware aus dem Bestand auswählen" );
			fehlermeldungen.add( fehlermeldung );
		}
	}
	catch ( Exception ex ){
		
		Fehlermeldung fehlermeldung = new Fehlermeldung(
		"Hndelsware: Prüfung, ob Handelsware vorhanden",
		"Fehler beim Zugriff auf die Datenbank", "" );
		fehlermeldungen.add( fehlermeldung );
	}
	finally{
		em.close( );
	}
}
	
}


PHP:
Exception in thread "main" javax.persistence.PersistenceException: Exception [EclipseLink-28019] (Eclipse Persistence Services - 2.4.1.v20121003-ad44345): org.eclipse.persistence.exceptions.EntityManagerSetupException
Exception Description: Deployment of PersistenceUnit [Auftrag_1_0] failed. Close all factories for this PersistenceUnit.
Internal Exception: Exception [EclipseLink-0] (Eclipse Persistence Services - 2.4.1.v20121003-ad44345): org.eclipse.persistence.exceptions.IntegrityException
Descriptor Exceptions: 
---------------------------------------------------------

Exception [EclipseLink-1] (Eclipse Persistence Services - 2.4.1.v20121003-ad44345): org.eclipse.persistence.exceptions.DescriptorException
Exception Description: The attribute [hatGeliefert] is not declared as type ValueHolderInterface, but its mapping uses indirection.
Mapping: org.eclipse.persistence.mappings.ManyToManyMapping[hatGeliefert]
Descriptor: RelationalDescriptor(auftragsverwaltung.i.geschaeftspartner.Lieferant --> [DatabaseTable(auftrag_1_0.lieferant)])
Runtime Exceptions: 
---------------------------------------------------------

	at org.eclipse.persistence.internal.sessions.DatabaseSessionImpl.initializeDescriptors(DatabaseSessionImpl.java:638)
	at org.eclipse.persistence.internal.sessions.DatabaseSessionImpl.initializeDescriptors(DatabaseSessionImpl.java:574)
	at org.eclipse.persistence.internal.sessions.DatabaseSessionImpl.initializeDescriptors(DatabaseSessionImpl.java:533)
	at org.eclipse.persistence.internal.sessions.DatabaseSessionImpl.postConnectDatasource(DatabaseSessionImpl.java:777)
	at org.eclipse.persistence.internal.sessions.DatabaseSessionImpl.loginAndDetectDatasource(DatabaseSessionImpl.java:722)
	at org.eclipse.persistence.internal.jpa.EntityManagerFactoryProvider.login(EntityManagerFactoryProvider.java:215)
	at org.eclipse.persistence.internal.jpa.EntityManagerSetupImpl.deploy(EntityManagerSetupImpl.java:542)
	... 7 more
 
Zuletzt bearbeitet:
Ähnliche Java Themen
  Titel Forum Antworten Datum
S Derby/JavaDB Probleme beim anlegen einer embedded DB Datenbankprogrammierung 13
A Derby/JavaDB Probleme beim Einbinden Datenbankprogrammierung 2
J MySQL Hibernate: Probleme beim Speichern von OneToMany - Datensätzen Datenbankprogrammierung 2
N Probleme beim Aufruf aus der DB Datenbankprogrammierung 7
V Probleme beim Öffnen "einiger" SuperbaseTabellen p Datenbankprogrammierung 8
G Probleme beim Methodenaufruf einer EJB Datenbankprogrammierung 10
A Probleme beim Schreiben in eine CSV-Datei aus einer H2-DB Datenbankprogrammierung 2
M Daten von MySQL nach MSSql probleme beim schreiben Datenbankprogrammierung 3
S JDBC-Anfänger und Probleme beim Treiberfinden etc. Datenbankprogrammierung 4
T Probleme beim Verbindungsaufbau zum SQL 2000 Datenbankprogrammierung 2
TH260199 Java-Programm. Probleme bei der Umsetzung von einer Kontaktverwaltung. Datenbankprogrammierung 7
Zrebna Probleme bei Überführung von SQL-Code in eine HQL-Abfrage Datenbankprogrammierung 3
Kirby.exe Probleme mit docker-compose.yml Datenbankprogrammierung 4
B Probleme mit Datenbankverbindung Datenbankprogrammierung 2
N java SQL JAR - Probleme Datenbankprogrammierung 18
S probleme mit dem jdbc treiber Datenbankprogrammierung 1
T Oracle Probleme bei getTableName Datenbankprogrammierung 8
B Probleme mit java.sql.SQLException: ResultSet closed Datenbankprogrammierung 21
D Probleme bei Einsteiger Aufgabe SQL Datenbankprogrammierung 2
M JAVA Derby INSERT probleme Datenbankprogrammierung 12
Z MySQL Probleme mit resultSet executQuery Datenbankprogrammierung 3
H Probleme mit Unicodedarstellung in Derby DB Datenbankprogrammierung 1
L Probleme mit DriverManager.getConnection(..) - Endlosschleife, Java Absturz, Keine Exception Datenbankprogrammierung 4
P Probleme mit meinem 1. Hibernate Beispiel Datenbankprogrammierung 3
W Probleme mit AND und OR Datenbankprogrammierung 5
D DB Tabelle in JTable anzeigen - Probleme Datenbankprogrammierung 8
Gossi CallableStatement Probleme Datenbankprogrammierung 8
D Probleme bei der Erzeugung einer Tabelle Datenbankprogrammierung 15
L MySQL Probleme mit PreparedStatement für SQL-Abfrage in Java Datenbankprogrammierung 2
R Derby/JavaDB Insert Statement Probleme Datenbankprogrammierung 14
L Derby/JavaDB Derby macht Probleme Datenbankprogrammierung 4
B HSQLDB Probleme mit Select...Where Abfrage Datenbankprogrammierung 16
M Probleme mit Triggering Datenbankprogrammierung 2
F DB2 Probleme mit dem DriverManager Datenbankprogrammierung 4
S Derby/JavaDB OpenJPA, @oneToMany und Probleme Datenbankprogrammierung 2
I MySQL Probleme mit kyrillischen Zeichen Datenbankprogrammierung 2
S Probleme mit INSERT Befehl Datenbankprogrammierung 11
R isLast() Probleme bei Pervasive Datenbankprogrammierung 5
S Probleme mit localhost Datenbankprogrammierung 14
M Oracle Probleme mit dem anbinden einer Oracle 10g Datenbank Datenbankprogrammierung 27
P Hibernate -> Probleme bei n:m-Relation und JUnit Datenbankprogrammierung 10
J Probleme mit Datenbankzeiger Datenbankprogrammierung 19
A Probleme mit auf DB2 Express zugreiffen Datenbankprogrammierung 6
M Probleme bei Select in Schleife Datenbankprogrammierung 7
G Probleme mit Datenbankanbindung Datenbankprogrammierung 3
R Probleme mit Insert Datenbankprogrammierung 2
P Probleme mit Oracle Timestamp Datenbankprogrammierung 3
klattiator Hibernate - Probleme bei Konfiguration Datenbankprogrammierung 3
F Probleme mit entfernter DB und Hibernate Zeichensatz Datenbankprogrammierung 3
G Probleme mit der Schnittstelle H1bernate/Eclipse Datenbankprogrammierung 6
A Probleme mit Jar-File in ein Jar-File Datenbankprogrammierung 8
O Derby Performance Probleme? Datenbankprogrammierung 4
ARadauer hibernate probleme Datenbankprogrammierung 13
Y Probleme mit H2 und Primary Key Datenbankprogrammierung 4
D Probleme mit mysql-Connection Datenbankprogrammierung 10
G INNODB backup probleme Datenbankprogrammierung 2
S Probleme mit statement.close() Datenbankprogrammierung 10
G Probleme mit Laden des JDBC-Treiber in HSQLDB Datenbankprogrammierung 2
T Probleme mit Date in H2 Datenbank Datenbankprogrammierung 2
4 Probleme mit Select abfrage Datenbankprogrammierung 4
N Probleme mit Access-DB bei einem Webserver Datenbankprogrammierung 5
T Diverse JDBC Probleme (inner join, rs.last(), update) Datenbankprogrammierung 2
R Probleme mit Datensätzen in MySql DB Datenbankprogrammierung 3
B Oracle Driver Probleme Datenbankprogrammierung 2
I Probleme bei MySQL - Replikation Datenbankprogrammierung 2
R Probleme mit ausführbarem Jar Archiv Datenbankprogrammierung 9
F Probleme mit Jar Datei Datenbankprogrammierung 3
S String probleme Datenbankprogrammierung 3
R Probleme mit der Verbindung zum localhost Datenbankprogrammierung 12
S Probleme bei der Installation von MySQL 5.0 Datenbankprogrammierung 4
A Probleme mit ResultSet und getString(i) Datenbankprogrammierung 13
G Probleme mit Access und Join Datenbankprogrammierung 3
N Probleme mit "nur vorwärts gerichtete ResultSet" Datenbankprogrammierung 7
G Probleme mit Datenbankeinträge Datenbankprogrammierung 4
G Probleme mit Treiber (connector) Datenbankprogrammierung 20
thE_29 getBytes() - russland/bulgarien -- andere Codecs Probleme Datenbankprogrammierung 8
E Probleme mit JDBC und Executable-Jar Datenbankprogrammierung 2
G Probleme mit MySQL - Anmeldung Datenbankprogrammierung 2
P Probleme mit NullPointerException Datenbankprogrammierung 5
K MySQL: Probleme mit dem Verbinden per IP-Adresse Datenbankprogrammierung 6
T Probleme mit Datenbank Datenbankprogrammierung 6
Kirby.exe Verwirrung beim Query Datenbankprogrammierung 4
Z Beim schließen des Programms die verbindung zur DB beenden. Datenbankprogrammierung 4
C Oracle Fehler beim list.add() Datenbankprogrammierung 5
L MySQL Bekomme einen Fehler beim ResultSet Datenbankprogrammierung 12
H Brauche Hilfe beim Mappen von 3 Tabellen a 1:n mit hbm.xml. Datenbankprogrammierung 34
J Java Eclipse Hilfe beim Programmieren Datenbankprogrammierung 7
B JPA->fehler beim Insert in die Datenbank Datenbankprogrammierung 3
V Fehler beim Generierung Fehler beim Generierung java.lang.ArrayIndexOutOfBoundsException: 0 Datenbankprogrammierung 12
H HSQLDB Beim öffnen folgender Fehler: ... java.lang.NullPointerException Datenbankprogrammierung 1
S Hibernate-Konfiguration : Unverständliche Ausgabe beim Ausführen Datenbankprogrammierung 0
ruutaiokwu sql server werte swappen beim update-vorgang mit unique-constraints..? Datenbankprogrammierung 2
C H2 Syntax fehler beim erstellen einer Tabelle Datenbankprogrammierung 4
T MySQL Multithreading beim Datenbankzugriff Datenbankprogrammierung 3
T Fehler beim ausgeben von Tabellen Inhalt Datenbankprogrammierung 9
J Datentyp der Spalte beim Datenbankdesign unbekannt Datenbankprogrammierung 12
W No data found: SQL-Abfrage funktioniert nur beim Debuggen Datenbankprogrammierung 3
N HSQLDB Problem beim Treiberladen im Jar Datenbankprogrammierung 6
M Problem beim Erstellen einer Query Datenbankprogrammierung 7
M Datenbankverbindung zu langsam beim Insert? Datenbankprogrammierung 6

Ähnliche Java Themen

Neue Themen


Oben