-->
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.  [ 2 posts ] 
Author Message
 Post subject: Weird null pointer
PostPosted: Tue Dec 18, 2007 8:02 am 
Newbie

Joined: Tue Dec 18, 2007 7:41 am
Posts: 1
Ok I have this annoying problem with NullPointerException inside a size() method that is called on Set object. Method looks like this (after serveral mutations...):

Asset.java
Code:

    private Set attributeValues;

    public Set getAttributeValues() {

        TreeSet sorted = new TreeSet();

//        log.debug("##" + attributeValues);
        if (attributeValues == null) {
            log.debug("### attributeValues NULL");
        }
       
        if (this.attributeValues != null){
            if (!this.attributeValues.isEmpty()) {
                sorted.addAll(this.attributeValues);
            }
        }

        return sorted;

    }

    public void setAttributeValues(Set attributeValues) {
        this.attributeValues = attributeValues;

    }


Hibernate version: 2.0.6

Mapping documents:

Asset.hbm.xml
Code:
<?xml version="1.0"?>

<!DOCTYPE hibernate-mapping PUBLIC

        "-//Hibernate/Hibernate Mapping DTD//EN"

        "http://hibernate.sourceforge.net/hibernate-mapping-2.0.dtd" >



<hibernate-mapping package="com.bsi.ams.model">

    <class name="Asset" table="asset">

        <meta attribute="sync-DAO">false</meta>

        <id
                name="Id"
                type="integer"
                column="id"
                unsaved-value="0"
                >

            <generator class="sequence">
                <param name="sequence">asset_id_seq</param>
            </generator>

        </id>

        <property
         name="AssetId"
         column="asset_id"
         type="integer"
         not-null="true"
            insert="false"
        />

        <property
            name="UpdatedOn"
            column="updated_on"
            type="timestamp"
            not-null="true"
            length="8"
        />

        <property
            name="UpdatedBy"
            column="updated_by"
            type="string"
            not-null="true"
            length="3"
        />

        <property
            name="Current"
            column="is_current"
            type="boolean"
            not-null="false"
            length="1"
            insert="false"
        />

        <property
            name="Version"
            column="version"
            type="integer"
            not-null="true"
            insert="false"
        />

        <many-to-one
            name="Type"
            column="type_id"
            class="Type"
            not-null="false"
        >

        </many-to-one>

        <property
            name="Code"
            column="code"
            type="string"
            not-null="true"
            length="255"
        />

        <property
            name="RemovedOn"
            column="removed_on"
            type="timestamp"
            not-null="false"
            length="8"
        />

        <property
            name="Manager"
            column="manager"
            type="string"
            not-null="true"
            length="3"
        />

        <property
            name="OwnershipType"
            column="ownership_type"
            type="string"
            not-null="true"
            length="20"
        />

        <many-to-one
            name="Owner"
            column="owner_id"
            class="Owner"
            not-null="false"
        >

        </many-to-one>

        <many-to-one
            name="Office"
            column="office_id"
            class="Office"
            not-null="false"
        >

        </many-to-one>

        <property
            name="OwnershipBegin"
            column="ownership_begin"
            type="timestamp"
            not-null="false"
            length="8"
        />

        <property
            name="OwnershipEnd"
            column="ownership_end"
            type="timestamp"
            not-null="false"
            length="8"
        />


        <set name="AttributeValues" inverse="true" lazy="true" where="is_current='true'">
            <key column="asset_id"/>
            <one-to-many class="AttributeValue"/>
        </set>


        <set name="Events" inverse="true" where="is_current='true'">
            <key column="asset_id"/>
            <one-to-many class="Event"/>
        </set>

        <set name="Notes" inverse="true">
            <key column="asset_id"/>
            <one-to-many class="Note"/>
        </set>

    </class>

</hibernate-mapping>


AttributeValue.hbm.xml
Code:
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
   "-//Hibernate/Hibernate Mapping DTD//EN"
   "http://hibernate.sourceforge.net/hibernate-mapping-2.0.dtd" >

