j'ai besoin d'une relation one-to-one entre deux beans. J'ai l'erreur
suivante alors qu'il me semble bien avoir 2 BigDecimal :
Caused by: java.lang.ClassCastException: java.lang.String
at net.sf.hibernate.type.BigDecimalType.set(BigDecimalType.java:33)
at
net.sf.hibernate.type.NullableType.nullSafeSet(NullableType.java:48)
at
net.sf.hibernate.type.NullableType.nullSafeSet(NullableType.java:35)
at
net.sf.hibernate.loader.Loader.bindPositionalParameters(Loader.java:749)
at
net.sf.hibernate.loader.Loader.prepareQueryStatement(Loader.java:788)
at net.sf.hibernate.loader.Loader.doQuery(Loader.java:265)
at
net.sf.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:133)
at net.sf.hibernate.loader.Loader.loadEntity(Loader.java:911)
at net.sf.hibernate.loader.Loader.loadEntity(Loader.java:931)
at net.sf.hibernate.loader.EntityLoader.load(EntityLoader.java:59)
at net.sf.hibernate.loader.EntityLoader.load(EntityLoader.java:51)
at
net.sf.hibernate.persister.EntityPersister.load(EntityPersister.java:419)
at net.sf.hibernate.impl.SessionImpl.doLoad(SessionImpl.java:2117)
at
net.sf.hibernate.impl.SessionImpl.doLoadByClass(SessionImpl.java:1991)
at
net.sf.hibernate.impl.SessionImpl.internalLoad(SessionImpl.java:1953)
at
net.sf.hibernate.type.OneToOneType.resolveIdentifier(OneToOneType.java:71)
Bean1.java :
/**
* @hibernate.one-to-one
* foreign-key="TYPDO"
* type="java.math.BigDecimal"
*
*/
public Bean2 getTypeDossier() {
return m_typeDossier;
}
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
TestMan
Bonjour,
Ça fait un bail que j'ai pas fait du hibernate mais ton attribut "type" me parrait étrange, car il me semble pas necessaire de stocker dans Bean1 le type de la clé encommun avec Bean2 car elle correspond à la clé primaire de Bean2.
En plus, j'ai un doute sur le type indiqué qui est une classe et pas le type de mapping (correspondance entre le la couche de persistence et le bean).
Regarde les exemples de 1-1 sur la doc, et essaye de corriger celà.
Pour rappel, dans un outil de mapping afin d'éviter tout problème il n'y a généralement pas d'information redondante.
A+
TM
wrote:
j'ai besoin d'une relation one-to-one entre deux beans. J'ai l'erreur suivante alors qu'il me semble bien avoir 2 BigDecimal : Caused by: java.lang.ClassCastException: java.lang.String at net.sf.hibernate.type.BigDecimalType.set(BigDecimalType.java:33) at net.sf.hibernate.type.NullableType.nullSafeSet(NullableType.java:48) at net.sf.hibernate.type.NullableType.nullSafeSet(NullableType.java:35) at net.sf.hibernate.loader.Loader.bindPositionalParameters(Loader.java:749) at net.sf.hibernate.loader.Loader.prepareQueryStatement(Loader.java:788) at net.sf.hibernate.loader.Loader.doQuery(Loader.java:265) at net.sf.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:133) at net.sf.hibernate.loader.Loader.loadEntity(Loader.java:911) at net.sf.hibernate.loader.Loader.loadEntity(Loader.java:931) at net.sf.hibernate.loader.EntityLoader.load(EntityLoader.java:59) at net.sf.hibernate.loader.EntityLoader.load(EntityLoader.java:51) at net.sf.hibernate.persister.EntityPersister.load(EntityPersister.java:419) at net.sf.hibernate.impl.SessionImpl.doLoad(SessionImpl.java:2117) at net.sf.hibernate.impl.SessionImpl.doLoadByClass(SessionImpl.java:1991) at net.sf.hibernate.impl.SessionImpl.internalLoad(SessionImpl.java:1953) at net.sf.hibernate.type.OneToOneType.resolveIdentifier(OneToOneType.java:71) Bean1.java : /** * @hibernate.one-to-one * foreign-key="TYPDO" * type="java.math.BigDecimal" * */ public Bean2 getTypeDossier() { return m_typeDossier; }
Ça fait un bail que j'ai pas fait du hibernate mais ton attribut "type"
me parrait étrange, car il me semble pas necessaire de stocker dans
Bean1 le type de la clé encommun avec Bean2 car elle correspond à la clé
primaire de Bean2.
En plus, j'ai un doute sur le type indiqué qui est une classe et pas le
type de mapping (correspondance entre le la couche de persistence et le
bean).
Regarde les exemples de 1-1 sur la doc, et essaye de corriger celà.
Pour rappel, dans un outil de mapping afin d'éviter tout problème il n'y
a généralement pas d'information redondante.
A+
TM
cpuaud@sopragroup.com wrote:
j'ai besoin d'une relation one-to-one entre deux beans. J'ai l'erreur
suivante alors qu'il me semble bien avoir 2 BigDecimal :
Caused by: java.lang.ClassCastException: java.lang.String
at net.sf.hibernate.type.BigDecimalType.set(BigDecimalType.java:33)
at
net.sf.hibernate.type.NullableType.nullSafeSet(NullableType.java:48)
at
net.sf.hibernate.type.NullableType.nullSafeSet(NullableType.java:35)
at
net.sf.hibernate.loader.Loader.bindPositionalParameters(Loader.java:749)
at
net.sf.hibernate.loader.Loader.prepareQueryStatement(Loader.java:788)
at net.sf.hibernate.loader.Loader.doQuery(Loader.java:265)
at
net.sf.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:133)
at net.sf.hibernate.loader.Loader.loadEntity(Loader.java:911)
at net.sf.hibernate.loader.Loader.loadEntity(Loader.java:931)
at net.sf.hibernate.loader.EntityLoader.load(EntityLoader.java:59)
at net.sf.hibernate.loader.EntityLoader.load(EntityLoader.java:51)
at
net.sf.hibernate.persister.EntityPersister.load(EntityPersister.java:419)
at net.sf.hibernate.impl.SessionImpl.doLoad(SessionImpl.java:2117)
at
net.sf.hibernate.impl.SessionImpl.doLoadByClass(SessionImpl.java:1991)
at
net.sf.hibernate.impl.SessionImpl.internalLoad(SessionImpl.java:1953)
at
net.sf.hibernate.type.OneToOneType.resolveIdentifier(OneToOneType.java:71)
Bean1.java :
/**
* @hibernate.one-to-one
* foreign-key="TYPDO"
* type="java.math.BigDecimal"
*
*/
public Bean2 getTypeDossier() {
return m_typeDossier;
}
Ça fait un bail que j'ai pas fait du hibernate mais ton attribut "type" me parrait étrange, car il me semble pas necessaire de stocker dans Bean1 le type de la clé encommun avec Bean2 car elle correspond à la clé primaire de Bean2.
En plus, j'ai un doute sur le type indiqué qui est une classe et pas le type de mapping (correspondance entre le la couche de persistence et le bean).
Regarde les exemples de 1-1 sur la doc, et essaye de corriger celà.
Pour rappel, dans un outil de mapping afin d'éviter tout problème il n'y a généralement pas d'information redondante.
A+
TM
wrote:
j'ai besoin d'une relation one-to-one entre deux beans. J'ai l'erreur suivante alors qu'il me semble bien avoir 2 BigDecimal : Caused by: java.lang.ClassCastException: java.lang.String at net.sf.hibernate.type.BigDecimalType.set(BigDecimalType.java:33) at net.sf.hibernate.type.NullableType.nullSafeSet(NullableType.java:48) at net.sf.hibernate.type.NullableType.nullSafeSet(NullableType.java:35) at net.sf.hibernate.loader.Loader.bindPositionalParameters(Loader.java:749) at net.sf.hibernate.loader.Loader.prepareQueryStatement(Loader.java:788) at net.sf.hibernate.loader.Loader.doQuery(Loader.java:265) at net.sf.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:133) at net.sf.hibernate.loader.Loader.loadEntity(Loader.java:911) at net.sf.hibernate.loader.Loader.loadEntity(Loader.java:931) at net.sf.hibernate.loader.EntityLoader.load(EntityLoader.java:59) at net.sf.hibernate.loader.EntityLoader.load(EntityLoader.java:51) at net.sf.hibernate.persister.EntityPersister.load(EntityPersister.java:419) at net.sf.hibernate.impl.SessionImpl.doLoad(SessionImpl.java:2117) at net.sf.hibernate.impl.SessionImpl.doLoadByClass(SessionImpl.java:1991) at net.sf.hibernate.impl.SessionImpl.internalLoad(SessionImpl.java:1953) at net.sf.hibernate.type.OneToOneType.resolveIdentifier(OneToOneType.java:71) Bean1.java : /** * @hibernate.one-to-one * foreign-key="TYPDO" * type="java.math.BigDecimal" * */ public Bean2 getTypeDossier() { return m_typeDossier; }
en fait "type" je l'ai ajouter pour essayer de forcer le passage en BigDecimal. Il y a une erreur dans mon code : Bean1.hbm.xml : <one-to-one name="typeDossier"
D'habitude je génère le sbean mais là ça ne donne pas grand chose (pas de clé dans la base !)
en fait "type" je l'ai ajouter pour essayer de forcer le passage en
BigDecimal.
Il y a une erreur dans mon code :
Bean1.hbm.xml :
<one-to-one
name="typeDossier"
en fait "type" je l'ai ajouter pour essayer de forcer le passage en BigDecimal. Il y a une erreur dans mon code : Bean1.hbm.xml : <one-to-one name="typeDossier"