-->
These old forums are deprecated now and set to read-only. We are waiting for you on our new forums!
More modern, Discourse-based and with GitHub/Google/Twitter authentication built-in.

All times are UTC - 5 hours [ DST ]



Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 3 posts ] 
Author Message
 Post subject: Outer Join only used for first collection?
PostPosted: Tue Jun 22, 2004 4:37 am 
Newbie

Joined: Thu Jun 17, 2004 1:15 am
Posts: 7
Hibernate Version 2.1
Using Spring Framework Integration / Oracle 8i


Hi,

I am experiencing a problem whereby only the first out of two sets is included in the main query, and then the remaining set is loaded up in a separate query. I have set lazy to false and outer-join to true, but it doesn't seem to help.

Here is my mapping file:

Code:
<hibernate-mapping schema="APM">

<class name="au.com.sealcorp.apm.client.Client" table="CLIENT" lazy="false">

   <id name="id" type="long" column="CLIENT_SEQ">
      <generator class="sequence">
         <param name="sequence">OTUSER.ASGARD_ACCOUNT_NUMBER</param>
      </generator>
   </id>

   <property name="clientType" column="CLIENT_TYPE" type="au.com.sealcorp.apm.client.ClientType"/>
   <property name="contactMethod" column="CONTACT_METHOD" type="au.com.sealcorp.apm.client.ContactMethod"/>
   <property name="workNumber" column="WORK_NUMBER"/>
   <property name="faxNumber" column="FAX_NUMBER"/>
   <property name="emailAddress" column="EMAIL_ADDRESS"/>
   <property name="taxFileNumber" column="TAX_FILE_NUMBER"/>

   <set name="relationships" table="CLIENT_RELATIONSHIP" outer-join="true" lazy="false">
      <key column="CLIENT_SEQ_SOURCE"/>
      <composite-element class="au.com.sealcorp.apm.client.Relationship">
         <property name="clientSeq" column="CLIENT_SEQ_TARGET" type="long"/>
         <property name="relationshipType" column="CLIENT_RELATIONSHIP_TYPE" type="au.com.sealcorp.apm.client.RelationshipType"/>
         <property name="dependant" column="DEPENDANT"/>
      </composite-element>
   </set>

   <set name="addresses" table="CLIENT_ADDRESS" outer-join="true" lazy="false">
      <key column="CLIENT_SEQ"/>
      <composite-element class="au.com.sealcorp.apm.client.Address">
         <property name="addressType" column="ADDRESS_TYPE" type="au.com.sealcorp.apm.client.AddressType"/>
         <property name="address1" column="ADDRESS_1" type="string"/>
         <property name="address2" column="ADDRESS_2" type="string"/>
         <property name="address3" column="ADDRESS_3" type="string"/>
         <property name="address4" column="ADDRESS_4" type="string"/>
         <property name="state" column="STATE" type="string"/>
         <property name="postcode" column="POSTCODE" type="string"/>
      </composite-element>
   </set>

   <joined-subclass name="au.com.sealcorp.apm.client.Person" table="PERSON" lazy="false">
      <key column="CLIENT_SEQ"/>
      <property name="title" column="TITLE"/>
      <property name="surname" column="SURNAME"/>
      <property name="givenNames" column="GIVEN_NAMES"/>
      <property name="salutation" column="SALUTATION"/>
      <property name="dateOfBirth" column="DATE_OF_BIRTH"/>
      <property name="sex" column="SEX"/>
      <property name="homeNumber" column="HOME_NUMBER"/>
      <property name="mobileNumber" column="MOBILE_NUMBER"/>
   </joined-subclass>

   <joined-subclass name="au.com.sealcorp.apm.client.Organisation" table="ORGANISATION" lazy="false">
      <key column="CLIENT_SEQ"/>
      <property name="organisationType" column="ORGANISATION_TYPE" type="au.com.sealcorp.apm.client.OrganisationType"/>
      <property name="name" column="NAME"/>
      <property name="australianBusinessNumber" column="AUSTRALIAN_BUSINESS_NUMBER"/>
   </joined-subclass>

</class>

</hibernate-mapping>


And here is the Hibernate log: (queries bolded)

