2009-06-22 6 views
0

Ich habe das Einbetten einer Anwendung mit Java/Hibernate/MySQL gemacht, aber wenn ich es versuchen läuft, wirft sie der Tisch für eine meiner Entitätsklassen wurde noch nicht erstellt.Hibernate nicht Entität Tabellen zu erstellen, wenn die Komponenten

Nach einigem Versuch und Irrtum, ich bin zu dem Schluss gekommen, dass das Problem aus dem Weg kommt ich eingebettete Komponenten bin abbildet, aber ich weiß nicht, wie ich das Problem beheben kann.

Hier sind die entsprechenden Bits des Codes:

@Entity 
public class Feed { 
... //Definition of some properties 
    @Embedded 
    @AttributeOverrides({ 
    @AttributeOverride(name = "type", column = @Column(name = "title-type")), 
    @AttributeOverride(name = "mode", column = @Column(name = "title-mode")), 
    @AttributeOverride(name = "value", column = @Column(name = "title-value")) }) 
    public Content getTitle() { ... } 

    ... 
} 

@Embeddable 
public class Content { 
    ... // There are three properties with bean syntax 
     // without any persistence annotation. 
} 

Weiß jemand, warum Hibernate die Tabelle für die Klasse-Feed erstellen scheitert? Und wie kann ich es korrigieren?

Vielen Dank im Voraus.

Edit: Endlich habe ich verstanden; die Tatsache, dass ich "-" Zeichen in meinen Spalten verwendete, war schuld. Ich habe diese durch Unterstriche ersetzt und alles ist wieder gut.

Vielen Dank für Ihre Hilfe.

Antwort

1

Entschuldigung für den Mangel an Updates, aber ich habe endlich in der Lage, die notwendigen Debug-Informationen zu protokollieren.

Die Namen, die ich für meine Spalten waren Schuld gewählt hatte; Ich würde vermuten, dass das "-" für arithmetische Operationen reserviert ist und dass es nicht in einem Spaltennamen sein sollte.

ich ersetzte sie mit Unterstrichen, und das Problem ist gelöst.

Vielen Dank für Ihre Hilfe.

+0

danke für das Posten eines Updates, genau das passierte mir – David

0

Sie sicher, dass Sie alle Ihre Fähiges Klasseneigenschaften außer Kraft setzen (Obwohl es funktionieren müssen, wenn Sie alle nicht außer Kraft setzen) Wenn ich Ihren Code mit meiner vergleiche ich keinen Unterschied gesehen habe (ich implementieren nur Serializable für meine Klasse) Kannst du schreiben, welche Ausnahme es wirft?

Verwandte Themen