This isn't a question or necessarily a bug in hibernate. Just an observation.
I'm deserializing objects from XML doc and I'm not sure if that framework is doing something funny (like somehow adding null objects to the HashMap), but
I am getting a NullPointer way down in sun.reflect code.
I added a log.trace() in BasicPropertyAccessor.get() method to see what was happening.
relevant output follows:
<stuff snipped>
[java] get: DL_STA_ID=q33-station id:Configurable Logger Station Id inserted into data stream., method: public java.lang.String edu.iris.dmc.util.DescribedProperty.getDescription() - BasicPropertyAccessor:95
[java] get: DL_STA_ID=q33-station id:Configurable Logger Station Id inserted into data stream., method: public boolean edu.iris.dmc.util.DescribedProperty.isHidden() - BasicPropertyAccessor:95
[java] get: null, method: public java.lang.String edu.iris.dmc.util.DescribedProperty.getPropName() - BasicPropertyAccessor:95
[java] java.lang.NullPointerException
[java] at sun.reflect.GeneratedMethodAccessor7.invoke(Unknown Source)
[java] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
[java] at java.lang.reflect.Method.invoke(Method.java:324)
[java] at net.sf.hibernate.property.BasicPropertyAccessor$BasicGetter.get(BasicPropertyAccessor.java:97)
[java] at net.sf.hibernate.type.ComponentType.getPropertyValue(ComponentType.java:179)
[java] at net.sf.hibernate.type.ComponentType.getPropertyValues(ComponentType.java:205)
[java] at net.sf.hibernate.type.ComponentType.copy(ComponentType.java:285)
[java] at net.sf.hibernate.type.MapType.copy(MapType.java:52)
[java] at net.sf.hibernate.type.TypeFactory.copy(TypeFactory.java:284)
[java] at net.sf.hibernate.impl.SessionImpl.doCopy(SessionImpl.java:4033)
[java] at net.sf.hibernate.impl.SessionImpl.copy(SessionImpl.java:3975)
[java] at net.sf.hibernate.engine.Cascades$5.cascade(Cascades.java:132)
[java] at net.sf.hibernate.engine.Cascades.cascade(Cascades.java:436)
[java] at net.sf.hibernate.engine.Cascades.cascadeCollection(Cascades.java:526)
[java] at net.sf.hibernate.engine.Cascades.cascade(Cascades.java:452)
[java] at net.sf.hibernate.engine.Cascades.cascade(Cascades.java:503)
[java] at net.sf.hibernate.impl.SessionImpl.doCopy(SessionImpl.java:4030)
[java] at net.sf.hibernate.impl.SessionImpl.saveOrUpdateCopy(SessionImpl.java:3971)
[java] at edu.iris.dmc.db.DbMgr.synch(DbMgr.java:271)
I added a check for null in same to get past this, and I'm working again...
|