<hibernate-mapping package="com.bsi.ams.model">
   <class
      name="AttributeValue"
      table="attribute_value"
   >
      <meta attribute="sync-DAO">false</meta>
      <id
         name="Id"
         type="integer"
         column="id"
            unsaved-value="0"
        >
            <generator class="sequence">
                <param name="sequence">attribute_value_id_seq</param>
            </generator>
        </id>

        <property
            name="AttrValueId"
            type="integer"
            column="attribute_value_id"
            not-null="false"
            insert="false"
        />
      <property
            name="UpdatedOn"
            column="updated_on"
            type="timestamp"
            not-null="true"
            length="8"
        />
        <property
            name="UpdatedBy"
            column="updated_by"
            type="string"
            not-null="true"
            length="3"
        />
        <property
            name="Current"
            column="is_current"
            type="boolean"
            not-null="false"
            length="1"
            insert="false"
        />
        <property
            name="Version"
            column="version"
            type="integer"
            not-null="true"
            insert="false"
        />
        <property
            name="ValBoolean"
            column="val_boolean"
            type="boolean"
         not-null="false"
         length="1"
        />
        <property
            name="ValInt"
            column="val_int"
            type="java.lang.Integer"
            not-null="false"
            length="4"
        />
        <property
            name="ValString"
            column="val_string"
            type="string"
            not-null="false"
        />
        <property
            name="ValDate"
            column="val_date"
            type="timestamp"
            not-null="false"
            length="8"
        />
        <many-to-one
            name="Attribute"
            column="attribute_id"
            class="Attribute"
            not-null="false"
        >
        </many-to-one>
        <many-to-one
            name="Asset"
            column="asset_id"
            class="Asset"
            not-null="false"
        >
        </many-to-one>
        <many-to-one
            name="ValElement"
            column="val_element"
            class="AttributeValgroupElement"
            not-null="false"
        >
        </many-to-one>
   </class>
</hibernate-mapping>

Code between sessionFactory.openSession() and session.close():

Code:
public class AssetDAOHibernate extends HibernateDaoSupport implements AssetDAO {

    public Office getOffice(Integer officeId)
    {
        return (Office)getHibernateTemplate().load(Office.class, officeId); 
    }

}


