Still no solution to this problem.
I did a basic JDBC call and T_ADDRESSEE comes back as a Struct containing two attributes, each one a Struct.
Trying to map this in Hibernate: I did a single class representing the outer struct and disassembled it internally. Trying to use this I get:
Code:
Exception in thread "main" org.hibernate.MappingException: Could not determine type for: com.streamlite.common.persistence.userType.FullAddresseeTypeImpl, at table: TBL_ORDERS, for columns: [org.hibernate.mapping.Column(SHIP_TO)]
at org.hibernate.mapping.SimpleValue.getType(SimpleValue.java:292)
at org.hibernate.mapping.SimpleValue.isValid(SimpleValue.java:276)
at org.hibernate.mapping.Property.isValid(Property.java:207)
at org.hibernate.mapping.PersistentClass.validate(PersistentClass.java:458)
at org.hibernate.mapping.RootClass.validate(RootClass.java:215)
at org.hibernate.cfg.Configuration.validate(Configuration.java:1135)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1320)
at org.hibernate.cfg.AnnotationConfiguration.buildSessionFactory(AnnotationConfiguration.java:867)
at com.streamlite.common.persistence.util.HibernateUtil.buildSessionFactory(HibernateUtil.java:199)
at com.streamlite.common.persistence.util.HibernateUtil.getSession(HibernateUtil.java:209)
at com.streamlite.common.persistence.util.HibernateUtil.beginTransaction(HibernateUtil.java:219)
at com.streamlite.test.Test.execute(Test.java:41)
at com.streamlite.test.Test.main(Test.java:33)
A single level user defined type works fine (struct containing strings). A struct containing structs causes the issues.
Any ideas ?