| 
					
						 I'm encountering a problem when retrieving persisted objects from a legacy database where a subset of the columns in the composite ID are null (i.e. last_name, see bellow).  The row in the database is not hydrated and hibernate returns a null object.  Is there a way to retrieve hydrated objects where these parameters are simply null?
 
 Thanks,
 
 PT
 
 
 
 Hibernate version: 
 3.0.1
 
 Mapping documents:
     <class name="Contact" 
         table="contact"
         >
         <composite-id>
             <key-property 
                 name="lastName" 
                 column="last_name" 
                 type="java.lang.String"
                 length="20"
                 >
             </key-property>
 
             <key-property 
             name="firstName" 
             column="first_name" 
             type="java.lang.String"
             length="20"
             />
             <key-property 
             name="contactName" 
             column="contact_name" 
             type="java.lang.String"
             length="35"
             />
             <key-property 
             name="contactEmail" 
             column="contact_email" 
             type="java.lang.String"
             length="30"
             />
         </composite-id> ...
 
 Code from DAO to search for contacts:
 
     public List<Contact> getContacts(final ContactSearchInputBean bean){        
         return (List) getHibernateTemplate().execute(new HibernateCallback() {
             public Object doInHibernate(Session session) throws HibernateException {
                 Criteria criteria = session.createCriteria(Contact.class);
                 criteria.add( Expression.like(Contact.PROPERTYNAME_CONTACTEMAIL ,
                         bean.getContact(), MatchMode.ANYWHERE) );
  return criteria.list();
             }
         });
     }
 
 Name and version of the database you are using:
 INFORMIX-OnLine Version 7.20.UC4  
 
 The generated SQL (show_sql=true):
 35115 [AWT-EventQueue-0] DEBUG org.hibernate.SQL  - select this_.last_name as last1_0_, this_.contact_key as contact2_0_, this_.first_name as first3_0_, this_.contact_email as contact4_0_, this_.contact_date_added as contact5_0_, this_.middle_name as middle6_0_, this_.contact_phone as contact7_0_, this_.contact_name as contact8_0_, this_.contact_fax as contact9_0_0_, this_.contact_home as contact10_0_0_, this_.contact_card as contact11_0_0_, this_.contact_addr as contact12_0_0_, this_.contact_city as contact13_0_0_, this_.contact_state as contact14_0_0_, this_.contact_zip as contact15_0_0_, this_.contact_org as contact16_0_0_, this_.contact_title as contact17_0_0_, this_.contact_dept as contact18_0_0_, this_.contact_cell as contact19_0_0_, this_.contact_pager as contact20_0_0_, this_.contact_notes as contact21_0_0_, this_.contact_xmas as contact22_0_0_, this_.contact_date_mod as contact23_0_0_, this_.contact_owner as contact24_0_0_, this_.contact_share as contact25_0_0_, this_.contact_group as contact26_0_0_ from contact this_ where this_.contact_email like ?
 
 Debug level Hibernate log excerpt:
 
 35199 [AWT-EventQueue-0] DEBUG org.hibernate.loader.Loader  - processing result set
 35199 [AWT-EventQueue-0] DEBUG org.hibernate.loader.Loader  - result set row: 0
 35199 [AWT-EventQueue-0] DEBUG org.hibernate.type.StringType  - returning null as column: last1_0_
 35200 [AWT-EventQueue-0] DEBUG org.hibernate.loader.Loader  - result row: null
 35200 [AWT-EventQueue-0] DEBUG org.hibernate.loader.Loader  - done processing result set (1 rows) 
					
  
						
					 |