Full stack trace of any exception that occurs:
Quote:
12:40:16,174 INFO [STDOUT] 12:40:16,168 DEBUG [HibernateTransactionManager] Initiating transaction rollback after commit exception
org.springframework.orm.hibernate.HibernateSystemException: Exception occurred inside getter of com.bsi.ams.model.Asset.AttributeValues; nested exception is net.sf.hibernate.PropertyAccessException: Exception occurred inside getter of com.bsi.ams.model.Asset.AttributeValues
Caused by:
net.sf.hibernate.PropertyAccessException: Exception occurred inside getter of com.bsi.ams.model.Asset.AttributeValues
at net.sf.hibernate.property.BasicPropertyAccessor$BasicGetter.get(BasicPropertyAccessor.java:99)
at net.sf.hibernate.persister.AbstractEntityPersister.getPropertyValues(AbstractEntityPersister.java:253)
at net.sf.hibernate.impl.SessionImpl.flushEntity(SessionImpl.java:2502)
at net.sf.hibernate.impl.SessionImpl.flushEntities(SessionImpl.java:2486)
at net.sf.hibernate.impl.SessionImpl.flushEverything(SessionImpl.java:2281)
at net.sf.hibernate.impl.SessionImpl.flush(SessionImpl.java:2260)
at net.sf.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:61)
at org.springframework.orm.hibernate.HibernateTransactionManager.doCommit(HibernateTransactionManager.java:507)
at org.springframework.transaction.support.AbstractPlatformTransactionManager.processCommit(AbstractPlatformTransactionManager.java:662)
at org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(AbstractPlatformTransactionManager.java:632)
at org.springframework.transaction.interceptor.TransactionAspectSupport.commitTransactionAfterReturning(TransactionAspectSupport.java:314)
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:117)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:166)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
at $Proxy118.getOffice(Unknown Source)
at com.bsi.ams.web.controller.AddAssetStage1Controller.onBindAndValidate(AddAssetStage1Controller.java:94)
at org.springframework.web.servlet.mvc.BaseCommandController.bindAndValidate(BaseCommandController.java:376)
at org.springframework.web.servlet.mvc.AbstractFormController.handleRequestInternal(AbstractFormController.java:248)
at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:153)
at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:48)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:857)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:792)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:475)
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:440)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.springframework.orm.hibernate.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:170)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at edu.yale.its.tp.cas.client.filter.CASFilter.doFilter(CASFilter.java:317)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:96)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:138)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:179)
at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:241)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:580)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:613)
Caused by: java.lang.reflect.InvocationTargetException
at sun.reflect.GeneratedMethodAccessor879.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at net.sf.hibernate.property.BasicPropertyAccessor$BasicGetter.get(BasicPropertyAccessor.java:96)
... 55 more
Caused by: java.lang.NullPointerException
at net.sf.hibernate.collection.Set.isEmpty(Set.java:115)
at com.bsi.ams.model.Asset.getAttributeValues(Asset.java:695)
... 59 more
12:40:16,175 INFO [STDOUT] 12:40:16,175 DEBUG [HibernateTransactionManager] Rolling back Hibernate transaction on Session [net.sf.hibernate.impl.SessionImpl@8ed7ea]
12:40:16,176 INFO [STDOUT] 12:40:16,176 DEBUG [HibernateTransactionManager] Triggering afterCompletion synchronization
12:40:16,176 INFO [STDOUT] 12:40:16,176 DEBUG [TransactionSynchronizationManager] Clearing transaction synchronization
12:40:16,176 INFO [STDOUT] 12:40:16,176 DEBUG [TransactionSynchronizationManager] Removed value [org.springframework.jdbc.datasource.ConnectionHolder@df8456] for key [org.jboss.resource.adapter.jdbc.WrapperDataSource@43d9cf] from thread [http-127.0.0.1-8080-1]
12:40:16,177 INFO [STDOUT] 12:40:16,177 DEBUG [DataSourceUtils] Resetting isolation level of JDBC Connection [org.jboss.resource.adapter.jdbc.WrappedConnection@33f0cf] to 2
12:40:16,177 INFO [STDOUT] 12:40:16,177 DEBUG [HibernateTransactionManager] Not closing pre-bound Hibernate Session [net.sf.hibernate.impl.SessionImpl@8ed7ea] after transaction
12:40:16,179 INFO [STDOUT] 12:40:16,177 ERROR [ErrorController] Unexpected exception:
org.springframework.orm.hibernate.HibernateSystemException: Exception occurred inside getter of com.bsi.ams.model.Asset.AttributeValues; nested exception is net.sf.hibernate.PropertyAccessException: Exception occurred inside getter of com.bsi.ams.model.Asset.AttributeValues
Caused by:
net.sf.hibernate.PropertyAccessException: Exception occurred inside getter of com.bsi.ams.model.Asset.AttributeValues
at net.sf.hibernate.property.BasicPropertyAccessor$BasicGetter.get(BasicPropertyAccessor.java:99)
at net.sf.hibernate.persister.AbstractEntityPersister.getPropertyValues(AbstractEntityPersister.java:253)
at net.sf.hibernate.impl.SessionImpl.flushEntity(SessionImpl.java:2502)
at net.sf.hibernate.impl.SessionImpl.flushEntities(SessionImpl.java:2486)
at net.sf.hibernate.impl.SessionImpl.flushEverything(SessionImpl.java:2281)
at net.sf.hibernate.impl.SessionImpl.flush(SessionImpl.java:2260)
at net.sf.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:61)
at org.springframework.orm.hibernate.HibernateTransactionManager.doCommit(HibernateTransactionManager.java:507)
at org.springframework.transaction.support.AbstractPlatformTransactionManager.processCommit(AbstractPlatformTransactionManager.java:662)
at org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(AbstractPlatformTransactionManager.java:632)
at org.springframework.transaction.interceptor.TransactionAspectSupport.commitTransactionAfterReturning(TransactionAspectSupport.java:314)
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:117)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:166)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
at $Proxy118.getOffice(Unknown Source)
at com.bsi.ams.web.controller.AddAssetStage1Controller.onBindAndValidate(AddAssetStage1Controller.java:94)
at org.springframework.web.servlet.mvc.BaseCommandController.bindAndValidate(BaseCommandController.java:376)
at org.springframework.web.servlet.mvc.AbstractFormController.handleRequestInternal(AbstractFormController.java:248)
at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:153)
at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:48)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:857)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:792)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:475)
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:440)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.springframework.orm.hibernate.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:170)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at edu.yale.its.tp.cas.client.filter.CASFilter.doFilter(CASFilter.java:317)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:96)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:138)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:179)
at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:241)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:580)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:613)
Caused by: java.lang.reflect.InvocationTargetException
at sun.reflect.GeneratedMethodAccessor879.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at net.sf.hibernate.property.BasicPropertyAccessor$BasicGetter.get(BasicPropertyAccessor.java:96)
... 55 more
Caused by: java.lang.NullPointerException
at net.sf.hibernate.collection.Set.isEmpty(Set.java:115)
at com.bsi.ams.model.Asset.getAttributeValues(Asset.java:695)
... 59 more
12:40:16,184 INFO [STDOUT] 12:40:16,182 DEBUG [DispatcherServlet] Handler execution resulted in exception - forwarding to resolved error view: ModelAndView: reference to view with name '/errors/error500'; model is {error={errorExceptionMsg=Exception occurred inside getter of com.bsi.ams.model.Asset.AttributeValues; nested exception is net.sf.hibernate.PropertyAccessException: Exception occurred inside getter of com.bsi.ams.model.Asset.AttributeValues

Stack trace exception:
org.springframework.orm.hibernate.SessionFactoryUtils.convertHibernateAccessException(SessionFactoryUtils.java:597)
org.springframework.orm.hibernate.HibernateTransactionManager.convertHibernateAccessException(HibernateTransactionManager.java:604)
org.springframework.orm.hibernate.HibernateTransactionManager.doCommit(HibernateTransactionManager.java:515)
org.springframework.transaction.support.AbstractPlatformTransactionManager.processCommit(AbstractPlatformTransactionManager.java:662)
org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(AbstractPlatformTransactionManager.java:632)
org.springframework.transaction.interceptor.TransactionAspectSupport.commitTransactionAfterReturning(TransactionAspectSupport.java:314)
org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:117)
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:166)
org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
$Proxy118.getOffice(Unknown Source)
com.bsi.ams.web.controller.AddAssetStage1Controller.onBindAndValidate(AddAssetStage1Controller.java:94)
org.springframework.web.servlet.mvc.BaseCommandController.bindAndValidate(BaseCommandController.java:376)
org.springframework.web.servlet.mvc.AbstractFormController.handleRequestInternal(AbstractFormController.java:248)
org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:153)
org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:48)
org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:857)
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:792)
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:475)
org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:440)
javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
org.springframework.orm.hibernate.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:170)
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75)
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
edu.yale.its.tp.cas.client.filter.CASFilter.doFilter(CASFilter.java:317)
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:96)
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75)
org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:138)
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:179)
org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:241)
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:580)
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
java.lang.Thread.run(Thread.java:613)
}}
org.springframework.orm.hibernate.HibernateSystemException: Exception occurred inside getter of com.bsi.ams.model.Asset.AttributeValues; nested exception is net.sf.hibernate.PropertyAccessException: Exception occurred inside getter of com.bsi.ams.model.Asset.AttributeValues
Caused by:
net.sf.hibernate.PropertyAccessException: Exception occurred inside getter of com.bsi.ams.model.Asset.AttributeValues
at net.sf.hibernate.property.BasicPropertyAccessor$BasicGetter.get(BasicPropertyAccessor.java:99)
at net.sf.hibernate.persister.AbstractEntityPersister.getPropertyValues(AbstractEntityPersister.java:253)
at net.sf.hibernate.impl.SessionImpl.flushEntity(SessionImpl.java:2502)
at net.sf.hibernate.impl.SessionImpl.flushEntities(SessionImpl.java:2486)
at net.sf.hibernate.impl.SessionImpl.flushEverything(SessionImpl.java:2281)
at net.sf.hibernate.impl.SessionImpl.flush(SessionImpl.java:2260)
at net.sf.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:61)
at org.springframework.orm.hibernate.HibernateTransactionManager.doCommit(HibernateTransactionManager.java:507)
at org.springframework.transaction.support.AbstractPlatformTransactionManager.processCommit(AbstractPlatformTransactionManager.java:662)
at org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(AbstractPlatformTransactionManager.java:632)
at org.springframework.transaction.interceptor.TransactionAspectSupport.commitTransactionAfterReturning(TransactionAspectSupport.java:314)
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:117)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:166)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
at $Proxy118.getOffice(Unknown Source)
at com.bsi.ams.web.controller.AddAssetStage1Controller.onBindAndValidate(AddAssetStage1Controller.java:94)
at org.springframework.web.servlet.mvc.BaseCommandController.bindAndValidate(BaseCommandController.java:376)
at org.springframework.web.servlet.mvc.AbstractFormController.handleRequestInternal(AbstractFormController.java:248)
at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:153)
at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:48)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:857)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:792)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:475)
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:440)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.Ap
12:40:16,185 INFO [STDOUT] plicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.springframework.orm.hibernate.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:170)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at edu.yale.its.tp.cas.client.filter.CASFilter.doFilter(CASFilter.java:317)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:96)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:138)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:179)
at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:241)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:580)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:613)
Caused by: java.lang.reflect.InvocationTargetException
at sun.reflect.GeneratedMethodAccessor879.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at net.sf.hibernate.property.BasicPropertyAccessor$BasicGetter.get(BasicPropertyAccessor.java:96)
... 55 more
Caused by: java.lang.NullPointerException
at net.sf.hibernate.collection.Set.isEmpty(Set.java:115)
at com.bsi.ams.model.Asset.getAttributeValues(Asset.java:695)
... 59 more
12:40:16,186 INFO [STDOUT] 12:40:16,186 DEBUG [DefaultListableBeanFactory] No bean named '/errors/error500' found in org.springframework.beans.factory.support.DefaultListableBeanFactory@7ed3e0: defining beans [dataSource,sessionFactory,hibernateInterceptor,characterEncodingFilter,eventTypeDAO,eventTypeServiceTarget,eventTypeService,assetDAO,assetServiceTarget,assetService,eventStateDAO,eventStateServiceTarget,eventStateService,ownerDAO,ownerServiceTarget,ownerService,officeServiceTarget,officeService,sectionDAO,sectionServiceTarget,sectionService,typeDAO,typeServiceTarget,typeService,unitDAO,unitServiceTarget,unitService,attributeDAO,attributeServiceTarget,attributeService,noteDAO,noteServiceTarget,noteService,transactionManager]; root of factory hierarchy
12:40:16,187 INFO [STDOUT] 12:40:16,187 DEBUG [ResourceBundleViewResolver] Cached view [/errors/error500_pl]
12:40:16,187 INFO [STDOUT] 12:40:16,187 DEBUG [InternalResourceViewResolver] Cached view [/errors/error500]
12:40:16,187 INFO [STDOUT] 12:40:16,187 DEBUG [DispatcherServlet] Rendering view [org.springframework.web.servlet.view.JstlView: name '/errors/error500'; URL [/WEB-INF/jsp//errors/error500.jsp]] in DispatcherServlet with name 'ams'
12:40:16,188 INFO [STDOUT] 12:40:16,187 DEBUG [JstlView] Rendering view with name '/errors/error500' with model {error={errorExceptionMsg=Exception occurred inside getter of com.bsi.ams.model.Asset.AttributeValues; nested exception is net.sf.hibernate.PropertyAccessException: Exception occurred inside getter of com.bsi.ams.model.Asset.AttributeValues

Stack trace exception:
org.springframework.orm.hibernate.SessionFactoryUtils.convertHibernateAccessException(SessionFactoryUtils.java:597)
org.springframework.orm.hibernate.HibernateTransactionManager.convertHibernateAccessException(HibernateTransactionManager.java:604)
org.springframework.orm.hibernate.HibernateTransactionManager.doCommit(HibernateTransactionManager.java:515)
org.springframework.transaction.support.AbstractPlatformTransactionManager.processCommit(AbstractPlatformTransactionManager.java:662)
org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(AbstractPlatformTransactionManager.java:632)
org.springframework.transaction.interceptor.TransactionAspectSupport.commitTransactionAfterReturning(TransactionAspectSupport.java:314)
org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:117)
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:166)
org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
$Proxy118.getOffice(Unknown Source)
com.bsi.ams.web.controller.AddAssetStage1Controller.onBindAndValidate(AddAssetStage1Controller.java:94)
org.springframework.web.servlet.mvc.BaseCommandController.bindAndValidate(BaseCommandController.java:376)
org.springframework.web.servlet.mvc.AbstractFormController.handleRequestInternal(AbstractFormController.java:248)
org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:153)
org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:48)
org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:857)
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:792)
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:475)
org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:440)
javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
org.springframework.orm.hibernate.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:170)
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75)
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
edu.yale.its.tp.cas.client.filter.CASFilter.doFilter(CASFilter.java:317)
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:96)
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75)
org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:138)
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:179)
org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:241)
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:580)
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
java.lang.Thread.run(Thread.java:613)
}} and static attributes {}


