# hibernate  +  null + primitive Datentypen



## DBAnfänger (2. Apr 2006)

Hallo
Ich habe mir ein Mapping file geschrieben und ein Klasse. Nun sind in der Klasse nur primitive Datentypen. Wenn ich nun Daten auslese bekomme ich folgende Fehlermeldung. Ich habe im Mapping file schon folgendes geschrieben.

	<property name="test" not-null="true" type="int">
		 <column name="TEST" default="0"/>
	</property>

Wie kann ich hibernate sagen das er für alle null Objecte die er bekommt einen Wert setzen soll?

Schöne Grüße

DBAnfänger


Exception in thread "main" org.hibernate.PropertyAccessException: Null value was assigned to a property of primitive.. type setter of knx.doctor.db.ets.struct.Device.device_bau_type
	at org.hibernate.property.BasicPropertyAccessor$BasicSetter.set(BasicPropertyAccessor.java:85)
	at org.hibernate.tuple.AbstractEntityTuplizer.setPropertyValues(AbstractEntityTuplizer.java:330)
	at org.hibernate.tuple.PojoEntityTuplizer.setPropertyValues(PojoEntityTuplizer.java:188)
	at org.hibernate.persister.entity.AbstractEntityPersister.setPropertyValues(AbstractEntityPersister.java:3232)
	at org.hibernate.engine.TwoPhaseLoad.initializeEntity(TwoPhaseLoad.java:126)
	at org.hibernate.loader.Loader.initializeEntitiesAndCollections(Loader.java:842)
	at org.hibernate.loader.Loader.doQuery(Loader.java:717)
	at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:224)
	at org.hibernate.loader.Loader.doList(Loader.java:2150)
	at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2029)
	at org.hibernate.loader.Loader.list(Loader.java:2024)
	at org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:369)
	at org.hibernate.hql.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:300)
	at org.hibernate.engine.query.HQLQueryPlan.performList(HQLQueryPlan.java:153)
	at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1127)
	at org.hibernate.impl.QueryImpl.list(QueryImpl.java:79)
	at org.hibernate.impl.AbstractQueryImpl.uniqueResult(AbstractQueryImpl.java:749)
	at knx.doctor.db.ets.query.etsDBAccess.getDeviceInfo(etsDBAccess.java:44)
	at knx.doctor.db.ets.query.test.main(test.java:13)
Caused by: java.lang.IllegalArgumentException
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)


----------



## Ivanhoe (3. Apr 2006)

Nimm doch ein "Integer" anstatt von "int"


----------



## DBAnfänger (3. Apr 2006)

Hi 

Vielen Dank für Deine Antwort



			
				Ivanhoe hat gesagt.:
			
		

> Nimm doch ein "Integer" anstatt von "int"



Das habe ich auch schon gemacht aber das kann nach meiner Meinung nicht die Lösung des Problems sein. Man muss das doch auch irgendwie konfigurieren können.

Schöne Grüße

DBAnfänger


----------