16:28:54,420 INFO [XmlBeanDefinitionReader] Loading XML bean definitions from class path resource [au/com/sealcorp/apm/spring/applicationContext.xml]
16:28:54,420 DEBUG [XmlBeanDefinitionReader] Using JAXP implementation [org.apache.xerces.jaxp.DocumentBuilderFactoryImpl@48f6f8]
16:28:54,420 DEBUG [ResourceEntityResolver] Trying to resolve XML entity with public ID [-//SPRING//DTD BEAN//EN] and system ID [http://www.springframework.org/dtd/spring-beans.dtd]
16:28:54,430 DEBUG [ResourceEntityResolver] Trying to locate [spring-beans.dtd] under [/org/springframework/beans/factory/xml/]
16:28:54,440 DEBUG [ResourceEntityResolver] Found beans DTD [http://www.springframework.org/dtd/spring-beans.dtd] in classpath
16:28:54,470 DEBUG [DefaultXmlBeanDefinitionParser] Loading bean definitions
16:28:54,470 DEBUG [DefaultXmlBeanDefinitionParser] Default lazy init 'false'
16:28:54,470 DEBUG [DefaultXmlBeanDefinitionParser] Default dependency check 'none'
16:28:54,470 DEBUG [DefaultXmlBeanDefinitionParser] Default autowire 'no'
16:28:54,500 DEBUG [DefaultXmlBeanDefinitionParser] Registering bean definition with id 'dataSource'
16:28:54,510 DEBUG [DefaultXmlBeanDefinitionParser] Registering bean definition with id 'sessionFactory'
16:28:54,540 DEBUG [DefaultXmlBeanDefinitionParser] Registering bean definition with id 'transactionManager'
16:28:54,540 DEBUG [DefaultXmlBeanDefinitionParser] Registering bean definition with id 'clientDAOTarget'
16:28:54,550 DEBUG [DefaultXmlBeanDefinitionParser] Registering bean definition with id 'clientDAO'
16:28:54,550 DEBUG [DefaultXmlBeanDefinitionParser] Found 5 <bean> elements defining beans
16:28:54,550 INFO [ClassPathXmlApplicationContext] Bean factory for application context [org.springframework.context.support.ClassPathXmlApplicationContext;hashCode=1652601]: org.springframework.beans.factory.support.DefaultListableBeanFactory defining beans [dataSource,sessionFactory,transactionManager,clientDAOTarget,clientDAO]; Root of BeanFactory hierarchy
16:28:54,550 INFO [ClassPathXmlApplicationContext] 5 beans defined in ApplicationContext [org.springframework.context.support.ClassPathXmlApplicationContext;hashCode=1652601]
16:28:54,560 INFO [ClassPathXmlApplicationContext] No MessageSource found for context [org.springframework.context.support.ClassPathXmlApplicationContext;hashCode=1652601]: using empty StaticMessageSource
16:28:54,560 INFO [ClassPathXmlApplicationContext] Refreshing listeners
16:28:54,560 DEBUG [ClassPathXmlApplicationContext] Found 0 listeners in bean factory
16:28:54,560 INFO [DefaultListableBeanFactory] Pre-instantiating singletons in factory [org.springframework.beans.factory.support.DefaultListableBeanFactory defining beans [dataSource,sessionFactory,transactionManager,clientDAOTarget,clientDAO]; Root of BeanFactory hierarchy]
16:28:54,560 INFO [DefaultListableBeanFactory] Creating shared instance of singleton bean 'dataSource'
16:28:54,560 DEBUG [DefaultListableBeanFactory] Creating instance of bean 'dataSource' with merged definition [Root bean with class [org.apache.commons.dbcp.BasicDataSource] defined in class path resource [au/com/sealcorp/apm/spring/applicationContext.xml]]
16:28:54,610 DEBUG [CachedIntrospectionResults] Getting BeanInfo for class [org.apache.commons.dbcp.BasicDataSource]
16:28:54,620 DEBUG [CachedIntrospectionResults] Caching PropertyDescriptors for class [org.apache.commons.dbcp.BasicDataSource]
16:28:54,620 DEBUG [CachedIntrospectionResults] Found property 'password' of type [class java.lang.String]; editor=[null]
16:28:54,620 DEBUG [CachedIntrospectionResults] Found property 'defaultAutoCommit' of type [boolean]; editor=[null]
16:28:54,620 DEBUG [CachedIntrospectionResults] Found property 'maxIdle' of type [int]; editor=[null]
16:28:54,620 DEBUG [CachedIntrospectionResults] Found property 'minEvictableIdleTimeMillis' of type [long]; editor=[null]
16:28:54,630 DEBUG [CachedIntrospectionResults] Found property 'driverClassName' of type [class java.lang.String]; editor=[null]
16:28:54,630 DEBUG [CachedIntrospectionResults] Found property 'username' of type [class java.lang.String]; editor=[null]
16:28:54,630 DEBUG [CachedIntrospectionResults] Found property 'url' of type [class java.lang.String]; editor=[null]
16:28:54,630 DEBUG [CachedIntrospectionResults] Found property 'testOnBorrow' of type [boolean]; editor=[null]
16:28:54,630 DEBUG [CachedIntrospectionResults] Found property 'maxWait' of type [long]; editor=[null]
16:28:54,630 DEBUG [CachedIntrospectionResults] Found property 'testWhileIdle' of type [boolean]; editor=[null]
16:28:54,630 DEBUG [CachedIntrospectionResults] Found property 'numIdle' of type [int]; editor=[null]
16:28:54,630 DEBUG [CachedIntrospectionResults] Found property 'maxActive' of type [int]; editor=[null]
16:28:54,630 DEBUG [CachedIntrospectionResults] Found property 'loginTimeout' of type [int]; editor=[null]
16:28:54,630 DEBUG [CachedIntrospectionResults] Found property 'logWriter' of type [class java.io.PrintWriter]; editor=[null]
16:28:54,640 DEBUG [CachedIntrospectionResults] Found property 'connection' of type [interface java.sql.Connection]; editor=[null]
16:28:54,640 DEBUG [CachedIntrospectionResults] Found property 'numActive' of type [int]; editor=[null]
16:28:54,640 DEBUG [CachedIntrospectionResults] Found property 'class' of type [class java.lang.Class]; editor=[null]
16:28:54,640 DEBUG [CachedIntrospectionResults] Found property 'maxOpenPreparedStatements' of type [int]; editor=[null]
16:28:54,640 DEBUG [CachedIntrospectionResults] Found property 'timeBetweenEvictionRunsMillis' of type [long]; editor=[null]
16:28:54,640 DEBUG [CachedIntrospectionResults] Found property 'poolPreparedStatements' of type [boolean]; editor=[null]
16:28:54,640 DEBUG [CachedIntrospectionResults] Found property 'accessToUnderlyingConnectionAllowed' of type [boolean]; editor=[null]
16:28:54,640 DEBUG [CachedIntrospectionResults] Found property 'testOnReturn' of type [boolean]; editor=[null]
16:28:54,640 DEBUG [CachedIntrospectionResults] Found property 'logAbandoned' of type [boolean]; editor=[null]
16:28:54,640 DEBUG [CachedIntrospectionResults] Found property 'numTestsPerEvictionRun' of type [int]; editor=[null]
16:28:54,650 DEBUG [CachedIntrospectionResults] Found property 'defaultTransactionIsolation' of type [int]; editor=[null]
16:28:54,650 DEBUG [CachedIntrospectionResults] Found property 'removeAbandonedTimeout' of type [int]; editor=[null]
16:28:54,650 DEBUG [CachedIntrospectionResults] Found property 'validationQuery' of type [class java.lang.String]; editor=[null]
16:28:54,650 DEBUG [CachedIntrospectionResults] Found property 'removeAbandoned' of type [boolean]; editor=[null]
16:28:54,650 DEBUG [CachedIntrospectionResults] Found property 'defaultCatalog' of type [class java.lang.String]; editor=[null]
16:28:54,650 DEBUG [CachedIntrospectionResults] Found property 'defaultReadOnly' of type [boolean]; editor=[null]
16:28:54,650 DEBUG [CachedIntrospectionResults] Found property 'minIdle' of type [int]; editor=[null]
16:28:54,650 DEBUG [CachedIntrospectionResults] Class [org.apache.commons.dbcp.BasicDataSource] is cache-safe
16:28:54,650 DEBUG [BeanWrapperImpl] About to invoke write method [public void org.apache.commons.dbcp.BasicDataSource.setDriverClassName(java.lang.String)] on object of class [org.apache.commons.dbcp.BasicDataSource]
16:28:54,660 DEBUG [BeanWrapperImpl] Invoked write method [public void org.apache.commons.dbcp.BasicDataSource.setDriverClassName(java.lang.String)] with value [oracle.jdbc.driver.OracleDriver]
16:28:54,660 DEBUG [BeanWrapperImpl] About to invoke write method [public void org.apache.commons.dbcp.BasicDataSource.setUrl(java.lang.String)] on object of class [org.apache.commons.dbcp.BasicDataSource]
16:28:54,660 DEBUG [BeanWrapperImpl] Invoked write method [public void org.apache.commons.dbcp.BasicDataSource.setUrl(java.lang.String)] with value [jdbc:oracle:thin:@ds9:2600:SCDEV]
16:28:54,660 DEBUG [BeanWrapperImpl] About to invoke write method [public void org.apache.commons.dbcp.BasicDataSource.setUsername(java.lang.String)] on object of class [org.apache.commons.dbcp.BasicDataSource]
16:28:54,660 DEBUG [BeanWrapperImpl] Invoked write method [public void org.apache.commons.dbcp.BasicDataSource.setUsername(java.lang.String)] with value [WEBUSER]
16:28:54,660 DEBUG [BeanWrapperImpl] About to invoke write method [public void org.apache.commons.dbcp.BasicDataSource.setPassword(java.lang.String)] on object of class [org.apache.commons.dbcp.BasicDataSource]
16:28:54,670 DEBUG [BeanWrapperImpl] Invoked write method [public void org.apache.commons.dbcp.BasicDataSource.setPassword(java.lang.String)] with value [WEBUSER]
16:28:54,670 DEBUG [DefaultListableBeanFactory] Invoking BeanPostProcessors before initialization of bean 'dataSource'
16:28:54,670 DEBUG [DefaultListableBeanFactory] Invoking BeanPostProcessors after initialization of bean 'dataSource'
16:28:54,670 INFO [DefaultListableBeanFactory] Creating shared instance of singleton bean 'sessionFactory'
16:28:54,670 DEBUG [DefaultListableBeanFactory] Creating instance of bean 'sessionFactory' with merged definition [Root bean with class [org.springframework.orm.hibernate.LocalSessionFactoryBean] defined in class path resource [au/com/sealcorp/apm/spring/applicationContext.xml]]
16:28:54,670 DEBUG [CachedIntrospectionResults] Getting BeanInfo for class [org.springframework.orm.hibernate.LocalSessionFactoryBean]
16:28:54,720 DEBUG [CachedIntrospectionResults] Caching PropertyDescriptors for class [org.springframework.orm.hibernate.LocalSessionFactoryBean]
16:28:54,720 DEBUG [CachedIntrospectionResults] Found property 'dataSource' of type [interface javax.sql.DataSource]; editor=[null]
16:28:54,720 DEBUG [CachedIntrospectionResults] Found property 'mappingJarLocations' of type [class [Lorg.springframework.core.io.Resource;]; editor=[null]
16:28:54,720 DEBUG [CachedIntrospectionResults] Found property 'objectType' of type [class java.lang.Class]; editor=[null]
16:28:54,720 DEBUG [CachedIntrospectionResults] Found property 'namingStrategy' of type [interface net.sf.hibernate.cfg.NamingStrategy]; editor=[null]
16:28:54,720 DEBUG [CachedIntrospectionResults] Found property 'jtaTransactionManager' of type [interface javax.transaction.TransactionManager]; editor=[null]
16:28:54,720 DEBUG [CachedIntrospectionResults] Found property 'configuration' of type [class net.sf.hibernate.cfg.Configuration]; editor=[null]
16:28:54,720 DEBUG [CachedIntrospectionResults] Found property 'mappingResources' of type [class [Ljava.lang.String;]; editor=[null]
16:28:54,730 DEBUG [CachedIntrospectionResults] Found property 'class' of type [class java.lang.Class]; editor=[null]
16:28:54,730 DEBUG [CachedIntrospectionResults] Found property 'singleton' of type [boolean]; editor=[null]
16:28:54,730 DEBUG [CachedIntrospectionResults] Found property 'object' of type [class java.lang.Object]; editor=[null]
16:28:54,730 DEBUG [CachedIntrospectionResults] Found property 'entityInterceptor' of type [interface net.sf.hibernate.Interceptor]; editor=[null]
16:28:54,730 DEBUG [CachedIntrospectionResults] Found property 'lobHandler' of type [interface org.springframework.jdbc.support.lob.LobHandler]; editor=[null]
16:28:54,730 DEBUG [CachedIntrospectionResults] Found property 'mappingDirectoryLocations' of type [class [Lorg.springframework.core.io.Resource;]; editor=[null]
16:28:54,730 DEBUG [CachedIntrospectionResults] Found property 'configLocation' of type [interface org.springframework.core.io.Resource]; editor=[null]
16:28:54,730 DEBUG [CachedIntrospectionResults] Found property 'mappingLocations' of type [class [Lorg.springframework.core.io.Resource;]; editor=[null]
16:28:54,730 DEBUG [CachedIntrospectionResults] Found property 'hibernateProperties' of type [class java.util.Properties]; editor=[null]
16:28:54,740 DEBUG [CachedIntrospectionResults] Found property 'schemaUpdate' of type [boolean]; editor=[null]
16:28:54,740 DEBUG [CachedIntrospectionResults] Class [org.springframework.orm.hibernate.LocalSessionFactoryBean] is cache-safe
16:28:54,740 DEBUG [DefaultListableBeanFactory] Resolving reference from property 'dataSource' in bean 'sessionFactory' to bean 'dataSource'
16:28:54,740 DEBUG [DefaultListableBeanFactory] Returning cached instance of singleton bean 'dataSource'
16:28:54,740 DEBUG [BeanWrapperImpl] About to invoke write method [public void org.springframework.orm.hibernate.LocalSessionFactoryBean.setDataSource(javax.sql.DataSource)] on object of class [org.springframework.orm.hibernate.LocalSessionFactoryBean]
16:28:54,750 DEBUG [BeanWrapperImpl] Invoked write method [public void org.springframework.orm.hibernate.LocalSessionFactoryBean.setDataSource(javax.sql.DataSource)] with value of type [javax.sql.DataSource]
16:28:54,750 DEBUG [BeanWrapperImpl] About to invoke write method [public void org.springframework.orm.hibernate.LocalSessionFactoryBean.setMappingResources(java.lang.String[])] on object of class [org.springframework.orm.hibernate.LocalSessionFactoryBean]
16:28:54,750 DEBUG [BeanWrapperImpl] Invoked write method [public void org.springframework.orm.hibernate.LocalSessionFactoryBean.setMappingResources(java.lang.String[])] with value [[Ljava.lang.String;@11a3a4]
16:28:54,750 DEBUG [BeanWrapperImpl] About to invoke write method [public void org.springframework.orm.hibernate.LocalSessionFactoryBean.setHibernateProperties(java.util.Properties)] on object of class [org.springframework.orm.hibernate.LocalSessionFactoryBean]
16:28:54,750 DEBUG [BeanWrapperImpl] Invoked write method [public void org.springframework.orm.hibernate.LocalSessionFactoryBean.setHibernateProperties(java.util.Properties)] with value of type [java.util.Properties]
16:28:54,750 DEBUG [DefaultListableBeanFactory] Invoking BeanPostProcessors before initialization of bean 'sessionFactory'
16:28:54,760 DEBUG [DefaultListableBeanFactory] Calling afterPropertiesSet() on bean with beanName 'sessionFactory'
16:28:54,770 INFO [Environment] Hibernate 2.1.4
16:28:54,770 INFO [Environment] hibernate.properties not found
16:28:54,770 INFO [Environment] using CGLIB reflection optimizer
16:28:54,770 INFO [Environment] JVM does not support Statement.getGeneratedKeys()
16:28:54,770 INFO [Environment] JVM does not support LinkedHasMap, LinkedHashSet - ordered maps and sets disabled
16:28:54,770 INFO [Environment] using workaround for JVM bug in java.sql.Timestamp
16:28:54,860 DEBUG [DTDEntityResolver] trying to locate http://hibernate.sourceforge.net/hibern ... ng-2.0.dtd in classpath under net/sf/hibernate/
16:28:54,860 DEBUG [DTDEntityResolver] found http://hibernate.sourceforge.net/hibern ... ng-2.0.dtd in classpath
16:28:55,061 INFO [Binder] Mapping class: au.com.sealcorp.apm.client.Client -> CLIENT
16:28:55,121 DEBUG [Binder] Mapped property: id -> CLIENT_SEQ, type: long
16:28:55,131 DEBUG [Binder] Mapped property: clientType -> CLIENT_TYPE, type: au.com.sealcorp.apm.client.ClientType
16:28:55,141 DEBUG [Binder] Mapped property: contactMethod -> CONTACT_METHOD, type: au.com.sealcorp.apm.client.ContactMethod
16:28:55,141 DEBUG [Binder] Mapped property: workNumber -> WORK_NUMBER, type: string
16:28:55,141 DEBUG [Binder] Mapped property: faxNumber -> FAX_NUMBER, type: string
16:28:55,141 DEBUG [Binder] Mapped property: emailAddress -> EMAIL_ADDRESS, type: string
16:28:55,141 DEBUG [Binder] Mapped property: taxFileNumber -> TAX_FILE_NUMBER, type: string
16:28:55,141 INFO [Binder] Mapping collection: au.com.sealcorp.apm.client.Client.relationships -> CLIENT_RELATIONSHIP
16:28:55,151 DEBUG [Binder] Mapped property: relationships, type: java.util.Set
16:28:55,151 INFO [Binder] Mapping collection: au.com.sealcorp.apm.client.Client.addresses -> CLIENT_ADDRESS
16:28:55,151 DEBUG [Binder] Mapped property: addresses, type: java.util.Set
16:28:55,191 INFO [Binder] Mapping joined-subclass: au.com.sealcorp.apm.client.Person -> PERSON
16:28:55,191 DEBUG [Binder] Mapped property: title -> TITLE, type: string
16:28:55,191 DEBUG [Binder] Mapped property: surname -> SURNAME, type: string
16:28:55,191 DEBUG [Binder] Mapped property: givenNames -> GIVEN_NAMES, type: string
16:28:55,191 DEBUG [Binder] Mapped property: salutation -> SALUTATION, type: string
16:28:55,191 DEBUG [Binder] Mapped property: dateOfBirth -> DATE_OF_BIRTH, type: timestamp
16:28:55,211 DEBUG [Binder] Mapped property: sex -> SEX, type: character
16:28:55,211 DEBUG [Binder] Mapped property: homeNumber -> HOME_NUMBER, type: string
16:28:55,211 DEBUG [Binder] Mapped property: mobileNumber -> MOBILE_NUMBER, type: string
16:28:55,211 INFO [Binder] Mapping joined-subclass: au.com.sealcorp.apm.client.Organisation -> ORGANISATION
16:28:55,211 DEBUG [Binder] Mapped property: organisationType -> ORGANISATION_TYPE, type: au.com.sealcorp.apm.client.OrganisationType
16:28:55,211 DEBUG [Binder] Mapped property: name -> NAME, type: string
16:28:55,211 DEBUG [Binder] Mapped property: australianBusinessNumber -> AUSTRALIAN_BUSINESS_NUMBER, type: string
16:28:55,211 INFO [LocalSessionFactoryBean] Building new Hibernate SessionFactory
16:28:55,211 INFO [Configuration] processing one-to-many association mappings
16:28:55,211 DEBUG [Binder] Second pass for collection: au.com.sealcorp.apm.client.Client.relationships
16:28:55,211 DEBUG [Binder] Mapped property: clientSeq -> CLIENT_SEQ_TARGET, type: long
16:28:55,211 DEBUG [Binder] Mapped property: relationshipType -> CLIENT_RELATIONSHIP_TYPE, type: au.com.sealcorp.apm.client.RelationshipType
16:28:55,221 DEBUG [Binder] Mapped property: dependant -> DEPENDANT, type: boolean
16:28:55,391 DEBUG [Binder] Mapped collection key: CLIENT_SEQ_SOURCE, element: CLIENT_SEQ_TARGET, CLIENT_RELATIONSHIP_TYPE, DEPENDANT, type: au.com.sealcorp.apm.client.Relationship
16:28:55,391 DEBUG [Binder] Second pass for collection: au.com.sealcorp.apm.client.Client.addresses
16:28:55,391 DEBUG [Binder] Mapped property: addressType -> ADDRESS_TYPE, type: au.com.sealcorp.apm.client.AddressType
16:28:55,391 DEBUG [Binder] Mapped property: address1 -> ADDRESS_1, type: string
16:28:55,391 DEBUG [Binder] Mapped property: address2 -> ADDRESS_2, type: string
16:28:55,411 DEBUG [Binder] Mapped property: address3 -> ADDRESS_3, type: string
16:28:55,411 DEBUG [Binder] Mapped property: address4 -> ADDRESS_4, type: string
16:28:55,411 DEBUG [Binder] Mapped property: state -> STATE, type: string
16:28:55,411 DEBUG [Binder] Mapped property: postcode -> POSTCODE, type: string
16:28:55,421 DEBUG [Binder] Mapped collection key: CLIENT_SEQ, element: ADDRESS_TYPE, ADDRESS_1, ADDRESS_2, ADDRESS_3, ADDRESS_4, STATE, POSTCODE, type: au.com.sealcorp.apm.client.Address
16:28:55,431 INFO [Configuration] processing one-to-one association property references
16:28:55,431 INFO [Configuration] processing foreign key constraints
16:28:55,431 DEBUG [Configuration] resolving reference to class: au.com.sealcorp.apm.client.Client
16:28:55,431 DEBUG [Configuration] resolving reference to class: au.com.sealcorp.apm.client.Client
16:28:55,431 DEBUG [Configuration] resolving reference to class: au.com.sealcorp.apm.client.Client
16:28:55,431 DEBUG [Configuration] resolving reference to class: au.com.sealcorp.apm.client.Client
16:28:55,451 INFO [Dialect] Using dialect: net.sf.hibernate.dialect.OracleDialect
16:28:55,451 INFO [SettingsFactory] Use outer join fetching: true
16:28:55,461 INFO [ConnectionProviderFactory] Initializing connection provider: org.springframework.orm.hibernate.LocalDataSourceConnectionProvider
16:28:55,461 INFO [TransactionManagerLookupFactory] No TransactionManagerLookup configured (in JTA environment, use of process level read-write cache is not recommended)
16:28:55,922 INFO [SettingsFactory] Use scrollable result sets: true
16:28:55,922 INFO [SettingsFactory] Use JDBC3 getGeneratedKeys(): false
16:28:55,922 INFO [SettingsFactory] Optimize cache for minimal puts: false
16:28:55,922 INFO [SettingsFactory] echoing all SQL to stdout
16:28:55,922 INFO [SettingsFactory] Query language substitutions: {}
16:28:55,922 INFO [SettingsFactory] cache provider: net.sf.ehcache.hibernate.Provider
16:28:55,932 INFO [Configuration] instantiating and configuring caches
16:28:56,012 INFO [SessionFactoryImpl] building session factory
16:28:56,012 DEBUG [SessionFactoryImpl] instantiating session factory with properties: {java.runtime.name=Java(TM) 2 Runtime Environment, Standard Edition, sun.boot.library.path=C:\jdk1.3.1_04\jre\bin, java.vm.version=1.3.1_04-b02, java.vm.vendor=Sun Microsystems Inc., java.vendor.url=http://java.sun.com/, path.separator=;, java.vm.name=Java HotSpot(TM) Client VM, file.encoding.pkg=sun.io, java.vm.specification.name=Java Virtual Machine Specification, user.dir=S:\, java.runtime.version=1.3.1_04-b02, hibernate.use_outer_joins=true, java.awt.graphicsenv=sun.awt.Win32GraphicsEnvironment, os.arch=x86, java.io.tmpdir=C:\Temp\, line.separator=
, java.vm.specification.vendor=Sun Microsystems Inc., java.awt.fonts=, os.name=Windows XP, java.library.path=C:\jdk1.3.1_04\bin;.;C:\WINDOWS\System32;C:\WINDOWS;C:\Perl\bin\;C:\Oracle\920\bin;C:\Program Files\Oracle\jre\1.3.1\bin;C:\Program Files\Oracle\jre\1.1.8\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;c:\Forte\install\bin;c:\Forte\userlib;h:\Architecture\Scripts;c:\Development\Scripts;C:\PROGRA~1\ULTRAE~1, java.specification.name=Java Platform API Specification, java.class.version=47.0, os.version=5.1, user.home=C:\Documents and Settings\forlinr, user.timezone=Australia/Perth, java.awt.printerjob=sun.awt.windows.WPrinterJob, file.encoding=Cp1252, java.specification.version=1.3, user.name=forlinr, java.class.path=S:\classes;S:\jars\3rdparty\acme.jar;S:\jars\3rdparty\avalon-framework.jar;S:\jars\3rdparty\batik.jar;S:\jars\3rdparty\bsf.jar;S:\jars\3rdparty\bsfengines.jar;S:\jars\3rdparty\com.ibm.mq.jar;S:\jars\3rdparty\com.ibm.mqjms.jar;S:\jars\3rdparty\cryptix32.jar;S:\jars\3rdparty\dom.jar;S:\jars\3rdparty\fop.jar;S:\jars\3rdparty\FTPProtocol.jar;S:\jars\3rdparty\jakarta-regexp-1.2.jar;S:\jars\3rdparty\jaxp-api.jar;S:\jars\3rdparty\jcert.jar;S:\jars\3rdparty\jCharts.jar;S:\jars\3rdparty\jdom.jar;S:\jars\3rdparty\jfor.jar;S:\jars\3rdparty\jfreechart.jar;S:\jars\3rdparty\jimi_1_0.jar;S:\jars\3rdparty\jms.jar;S:\jars\3rdparty\jndi.jar;S:\jars\3rdparty\jnet.jar;S:\jars\3rdparty\jsptags.jar;S:\jars\3rdparty\jsse.jar;S:\jars\3rdparty\jta.jar;S:\jars\3rdparty\log4j.jar;S:\jars\3rdparty\logkit.jar;S:\jars\3rdparty\oracle-jdbc.zip;S:\jars\3rdparty\Orielly.jar;S:\jars\3rdparty\pvxChart.jar;S:\jars\3rdparty\sax.jar;S:\jars\3rdparty\struts_1_0.jar;S:\jars\3rdparty\xalan.jar;S:\jars\3rdparty\xerces.jar;S:\jars\3rdparty\xercesImpl.jar;S:\jars\3rdparty\xsltc.jar;S:\jars\3rdparty\iText.jar;S:\jars\3rdparty\jakarta-commons-net.jar;S:\jars\3rdparty\jakarta-oro.jar;S:\jars\3rdparty\spring\aopalliance.jar;S:\jars\3rdparty\spring\spring.jar;S:\jars\3rdparty\spring\spring-aop.jar;S:\jars\3rdparty\spring\spring-context.jar;S:\jars\3rdparty\spring\spring-core.jar;S:\jars\3rdparty\spring\spring-dao.jar;S:\jars\3rdparty\spring\spring-mock.jar;S:\jars\3rdparty\spring\spring-orm.jar;S:\jars\3rdparty\spring\spring-web.jar;S:\jars\3rdparty\spring\spring-webmvc.jar;S:\jars\3rdparty\hibernate\cglib-full-2.0.1.jar;S:\jars\3rdparty\hibernate\commons-collections-2.1.jar;S:\jars\3rdparty\hibernate\commons-logging-1.0.3.jar;S:\jars\3rdparty\hibernate\dom4j-1.4.jar;S:\jars\3rdparty\hibernate\ehcache-0.7.jar;S:\jars\3rdparty\hibernate\hibernate2.jar;S:\jars\3rdparty\hibernate\odmg-3.0.jar;S:\jars\3rdparty\commons\commons-attributes-api-SNAPSHOT.jar;S:\jars\3rdparty\commons\commons-attributes-compiler-SNAPSHOT.jar;S:\jars\3rdparty\commons\commons-beanutils.jar;S:\jars\3rdparty\commons\commons-collections.jar;S:\jars\3rdparty\commons\commons-dbcp.jar;S:\jars\3rdparty\commons\commons-digester.jar;S:\jars\3rdparty\commons\commons-discovery.jar;S:\jars\3rdparty\commons\commons-fileupload.jar;S:\jars\3rdparty\commons\commons-lang.jar;S:\jars\3rdparty\commons\commons-logging.jar;S:\jars\3rdparty\commons\commons-pool.jar;S:\jars\3rdparty\commons\commons-validator.jar;C:\weblogic5.1\classes;C:\weblogic5.1\classes\boot;C:\weblogic5.1\lib\weblogicaux.jar;C:\weblogic5.1\lib\persistence\WebLogic_RDBMS.jar;C:\weblogic5.1\lib\weblogic510sp11boot.jar;C:\weblogic5.1\lib\weblogic510sp11.jar;S:\jars\sealcorp\common.jar;S:\jars\sealcorp\hub.jar;S:\jars\sealcorp\batch.jar;S:\jars\sealcorp\business.jar;S:\jars\sealcorp\ats.jar;S:\jars\sealcorp\mvl.jar;S:\jars\sealcorp\sql.jar;S:\jars\sealcorp\cache.jar;S:\jars\sealcorp\properties.jar;S:\jars\sealcorp\io.jar;S:\jars\sealcorp\web.jar;S:\jars\sealcorp\et.jar;S:\jars\sealcorp\logon.jar;C:\jdk1.3.1_04\demo\jfc\Java2D\Java2Demo.jar;C:\jdk1.3.1_04\jre\lib\i18n.jar;C:\jdk1.3.1_04\jre\lib\jaws.jar;C:\jdk1.3.1_04\jre\lib\rt.jar;C:\jdk1.3.1_04\jre\lib\sunrsasign.jar;C:\jdk1.3.1_04\lib\dt.jar;C:\jdk1.3.1_04\lib\htmlconverter.jar;C:\jdk1.3.1_04\lib\tools.jar, hibernate.show_sql=true, java.vm.specification.version=1.0, java.home=C:\jdk1.3.1_04\jre, hibernate.dialect=net.sf.hibernate.dialect.OracleDialect, user.language=en, java.specification.vendor=Sun Microsystems Inc., awt.toolkit=sun.awt.windows.WToolkit, hibernate.cglib.use_reflection_optimizer=true, java.vm.info=mixed mode, java.version=1.3.1_04, java.ext.dirs=C:\jdk1.3.1_04\jre\lib\ext, sun.boot.class.path=C:\jdk1.3.1_04\jre\lib\rt.jar;C:\jdk1.3.1_04\jre\lib\i18n.jar;C:\jdk1.3.1_04\jre\lib\sunrsasign.jar;C:\jdk1.3.1_04\jre\classes, java.vendor=Sun Microsystems Inc., file.separator=\, hibernate.connection.provider_class=org.springframework.orm.hibernate.LocalDataSourceConnectionProvider, java.vendor.url.bug=http://java.sun.com/cgi-bin/bugreport.cgi, sun.io.unicode.encoding=UnicodeLittle, sun.cpu.endian=little, user.region=AU, sun.cpu.isalist=pentium i486 i386}
16:28:56,443 DEBUG [SessionFactoryObjectFactory] initializing class SessionFactoryObjectFactory
16:28:56,453 DEBUG [SessionFactoryObjectFactory] registered: fd818583fd4b78d500fd4b78d6fb0000 (unnamed)
16:28:56,453 INFO [SessionFactoryObjectFactory] no JNDI name configured
16:28:56,453 DEBUG [SessionFactoryImpl] instantiated session factory
16:28:56,453 DEBUG [DefaultListableBeanFactory] Invoking BeanPostProcessors after initialization of bean 'sessionFactory'
16:28:56,453 DEBUG [DefaultListableBeanFactory] Calling code asked for FactoryBean instance for name 'sessionFactory'
16:28:56,473 DEBUG [DefaultListableBeanFactory] Returning cached instance of singleton bean 'sessionFactory'
16:28:56,473 DEBUG [DefaultListableBeanFactory] Bean with name 'sessionFactory' is a factory bean
16:28:56,473 INFO [DefaultListableBeanFactory] Creating shared instance of singleton bean 'transactionManager'
16:28:56,473 DEBUG [DefaultListableBeanFactory] Creating instance of bean 'transactionManager' with merged definition [Root bean with class [org.springframework.orm.hibernate.HibernateTransactionManager] defined in class path resource [au/com/sealcorp/apm/spring/applicationContext.xml]]
16:28:56,483 DEBUG [CachedIntrospectionResults] Getting BeanInfo for class [org.springframework.orm.hibernate.HibernateTransactionManager]
16:28:56,503 DEBUG [CachedIntrospectionResults] Caching PropertyDescriptors for class [org.springframework.orm.hibernate.HibernateTransactionManager]
16:28:56,503 DEBUG [CachedIntrospectionResults] Found property 'entityInterceptor' of type [interface net.sf.hibernate.Interceptor]; editor=[null]
16:28:56,503 DEBUG [CachedIntrospectionResults] Found property 'transactionSynchronizationName' of type [class java.lang.String]; editor=[null]
16:28:56,503 DEBUG [CachedIntrospectionResults] Found property 'rollbackOnCommitFailure' of type [boolean]; editor=[null]
16:28:56,503 DEBUG [CachedIntrospectionResults] Found property 'jdbcExceptionTranslator' of type [interface org.springframework.jdbc.support.SQLExceptionTranslator]; editor=[null]
16:28:56,503 DEBUG [CachedIntrospectionResults] Found property 'class' of type [class java.lang.Class]; editor=[null]
16:28:56,503 DEBUG [CachedIntrospectionResults] Found property 'sessionFactory' of type [interface net.sf.hibernate.SessionFactory]; editor=[null]
16:28:56,503 DEBUG [CachedIntrospectionResults] Found property 'dataSource' of type [interface javax.sql.DataSource]; editor=[null]
16:28:56,533 DEBUG [CachedIntrospectionResults] Found property 'transactionSynchronization' of type [int]; editor=[null]
16:28:56,533 DEBUG [CachedIntrospectionResults] Class [org.springframework.orm.hibernate.HibernateTransactionManager] is cache-safe
16:28:56,533 DEBUG [DefaultListableBeanFactory] Resolving reference from property 'sessionFactory' in bean 'transactionManager' to bean 'sessionFactory'
16:28:56,533 DEBUG [DefaultListableBeanFactory] Returning cached instance of singleton bean 'sessionFactory'
16:28:56,543 DEBUG [DefaultListableBeanFactory] Bean with name 'sessionFactory' is a factory bean
16:28:56,543 DEBUG [BeanWrapperImpl] About to invoke write method [public void org.springframework.orm.hibernate.HibernateTransactionManager.setSessionFactory(net.sf.hibernate.SessionFactory)] on object of class [org.springframework.orm.hibernate.HibernateTransactionManager]
16:28:56,543 DEBUG [BeanWrapperImpl] Invoked write method [public void org.springframework.orm.hibernate.HibernateTransactionManager.setSessionFactory(net.sf.hibernate.SessionFactory)] with value of type [net.sf.hibernate.SessionFactory]
16:28:56,543 DEBUG [DefaultListableBeanFactory] Invoking BeanPostProcessors before initialization of bean 'transactionManager'
16:28:56,543 DEBUG [DefaultListableBeanFactory] Calling afterPropertiesSet() on bean with beanName 'transactionManager'
16:28:56,543 INFO [HibernateTransactionManager] Using DataSource [org.apache.commons.dbcp.BasicDataSource@4ce7a] from Hibernate SessionFactory for HibernateTransactionManager
16:28:56,543 DEBUG [DefaultListableBeanFactory] Invoking BeanPostProcessors after initialization of bean 'transactionManager'
16:28:56,553 INFO [DefaultListableBeanFactory] Creating shared instance of singleton bean 'clientDAOTarget'
16:28:56,553 DEBUG [DefaultListableBeanFactory] Creating instance of bean 'clientDAOTarget' with merged definition [Root bean with class [au.com.sealcorp.apm.client.ClientDAOImpl] defined in class path resource [au/com/sealcorp/apm/spring/applicationContext.xml]]
16:28:56,553 DEBUG [CachedIntrospectionResults] Getting BeanInfo for class [au.com.sealcorp.apm.client.ClientDAOImpl]
16:28:56,563 DEBUG [CachedIntrospectionResults] Caching PropertyDescriptors for class [au.com.sealcorp.apm.client.ClientDAOImpl]
16:28:56,563 DEBUG [CachedIntrospectionResults] Found property 'hibernateTemplate' of type [class org.springframework.orm.hibernate.HibernateTemplate]; editor=[null]
16:28:56,563 DEBUG [CachedIntrospectionResults] Found property 'class' of type [class java.lang.Class]; editor=[null]
16:28:56,563 DEBUG [CachedIntrospectionResults] Found property 'sessionFactory' of type [interface net.sf.hibernate.SessionFactory]; editor=[null]
16:28:56,573 DEBUG [CachedIntrospectionResults] Class [au.com.sealcorp.apm.client.ClientDAOImpl] is cache-safe
16:28:56,573 DEBUG [DefaultListableBeanFactory] Resolving reference from property 'sessionFactory' in bean 'clientDAOTarget' to bean 'sessionFactory'
16:28:56,573 DEBUG [DefaultListableBeanFactory] Returning cached instance of singleton bean 'sessionFactory'
16:28:56,573 DEBUG [DefaultListableBeanFactory] Bean with name 'sessionFactory' is a factory bean
16:28:56,573 DEBUG [BeanWrapperImpl] About to invoke write method [public final void org.springframework.orm.hibernate.support.HibernateDaoSupport.setSessionFactory(net.sf.hibernate.SessionFactory)] on object of class [au.com.sealcorp.apm.client.ClientDAOImpl]
16:28:56,583 DEBUG [BeanWrapperImpl] Invoked write method [public final void org.springframework.orm.hibernate.support.HibernateDaoSupport.setSessionFactory(net.sf.hibernate.SessionFactory)] with value of type [net.sf.hibernate.SessionFactory]
16:28:56,583 DEBUG [DefaultListableBeanFactory] Invoking BeanPostProcessors before initialization of bean 'clientDAOTarget'
16:28:56,583 DEBUG [DefaultListableBeanFactory] Calling afterPropertiesSet() on bean with beanName 'clientDAOTarget'
16:28:56,583 DEBUG [DefaultListableBeanFactory] Invoking BeanPostProcessors after initialization of bean 'clientDAOTarget'
16:28:56,593 INFO [DefaultListableBeanFactory] Creating shared instance of singleton bean 'clientDAO'
16:28:56,593 DEBUG [DefaultListableBeanFactory] Creating instance of bean 'clientDAO' with merged definition [Root bean with class [org.springframework.transaction.interceptor.TransactionProxyFactoryBean] defined in class path resource [au/com/sealcorp/apm/spring/applicationContext.xml]]
16:28:56,603 DEBUG [CachedIntrospectionResults] Getting BeanInfo for class [org.springframework.transaction.interceptor.TransactionProxyFactoryBean]
16:28:56,643 DEBUG [CachedIntrospectionResults] Caching PropertyDescriptors for class [org.springframework.transaction.interceptor.TransactionProxyFactoryBean]
16:28:56,643 DEBUG [CachedIntrospectionResults] Found property 'transactionManager' of type [interface org.springframework.transaction.PlatformTransactionManager]; editor=[null]
16:28:56,643 DEBUG [CachedIntrospectionResults] Found property 'aopProxyFactory' of type [interface org.springframework.aop.framework.AopProxyFactory]; editor=[null]
16:28:56,643 DEBUG [CachedIntrospectionResults] Found property 'pointcut' of type [interface org.springframework.aop.Pointcut]; editor=[null]
16:28:56,643 DEBUG [CachedIntrospectionResults] Found property 'optimize' of type [boolean]; editor=[null]
16:28:56,643 DEBUG [CachedIntrospectionResults] Found property 'transactionAttributeSource' of type [interface org.springframework.transaction.interceptor.TransactionAttributeSource]; editor=[null]
16:28:56,643 DEBUG [CachedIntrospectionResults] Found property 'class' of type [class java.lang.Class]; editor=[null]
16:28:56,643 DEBUG [CachedIntrospectionResults] Found property 'singleton' of type [boolean]; editor=[null]
16:28:56,653 DEBUG [CachedIntrospectionResults] Found property 'preInterceptors' of type [class [Ljava.lang.Object;]; editor=[null]
16:28:56,653 DEBUG [CachedIntrospectionResults] Found property 'objectType' of type [class java.lang.Class]; editor=[null]
16:28:56,653 DEBUG [CachedIntrospectionResults] Found property 'transactionAttributes' of type [class java.util.Properties]; editor=[null]
16:28:56,653 DEBUG [CachedIntrospectionResults] Found property 'exposeProxy' of type [boolean]; editor=[null]
16:28:56,653 DEBUG [CachedIntrospectionResults] Found property 'frozen' of type [boolean]; editor=[null]
16:28:56,653 DEBUG [CachedIntrospectionResults] Found property 'proxyInterfaces' of type [class [Ljava.lang.String;]; editor=[null]
16:28:56,653 DEBUG [CachedIntrospectionResults] Found property 'postInterceptors' of type [class [Ljava.lang.Object;]; editor=[null]
16:28:56,653 DEBUG [CachedIntrospectionResults] Found property 'target' of type [class java.lang.Object]; editor=[null]
16:28:56,653 DEBUG [CachedIntrospectionResults] Found property 'object' of type [class java.lang.Object]; editor=[null]
16:28:56,653 DEBUG [CachedIntrospectionResults] Found property 'advisorAdapterRegistry' of type [interface org.springframework.aop.framework.adapter.AdvisorAdapterRegistry]; editor=[null]
16:28:56,663 DEBUG [CachedIntrospectionResults] Found property 'proxyTargetClass' of type [boolean]; editor=[null]
16:28:56,663 DEBUG [CachedIntrospectionResults] Class [org.springframework.transaction.interceptor.TransactionProxyFactoryBean] is cache-safe
16:28:56,663 DEBUG [DefaultListableBeanFactory] Resolving reference from property 'transactionManager' in bean 'clientDAO' to bean 'transactionManager'
16:28:56,663 DEBUG [DefaultListableBeanFactory] Returning cached instance of singleton bean 'transactionManager'
16:28:56,663 DEBUG [DefaultListableBeanFactory] Resolving reference from property 'target' in bean 'clientDAO' to bean 'clientDAOTarget'
16:28:56,663 DEBUG [DefaultListableBeanFactory] Returning cached instance of singleton bean 'clientDAOTarget'
16:28:56,663 DEBUG [BeanWrapperImpl] About to invoke write method [public void org.springframework.transaction.interceptor.TransactionProxyFactoryBean.setTransactionManager(org.springframework.transaction.PlatformTransactionManager)] on object of class [org.springframework.transaction.interceptor.TransactionProxyFactoryBean]
16:28:56,673 DEBUG [BeanWrapperImpl] Invoked write method [public void org.springframework.transaction.interceptor.TransactionProxyFactoryBean.setTransactionManager(org.springframework.transaction.PlatformTransactionManager)] with value of type [org.springframework.transaction.PlatformTransactionManager]
16:28:56,673 DEBUG [BeanWrapperImpl] About to invoke write method [public void org.springframework.transaction.interceptor.TransactionProxyFactoryBean.setTarget(java.lang.Object)] on object of class [org.springframework.transaction.interceptor.TransactionProxyFactoryBean]
16:28:56,673 DEBUG [BeanWrapperImpl] Invoked write method [public void org.springframework.transaction.interceptor.TransactionProxyFactoryBean.setTarget(java.lang.Object)] with value of type [java.lang.Object]
16:28:56,673 DEBUG [BeanWrapperImpl] About to invoke write method [public void org.springframework.transaction.interceptor.TransactionProxyFactoryBean.setTransactionAttributes(java.util.Properties)] on object of class [org.springframework.transaction.interceptor.TransactionProxyFactoryBean]
16:28:56,693 DEBUG [NameMatchTransactionAttributeSource] Adding transactional method [save*] with attribute [PROPAGATION_REQUIRED,ISOLATION_DEFAULT]
16:28:56,693 DEBUG [BeanWrapperImpl] Invoked write method [public void org.springframework.transaction.interceptor.TransactionProxyFactoryBean.setTransactionAttributes(java.util.Properties)] with value of type [java.util.Properties]
16:28:56,693 DEBUG [DefaultListableBeanFactory] Invoking BeanPostProcessors before initialization of bean 'clientDAO'
16:28:56,693 DEBUG [DefaultListableBeanFactory] Calling afterPropertiesSet() on bean with beanName 'clientDAO'
16:28:56,743 DEBUG [ProxyFactory] Added new aspect interface: interface au.com.sealcorp.apm.client.ClientDAO
16:28:56,743 DEBUG [ProxyFactory] Added new aspect interface: interface org.springframework.beans.factory.InitializingBean
16:28:56,743 DEBUG [JdkDynamicAopProxy] Creating JDK dynamic proxy for [class au.com.sealcorp.apm.client.ClientDAOImpl]
16:28:56,763 DEBUG [DefaultListableBeanFactory] Invoking BeanPostProcessors after initialization of bean 'clientDAO'
16:28:56,763 DEBUG [DefaultListableBeanFactory] Calling code asked for FactoryBean instance for name 'clientDAO'
16:28:56,763 DEBUG [DefaultListableBeanFactory] Returning cached instance of singleton bean 'clientDAO'
16:28:56,763 DEBUG [DefaultListableBeanFactory] Bean with name 'clientDAO' is a factory bean
16:28:56,773 DEBUG [ClassPathXmlApplicationContext] Publishing event in context [org.springframework.context.support.ClassPathXmlApplicationContext;hashCode=1652601]: org.springframework.context.event.ContextRefreshedEvent[source=org.springframework.context.support.ClassPathXmlApplicationContext: displayName=[org.springframework.context.support.ClassPathXmlApplicationContext;hashCode=1652601]; startup date=[Tue Jun 22 16:28:54 WST 2004]; root of ApplicationContext hierarchy]
16:28:56,773 DEBUG [DefaultListableBeanFactory] Returning cached instance of singleton bean 'clientDAO'
16:28:56,773 DEBUG [DefaultListableBeanFactory] Bean with name 'clientDAO' is a factory bean
16:28:56,793 DEBUG [SessionFactoryUtils] Opening Hibernate session
16:28:56,853 DEBUG [SessionImpl] opened session
16:28:56,853 DEBUG [SessionImpl] loading [au.com.sealcorp.apm.client.Client#566222]
16:28:56,853 DEBUG [SessionImpl] attempting to resolve [au.com.sealcorp.apm.client.Client#566222]
16:28:56,853 DEBUG [SessionImpl] object not resolved in any cache [au.com.sealcorp.apm.client.Client#566222]
16:28:56,853 DEBUG [NormalizedEntityPersister] Materializing entity: [au.com.sealcorp.apm.client.Client#566222]
16:28:56,853 DEBUG [BatcherImpl] about to open: 0 open PreparedStatements, 0 open ResultSets

The following statement includes the CLIENT_RELATIONSHIP table but not CLIENT_ADDRESS:

16:28:56,853 DEBUG [SQL] select client0_.CLIENT_SEQ as CLIENT_SEQ0_, decode (client0_.CLIENT_SEQ, client0__1_.CLIENT_SEQ, 1, client0__2_.CLIENT_SEQ, 2,0 ) as clazz_0_, client0_.CLIENT_TYPE as CLIENT_T2_0_0_, client0_.CONTACT_METHOD as CONTACT_3_0_0_, client0_.WORK_NUMBER as WORK_NUM4_0_0_, client0_.FAX_NUMBER as FAX_NUMBER0_0_, client0_.EMAIL_ADDRESS as EMAIL_AD6_0_0_, client0_.TAX_FILE_NUMBER as TAX_FILE7_0_0_, client0__1_.TITLE as TITLE3_0_, client0__1_.SURNAME as SURNAME3_0_, client0__1_.GIVEN_NAMES as GIVEN_NA4_3_0_, client0__1_.SALUTATION as SALUTATION3_0_, client0__1_.DATE_OF_BIRTH as DATE_OF_6_3_0_, client0__1_.SEX as SEX3_0_, client0__1_.HOME_NUMBER as HOME_NUM8_3_0_, client0__1_.MOBILE_NUMBER as MOBILE_N9_3_0_, client0__2_.ORGANISATION_TYPE as ORGANISA2_4_0_, client0__2_.NAME as NAME4_0_, client0__2_.AUSTRALIAN_BUSINESS_NUMBER as AUSTRALI4_4_0_, relationsh1_.CLIENT_SEQ_TARGET as CLIENT_S2___, relationsh1_.CLIENT_RELATIONSHIP_TYPE as CLIENT_R3___, relationsh1_.DEPENDANT as DEPENDANT__, relationsh1_.CLIENT_SEQ_SOURCE as CLIENT_S1___ from APM.CLIENT client0_, APM.PERSON client0__1_, APM.ORGANISATION client0__2_, APM.CLIENT_RELATIONSHIP relationsh1_ where client0_.CLIENT_SEQ=? and client0_.CLIENT_SEQ=relationsh1_.CLIENT_SEQ_SOURCE(+) and client0_.CLIENT_SEQ=client0__1_.CLIENT_SEQ(+) and client0_.CLIENT_SEQ=client0__2_.CLIENT_SEQ(+)

Hibernate: select client0_.CLIENT_SEQ as CLIENT_SEQ0_, decode (client0_.CLIENT_SEQ, client0__1_.CLIENT_SEQ, 1, client0__2_.CLIENT_SEQ, 2,0 ) as clazz_0_, client0_.CLIENT_TYPE as CLIENT_T2_0_0_, client0_.CONTACT_METHOD as CONTACT_3_0_0_, client0_.WORK_NUMBER as WORK_NUM4_0_0_, client0_.FAX_NUMBER as FAX_NUMBER0_0_, client0_.EMAIL_ADDRESS as EMAIL_AD6_0_0_, client0_.TAX_FILE_NUMBER as TAX_FILE7_0_0_, client0__1_.TITLE as TITLE3_0_, client0__1_.SURNAME as SURNAME3_0_, client0__1_.GIVEN_NAMES as GIVEN_NA4_3_0_, client0__1_.SALUTATION as SALUTATION3_0_, client0__1_.DATE_OF_BIRTH as DATE_OF_6_3_0_, client0__1_.SEX as SEX3_0_, client0__1_.HOME_NUMBER as HOME_NUM8_3_0_, client0__1_.MOBILE_NUMBER as MOBILE_N9_3_0_, client0__2_.ORGANISATION_TYPE as ORGANISA2_4_0_, client0__2_.NAME as NAME4_0_, client0__2_.AUSTRALIAN_BUSINESS_NUMBER as AUSTRALI4_4_0_, relationsh1_.CLIENT_SEQ_TARGET as CLIENT_S2___, relationsh1_.CLIENT_RELATIONSHIP_TYPE as CLIENT_R3___, relationsh1_.DEPENDANT as DEPENDANT__, relationsh1_.CLIENT_SEQ_SOURCE as CLIENT_S1___ from APM.CLIENT client0_, APM.PERSON client0__1_, APM.ORGANISATION client0__2_, APM.CLIENT_RELATIONSHIP relationsh1_ where client0_.CLIENT_SEQ=? and client0_.CLIENT_SEQ=relationsh1_.CLIENT_SEQ_SOURCE(+) and client0_.CLIENT_SEQ=client0__1_.CLIENT_SEQ(+) and client0_.CLIENT_SEQ=client0__2_.CLIENT_SEQ(+)


16:28:56,863 DEBUG [BatcherImpl] preparing statement
16:28:56,883 DEBUG [LongType] binding '566222' to parameter: 1
16:28:56,893 DEBUG [Loader] processing result set
16:28:56,903 DEBUG [Loader] result row: 566222
16:28:56,903 DEBUG [IntegerType] returning '2' as column: clazz_0_
16:28:56,903 DEBUG [Loader] Initializing object from ResultSet: 566222
16:28:56,903 DEBUG [Loader] Hydrating entity: au.com.sealcorp.apm.client.Organisation#566222
16:28:56,903 DEBUG [StringType] returning 'TRUST' as column: ORGANISA2_4_0_
16:28:56,903 DEBUG [StringType] returning 'My org' as column: NAME4_0_
16:28:56,903 DEBUG [StringType] returning '123456' as column: AUSTRALI4_4_0_
16:28:56,903 DEBUG [StringType] returning 'ORGANISATION' as column: CLIENT_T2_0_0_
16:28:56,903 DEBUG [StringType] returning 'PHONE' as column: CONTACT_3_0_0_
16:28:56,903 DEBUG [StringType] returning '123456' as column: WORK_NUM4_0_0_
16:28:56,903 DEBUG [StringType] returning '123456' as column: FAX_NUMBER0_0_
16:28:56,903 DEBUG [StringType] returning 'blah@blah' as column: EMAIL_AD6_0_0_
16:28:56,903 DEBUG [StringType] returning '1087877308251' as column: TAX_FILE7_0_0_
16:28:56,933 DEBUG [LongType] returning '566222' as column: CLIENT_S1___
16:28:56,933 DEBUG [Loader] found row of collection: [au.com.sealcorp.apm.client.Client.relationships#566222]
16:28:56,933 DEBUG [SessionImpl] new collection: instantiating
16:28:56,943 DEBUG [LongType] returning '566171' as column: CLIENT_S2___
16:28:56,943 DEBUG [StringType] returning 'SPOUSE' as column: CLIENT_R3___
16:28:56,943 DEBUG [BooleanType] returning 'false' as column: DEPENDANT__
16:28:56,943 DEBUG [Loader] result row: 566222
16:28:56,943 DEBUG [LongType] returning '566222' as column: CLIENT_S1___
16:28:56,943 DEBUG [Loader] found row of collection: [au.com.sealcorp.apm.client.Client.relationships#566222]
16:28:56,943 DEBUG [SessionImpl] reading row
16:28:56,943 DEBUG [LongType] returning '566171' as column: CLIENT_S2___
16:28:56,954 DEBUG [StringType] returning 'TRUSTEE' as column: CLIENT_R3___
16:28:56,954 DEBUG [BooleanType] returning 'false' as column: DEPENDANT__
16:28:56,954 DEBUG [Loader] done processing result set (2 rows)
16:28:56,954 DEBUG [BatcherImpl] done closing: 0 open PreparedStatements, 0 open ResultSets
16:28:56,954 DEBUG [BatcherImpl] closing statement
16:28:56,954 DEBUG [Loader] total objects hydrated: 1
16:28:56,954 DEBUG [SessionImpl] resolving associations for [au.com.sealcorp.apm.client.Organisation#566222]
16:28:56,954 DEBUG [SessionImpl] returning loading collection:[au.com.sealcorp.apm.client.Client.relationships#566222]
16:28:56,954 DEBUG [SessionImpl] creating collection wrapper:[au.com.sealcorp.apm.client.Client.addresses#566222]
16:28:56,954 DEBUG [SessionImpl] done materializing entity [au.com.sealcorp.apm.client.Organisation#566222]
16:28:56,954 DEBUG [SessionImpl] 1 collections were found in result set
16:28:56,954 DEBUG [SessionImpl] collection fully initialized: [au.com.sealcorp.apm.client.Client.relationships#566222]
16:28:56,964 DEBUG [SessionImpl] 1 collections initialized
16:28:56,964 DEBUG [SessionImpl] initializing non-lazy collections
16:28:56,964 DEBUG [SessionImpl] initializing collection [au.com.sealcorp.apm.client.Client.addresses#566222]
16:28:56,964 DEBUG [SessionImpl] checking second-level cache
16:28:56,964 DEBUG [SessionImpl] collection not cached
16:28:56,964 DEBUG [BatcherImpl] about to open: 0 open PreparedStatements, 0 open ResultSets

The following query loads up the row from CLIENT_ADDRESS:

16:28:56,964 DEBUG [SQL] select addresses0_.ADDRESS_TYPE as ADDRESS_2___, addresses0_.ADDRESS_1 as ADDRESS_1__, addresses0_.ADDRESS_2 as ADDRESS_2__, addresses0_.ADDRESS_3 as ADDRESS_3__, addresses0_.ADDRESS_4 as ADDRESS_4__, addresses0_.STATE as STATE__, addresses0_.POSTCODE as POSTCODE__, addresses0_.CLIENT_SEQ as CLIENT_SEQ__ from APM.CLIENT_ADDRESS addresses0_ where addresses0_.CLIENT_SEQ=?

Hibernate: select addresses0_.ADDRESS_TYPE as ADDRESS_2___, addresses0_.ADDRESS_1 as ADDRESS_1__, addresses0_.ADDRESS_2 as ADDRESS_2__, addresses0_.ADDRESS_3 as ADDRESS_3__, addresses0_.ADDRESS_4 as ADDRESS_4__, addresses0_.STATE as STATE__, addresses0_.POSTCODE as POSTCODE__, addresses0_.CLIENT_SEQ as CLIENT_SEQ__ from APM.CLIENT_ADDRESS addresses0_ where addresses0_.CLIENT_SEQ=?


16:28:56,964 DEBUG [BatcherImpl] preparing statement
16:28:56,964 DEBUG [LongType] binding '566222' to parameter: 1
16:28:56,974 DEBUG [Loader] result set contains (possibly empty) collection: [au.com.sealcorp.apm.client.Client.addresses#566222]
16:28:56,974 DEBUG [SessionImpl] uninitialized collection: initializing
16:28:56,974 DEBUG [Loader] processing result set
16:28:56,974 DEBUG [Loader] result row:
16:28:56,974 DEBUG [LongType] returning '566222' as column: CLIENT_SEQ__
16:28:56,974 DEBUG [Loader] found row of collection: [au.com.sealcorp.apm.client.Client.addresses#566222]
16:28:56,974 DEBUG [SessionImpl] reading row
16:28:56,974 DEBUG [StringType] returning 'POSTAL' as column: ADDRESS_2___
16:28:56,974 DEBUG [StringType] returning 'Address 1' as column: ADDRESS_1__
16:28:56,974 DEBUG [StringType] returning 'Address 2' as column: ADDRESS_2__
16:28:56,974 DEBUG [StringType] returning null as column: ADDRESS_3__
16:28:56,974 DEBUG [StringType] returning null as column: ADDRESS_4__
16:28:56,974 DEBUG [StringType] returning 'WA' as column: STATE__
16:28:56,974 DEBUG [StringType] returning '6000' as column: POSTCODE__
16:28:56,984 DEBUG [Loader] result row:
16:28:56,984 DEBUG [LongType] returning '566222' as column: CLIENT_SEQ__
16:28:56,984 DEBUG [Loader] found row of collection: [au.com.sealcorp.apm.client.Client.addresses#566222]
16:28:56,984 DEBUG [SessionImpl] reading row
16:28:56,984 DEBUG [StringType] returning 'STREET' as column: ADDRESS_2___
16:28:56,984 DEBUG [StringType] returning 'Address 1' as column: ADDRESS_1__
16:28:56,984 DEBUG [StringType] returning 'Address 2' as column: ADDRESS_2__
16:28:56,984 DEBUG [StringType] returning null as column: ADDRESS_3__
16:28:56,984 DEBUG [StringType] returning null as column: ADDRESS_4__
16:28:56,984 DEBUG [StringType] returning 'WA' as column: STATE__
16:28:56,984 DEBUG [StringType] returning '6000' as column: POSTCODE__
16:28:56,984 DEBUG [Loader] done processing result set (2 rows)
16:28:56,984 DEBUG [BatcherImpl] done closing: 0 open PreparedStatements, 0 open ResultSets
16:28:56,984 DEBUG [BatcherImpl] closing statement
16:28:56,994 DEBUG [SessionImpl] 1 collections were found in result set
16:28:56,994 DEBUG [SessionImpl] collection fully initialized: [au.com.sealcorp.apm.client.Client.addresses#566222]
16:28:56,994 DEBUG [SessionImpl] 1 collections initialized
16:28:56,994 DEBUG [SessionImpl] collection initialized
16:28:56,994 DEBUG [HibernateTemplate] Eagerly flushing Hibernate session
16:28:56,994 DEBUG [SessionImpl] flushing session
16:28:56,994 DEBUG [SessionImpl] Flushing entities and processing referenced collections
16:28:56,994 DEBUG [SessionImpl] Collection found: [au.com.sealcorp.apm.client.Client.relationships#566222], was: [au.com.sealcorp.apm.client.Client.relationships#566222]
16:28:56,994 DEBUG [SessionImpl] Collection found: [au.com.sealcorp.apm.client.Client.addresses#566222], was: [au.com.sealcorp.apm.client.Client.addresses#566222]
16:28:57,004 DEBUG [SessionImpl] Processing unreferenced collections
16:28:57,004 DEBUG [SessionImpl] Scheduling collection removes/(re)creates/updates
16:28:57,004 DEBUG [SessionImpl] Flushed: 0 insertions, 0 updates, 0 deletions to 1 objects
16:28:57,004 DEBUG [SessionImpl] Flushed: 0 (re)creations, 0 updates, 0 removals to 2 collections
16:28:57,004 DEBUG [Printer] listing entities:
16:28:57,004 DEBUG [Printer] au.com.sealcorp.apm.client.Organisation{clientType=ORGANISATION, name=My org, id=566222, emailAddress=blah@blah, organisationType=TRUST, faxNumber=123456, addresses=[Address{postcode=6000, addressType=STREET, address4=null, address3=null, address2=Address 2, state=WA, address1=Address 1}, Address{postcode=6000, addressType=POSTAL, address4=null, address3=null, address2=Address 2, state=WA, address1=Address 1}], contactMethod=PHONE, relationships=[Relationship{clientSeq=566171, relationshipType=TRUSTEE, dependant=false}, Relationship{clientSeq=566171, relationshipType=SPOUSE, dependant=false}], australianBusinessNumber=123456, taxFileNumber=1087877308251, workNumber=123456}
16:28:57,034 DEBUG [SessionImpl] executing flush
16:28:57,034 DEBUG [SessionImpl] post flush
16:28:57,034 DEBUG [SessionFactoryUtils] Closing Hibernate session
16:28:57,034 DEBUG [SessionImpl] closing session
16:28:57,034 DEBUG [SessionImpl] disconnecting session
16:28:57,044 DEBUG [SessionImpl] transaction completion


Top
 Profile  
 
 Post subject:
PostPosted: Tue Jun 22, 2004 12:12 pm 
Hibernate Team
Hibernate Team

Joined: Tue Aug 26, 2003 12:50 pm
Posts: 5130
Location: Melbourne, Australia
This limitation is documented!


Top
 Profile  
 
 Post subject:
PostPosted: Tue Jun 22, 2004 8:57 pm 
Newbie

Joined: Thu Jun 17, 2004 1:15 am
Posts: 7
OK. Thanks for your reply.

Out of interest, am I modelling these requirements correctly, or should I be using some kind of many-to-many relationship?


Top
 Profile  
 
Display posts from previous:  Sort by  
Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 3 posts ] 

All times are UTC - 5 hours [ DST ]


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Search for:
© Copyright 2014, Red Hat Inc. All rights reserved. JBoss and Hibernate are registered trademarks and servicemarks of Red Hat, Inc.