Name and version of the database you are using:
psql (PostgreSQL) 8.2.5

The generated SQL (show_sql=true):
Quote:
12:55:36,971 INFO [STDOUT] Hibernate: select attributev0_.asset_id as asset_id__, attributev0_.id as id__, attributev0_.id as id10_, attributev0_.attribute_value_id as attribut2_10_, attributev0_.updated_on as updated_on10_, attributev0_.updated_by as updated_by10_, attributev0_.is_current as is_current10_, attributev0_.version as version10_, attributev0_.val_boolean as val_bool7_10_, attributev0_.val_int as val_int10_, attributev0_.val_string as val_string10_, attributev0_.val_date as val_date10_, attributev0_.attribute_id as attribu11_10_, attributev0_.asset_id as asset_id10_, attributev0_.val_element as val_ele13_10_, attribute1_.id as id0_, attribute1_.attribute_id as attribut2_0_, attribute1_.updated_on as updated_on0_, attribute1_.updated_by as updated_by0_, attribute1_.is_current as is_current0_, attribute1_.version as version0_, attribute1_.parent as parent0_, attribute1_.name as name0_, attribute1_.is_required as is_requi9_0_, attribute1_.is_unique as is_unique0_, attribute1_.data_type as data_type0_, attribute1_.is_active as is_active0_, attribute1_.unit_id as unit_id0_, attribute1_.type_id as type_id0_, attribute2_.id as id1_, attribute2_.attribute_id as attribut2_1_, attribute2_.updated_on as updated_on1_, attribute2_.updated_by as updated_by1_, attribute2_.is_current as is_current1_, attribute2_.version as version1_, attribute2_.parent as parent1_, attribute2_.name as name1_, attribute2_.is_required as is_requi9_1_, attribute2_.is_unique as is_unique1_, attribute2_.data_type as data_type1_, attribute2_.is_active as is_active1_, attribute2_.unit_id as unit_id1_, attribute2_.type_id as type_id1_, unit3_.id as id2_, unit3_.name as name2_, unit3_.display_name as display_3_2_, unit3_.is_active as is_active2_, type4_.id as id3_, type4_.name as name3_, type4_.description as descript3_3_, type4_.is_active as is_active3_, type4_.section_id as section_id3_, section5_.id as id4_, section5_.name as name4_, section5_.description as descript3_4_, section5_.is_active as is_active4_, attributev6_.id as id5_, attributev6_.attribute_id as attribut2_5_, unit7_.id as id6_, unit7_.name as name6_, unit7_.display_name as display_3_6_, unit7_.is_active as is_active6_, attributev8_.id as id7_, attributev8_.attribute_id as attribut2_7_, attributev9_.id as id8_, attributev9_.val_int as val_int8_, attributev9_.val_string as val_string8_, attributev9_.val_boolean as val_bool4_8_, attributev9_.val_date as val_date8_, attributev9_.valgroup_id as valgroup6_8_, attributev9_.parent as parent8_, attributev10_.id as id9_, attributev10_.attribute_id as attribut2_9_ from attribute_value attributev0_ left outer join attribute attribute1_ on attributev0_.attribute_id=attribute1_.id left outer join attribute attribute2_ on attribute1_.parent=attribute2_.id left outer join unit unit3_ on attribute2_.unit_id=unit3_.id left outer join type type4_ on attribute2_.type_id=type4_.id left outer join section section5_ on type4_.section_id=section5_.id left outer join attribute_valgroup attributev6_ on attribute2_.id=attributev6_.attribute_id left outer join unit unit7_ on attribute1_.unit_id=unit7_.id left outer join attribute_valgroup attributev8_ on attribute1_.id=attributev8_.attribute_id left outer join attribute_valgroup_element attributev9_ on attributev0_.val_element=attributev9_.id left outer join attribute_valgroup attributev10_ on attributev9_.valgroup_id=attributev10_.id where attributev0_.asset_id=? and attributev0_.is_current='true'


Debug level Hibernate log excerpt:


Top
 Profile  
 
 Post subject:
PostPosted: Tue Dec 18, 2007 12:51 pm 
Beginner
Beginner

Joined: Wed May 16, 2007 7:12 am
Posts: 41
Location: London
What are you trying to do?

Code:
set name="AttributeValues" inverse="true" lazy="true" where="is_current='true'">
            <key column="asset_id"/>
            <one-to-many class="AttributeValue"/>
        </set>


just replace the crap in the getter with a simple
Code:
return attributeValues;
whatever you are trying to do doesn't belong there.

_________________
Dinesh Mahadevan

Visit me at http://www.yelani.com/


Top
 Profile  
 
Display posts from previous:  Sort by  
Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 2 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.