← Back to team overview

dhis2-devs team mailing list archive

Re: [Bug 713641] Re: export-crashes-when-orgunit-active-null

 

I do not see why this is a hibernate problem.

		
    <property name="active">
        <column name="active" not-null="true"/>
     </property>


in OrganisationUnit.hbm.xml is the problem.


2011/2/11 Lars Helge Øverland <larshelge@xxxxxxxxx>:
> Okay but we rely on hibernate to do the create the database schema so then
> its more a bug in hibernate :)
>
> On Fri, Feb 11, 2011 at 12:41 PM, jason.p.pickering <
> 713641@xxxxxxxxxxxxxxxxxx> wrote:
>
>> Fine, but it needs to be declared as NOT NULL in the database design.
>>
>> Bug. :)
>>
>> Regards,
>> Jason
>>
>>
>> 2011/2/11 Lars Helge Øverland <larshelge@xxxxxxxxx>:
>> > This happens because active is a primitive boolean property in the Java
>> > object mapped to a boolean db field. Primitive Java types cannot be
>> > null. So when dhis2 (and hibernate) is instantiating that
>> > OrganisationUnit it will find nothing in the active db field and thus
>> > try to insert a null into the Java boolean property, resulting in an
>> > exception.
>> >
>> > The solution is simply to set all boolean db fields to true/false when
>> > doing direct db manipulation. Not a bug.
>> >
>> > --
>> > You received this bug notification because you are a direct subscriber
>> > of the bug.
>> > https://bugs.launchpad.net/bugs/713641
>> >
>> > Title:
>> >  export-crashes-when-orgunit-active-null
>> >
>> > Status in DHIS 2 - District Health Information Software:
>> >  New
>> >
>> > Bug description:
>> >  This may not be a true bug, for those who use DHIS2 as they should,
>> >  but I normally do not all the time. We had to rearrange an orgunit
>> >  hierarchy, and I did this by directly manipulating the orgunittable,
>> >  which is normally a bad idea of course. Some orgunits were added
>> >  without an "active" field. I did this in part because I was sloppy,
>> >  but was only looking for "NOT NULL" fields in the database table.
>> >  "active" is nullable, but when it is null, and you attempt to export
>> >  you are greeted with this
>> >
>> >
>> >  An exception occurred
>> >
>> >  Sorry! The system failed to execute the operation. Usually, no data is
>> >  lost and you can continue working by going back to the previous page.
>> >  If you wish to report the incident, please save this page by choosing
>> >  "File -> Save (page as)" in your browser and include the saved page in
>> >  the report. The problem details are listed below.
>> >
>> >  [-] Exception (org.hibernate.PropertyAccessException): Null value was
>> >  assigned to a property of primitive type setter of
>> >  org.hisp.dhis.organisationunit.OrganisationUnit.active
>> >
>> >      *
>> org.hibernate.property.BasicPropertyAccessor$BasicSetter.set(BasicPropertyAccessor.java:109)
>> >      *
>> org.hibernate.tuple.entity.AbstractEntityTuplizer.setPropertyValues(AbstractEntityTuplizer.java:586)
>> >      *
>> org.hibernate.tuple.entity.PojoEntityTuplizer.setPropertyValues(PojoEntityTuplizer.java:231)
>> >      *
>> org.hibernate.persister.entity.AbstractEntityPersister.setPropertyValues(AbstractEntityPersister.java:3824)
>> >      *
>> org.hibernate.engine.TwoPhaseLoad.initializeEntity(TwoPhaseLoad.java:153)
>> >      *
>> org.hibernate.loader.Loader.initializeEntitiesAndCollections(Loader.java:898)
>> >      * org.hibernate.loader.Loader.doQuery(Loader.java:773)
>> >      *
>> org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:270)
>> >      * org.hibernate.loader.Loader.loadCollection(Loader.java:2082)
>> >      *
>> org.hibernate.loader.collection.CollectionLoader.initialize(CollectionLoader.java:62)
>> >      *
>> org.hibernate.persister.collection.AbstractCollectionPersister.initialize(AbstractCollectionPersister.java:628)
>> >      *
>> org.hibernate.event.def.DefaultInitializeCollectionEventListener.onInitializeCollection(DefaultInitializeCollectionEventListener.java:83)
>> >      *
>> org.hibernate.impl.SessionImpl.initializeCollection(SessionImpl.java:1853)
>> >      *
>> org.hibernate.collection.AbstractPersistentCollection.initialize(AbstractPersistentCollection.java:369)
>> >      *
>> org.hibernate.collection.AbstractPersistentCollection.read(AbstractPersistentCollection.java:111)
>> >      *
>> org.hibernate.collection.PersistentSet.iterator(PersistentSet.java:186)
>> >      *
>> org.hisp.dhis.organisationunit.DefaultOrganisationUnitService.getDepth(DefaultOrganisationUnitService.java:395)
>> >      *
>> org.hisp.dhis.organisationunit.DefaultOrganisationUnitService.getDepth(DefaultOrganisationUnitService.java:397)
>> >      *
>> org.hisp.dhis.organisationunit.DefaultOrganisationUnitService.getDepth(DefaultOrganisationUnitService.java:397)
>> >      *
>> org.hisp.dhis.organisationunit.DefaultOrganisationUnitService.getNumberOfOrganisationalLevels(DefaultOrganisationUnitService.java:375)
>> >      *
>> org.hisp.dhis.organisationunit.DefaultOrganisationUnitService.getFilledOrganisationUnitLevels(DefaultOrganisationUnitService.java:547)
>> >      *
>> org.hisp.dhis.organisationunit.DefaultOrganisationUnitService.getOrganisationUnitLevels(DefaultOrganisationUnitService.java:523)
>> >      *
>> sun.reflect.NativeMethodAccessorImpl.invoke0(NativeMethodAccessorImpl.java:-2)
>> >      *
>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>> >      *
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>> >      * java.lang.reflect.Method.invoke(Method.java:597)
>> >      *
>> org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:309)
>> >      *
>> org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
>> >      *
>> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
>> >      *
>> org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:110)
>> >      *
>> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
>> >      *
>> org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89)
>> >      *
>> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
>> >      *
>> org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)
>> >      * $Proxy12.getOrganisationUnitLevels(Unknown source)
>> >      *
>> org.hisp.dhis.importexport.action.exp.GetExportOptionsAction.execute(GetExportOptionsAction.java:114)
>> >      *
>> sun.reflect.NativeMethodAccessorImpl.invoke0(NativeMethodAccessorImpl.java:-2)
>> >      *
>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>> >      *
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>> >      * java.lang.reflect.Method.invoke(Method.java:597)
>> >      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invokeAction(DefaultActionInvocation.java:441)
>> >      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invokeActionOnly(DefaultActionInvocation.java:280)
>> >      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:243)
>> >      *
>> org.hisp.dhis.webportal.interceptor.XWorkPortalUserInterceptor.intercept(XWorkPortalUserInterceptor.java:82)
>> >      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>> >      *
>> org.hisp.dhis.webportal.interceptor.XWorkPortalModuleInterceptor.intercept(XWorkPortalModuleInterceptor.java:85)
>> >      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>> >      *
>> org.hisp.dhis.webportal.interceptor.XWorkPortalMenuInterceptor.intercept(XWorkPortalMenuInterceptor.java:91)
>> >      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>> >      *
>> org.hisp.dhis.webportal.interceptor.XWorkPortalParamsInterceptor.intercept(XWorkPortalParamsInterceptor.java:117)
>> >      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>> >      *
>> org.hisp.dhis.interceptor.ContextInterceptor.intercept(ContextInterceptor.java:70)
>> >      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>> >      *
>> org.hisp.dhis.interceptor.StyleInterceptor.intercept(StyleInterceptor.java:107)
>> >      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>> >      *
>> org.hisp.dhis.interceptor.SystemSettingInterceptor.intercept(SystemSettingInterceptor.java:96)
>> >      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>> >      *
>> org.hisp.dhis.interceptor.DisplayPropertyInterceptor.intercept(DisplayPropertyInterceptor.java:90)
>> >      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>> >      *
>> org.hisp.dhis.interceptor.SortOrderInterceptor.intercept(SortOrderInterceptor.java:124)
>> >      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>> >      *
>> org.hisp.dhis.security.intercept.XWorkSecurityInterceptor.intercept(XWorkSecurityInterceptor.java:98)
>> >      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>> >      *
>> org.hisp.dhis.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:141)
>> >      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>> >      *
>> com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:126)
>> >      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>> >      *
>> com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:195)
>> >      *
>> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
>> >      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>> >      *
>> com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:179)
>> >      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>> >      *
>> org.hisp.dhis.interceptor.ExceptionInterceptor.intercept(ExceptionInterceptor.java:98)
>> >      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>> >      *
>> org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:52)
>> >      *
>> org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:488)
>> >      *
>> org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:395)
>> >      *
>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139)
>> >      *
>> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:368)
>> >      *
>> org.hisp.dhis.security.filter.RequiredLoginFilter.doFilter(RequiredLoginFilter.java:129)
>> >      *
>> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
>> >      *
>> org.hisp.dhis.security.filter.AutomaticAccessFilter.doFilter(AutomaticAccessFilter.java:112)
>> >      *
>> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
>> >      *
>> org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:105)
>> >      *
>> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
>> >      *
>> org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:187)
>> >      *
>> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
>> >      *
>> org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:79)
>> >      *
>> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
>> >      *
>> org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:169)
>> >      *
>> org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:237)
>> >      *
>> org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
>> >      *
>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139)
>> >      *
>> org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198)
>> >      *
>> org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
>> >      *
>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139)
>> >      *
>> org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:378)
>> >      *
>> org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
>> >      *
>> org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
>> >      *
>> org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
>> >      *
>> org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:417)
>> >      *
>> org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
>> >      * org.mortbay.jetty.Server.handle(Server.java:324)
>> >      *
>> org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:535)
>> >      *
>> org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:865)
>> >      * org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:539)
>> >      * org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212)
>> >      * org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
>> >      *
>> org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409)
>> >      *
>> org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:520)
>> >
>> >  [-] Caused by (java.lang.IllegalArgumentException): null
>> >
>> >      * sun.reflect.GeneratedMethodAccessor204.invoke(Unknown source)
>> >      *
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>> >      * java.lang.reflect.Method.invoke(Method.java:597)
>> >      *
>> org.hibernate.property.BasicPropertyAccessor$BasicSetter.set(BasicPropertyAccessor.java:66)
>> >      *
>> org.hibernate.tuple.entity.AbstractEntityTuplizer.setPropertyValues(AbstractEntityTuplizer.java:586)
>> >      *
>> org.hibernate.tuple.entity.PojoEntityTuplizer.setPropertyValues(PojoEntityTuplizer.java:231)
>> >      *
>> org.hibernate.persister.entity.AbstractEntityPersister.setPropertyValues(AbstractEntityPersister.java:3824)
>> >      *
>> org.hibernate.engine.TwoPhaseLoad.initializeEntity(TwoPhaseLoad.java:153)
>> >      *
>> org.hibernate.loader.Loader.initializeEntitiesAndCollections(Loader.java:898)
>> >      * org.hibernate.loader.Loader.doQuery(Loader.java:773)
>> >      *
>> org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:270)
>> >      * org.hibernate.loader.Loader.loadCollection(Loader.java:2082)
>> >      *
>> org.hibernate.loader.collection.CollectionLoader.initialize(CollectionLoader.java:62)
>> >      *
>> org.hibernate.persister.collection.AbstractCollectionPersister.initialize(AbstractCollectionPersister.java:628)
>> >      *
>> org.hibernate.event.def.DefaultInitializeCollectionEventListener.onInitializeCollection(DefaultInitializeCollectionEventListener.java:83)
>> >      *
>> org.hibernate.impl.SessionImpl.initializeCollection(SessionImpl.java:1853)
>> >      *
>> org.hibernate.collection.AbstractPersistentCollection.initialize(AbstractPersistentCollection.java:369)
>> >      *
>> org.hibernate.collection.AbstractPersistentCollection.read(AbstractPersistentCollection.java:111)
>> >      *
>> org.hibernate.collection.PersistentSet.iterator(PersistentSet.java:186)
>> >      *
>> org.hisp.dhis.organisationunit.DefaultOrganisationUnitService.getDepth(DefaultOrganisationUnitService.java:395)
>> >      *
>> org.hisp.dhis.organisationunit.DefaultOrganisationUnitService.getDepth(DefaultOrganisationUnitService.java:397)
>> >      *
>> org.hisp.dhis.organisationunit.DefaultOrganisationUnitService.getDepth(DefaultOrganisationUnitService.java:397)
>> >      *
>> org.hisp.dhis.organisationunit.DefaultOrganisationUnitService.getNumberOfOrganisationalLevels(DefaultOrganisationUnitService.java:375)
>> >      *
>> org.hisp.dhis.organisationunit.DefaultOrganisationUnitService.getFilledOrganisationUnitLevels(DefaultOrganisationUnitService.java:547)
>> >      *
>> org.hisp.dhis.organisationunit.DefaultOrganisationUnitService.getOrganisationUnitLevels(DefaultOrganisationUnitService.java:523)
>> >      *
>> sun.reflect.NativeMethodAccessorImpl.invoke0(NativeMethodAccessorImpl.java:-2)
>> >      *
>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>> >      *
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>> >      * java.lang.reflect.Method.invoke(Method.java:597)
>> >      *
>> org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:309)
>> >      *
>> org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
>> >      *
>> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
>> >      *
>> org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:110)
>> >      *
>> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
>> >      *
>> org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89)
>> >      *
>> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
>> >      *
>> org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)
>> >      * $Proxy12.getOrganisationUnitLevels(Unknown source)
>> >      *
>> org.hisp.dhis.importexport.action.exp.GetExportOptionsAction.execute(GetExportOptionsAction.java:114)
>> >      *
>> sun.reflect.NativeMethodAccessorImpl.invoke0(NativeMethodAccessorImpl.java:-2)
>> >      *
>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>> >      *
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>> >      * java.lang.reflect.Method.invoke(Method.java:597)
>> >      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invokeAction(DefaultActionInvocation.java:441)
>> >      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invokeActionOnly(DefaultActionInvocation.java:280)
>> >      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:243)
>> >      *
>> org.hisp.dhis.webportal.interceptor.XWorkPortalUserInterceptor.intercept(XWorkPortalUserInterceptor.java:82)
>> >      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>> >      *
>> org.hisp.dhis.webportal.interceptor.XWorkPortalModuleInterceptor.intercept(XWorkPortalModuleInterceptor.java:85)
>> >      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>> >      *
>> org.hisp.dhis.webportal.interceptor.XWorkPortalMenuInterceptor.intercept(XWorkPortalMenuInterceptor.java:91)
>> >      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>> >      *
>> org.hisp.dhis.webportal.interceptor.XWorkPortalParamsInterceptor.intercept(XWorkPortalParamsInterceptor.java:117)
>> >      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>> >      *
>> org.hisp.dhis.interceptor.ContextInterceptor.intercept(ContextInterceptor.java:70)
>> >      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>> >      *
>> org.hisp.dhis.interceptor.StyleInterceptor.intercept(StyleInterceptor.java:107)
>> >      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>> >      *
>> org.hisp.dhis.interceptor.SystemSettingInterceptor.intercept(SystemSettingInterceptor.java:96)
>> >      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>> >      *
>> org.hisp.dhis.interceptor.DisplayPropertyInterceptor.intercept(DisplayPropertyInterceptor.java:90)
>> >      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>> >      *
>> org.hisp.dhis.interceptor.SortOrderInterceptor.intercept(SortOrderInterceptor.java:124)
>> >      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>> >      *
>> org.hisp.dhis.security.intercept.XWorkSecurityInterceptor.intercept(XWorkSecurityInterceptor.java:98)
>> >      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>> >      *
>> org.hisp.dhis.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:141)
>> >      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>> >      *
>> com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:126)
>> >      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>> >      *
>> com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:195)
>> >      *
>> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
>> >      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>> >      *
>> com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:179)
>> >      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>> >      *
>> org.hisp.dhis.interceptor.ExceptionInterceptor.intercept(ExceptionInterceptor.java:98)
>> >      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>> >      *
>> org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:52)
>> >      *
>> org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:488)
>> >      *
>> org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:395)
>> >      *
>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139)
>> >      *
>> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:368)
>> >      *
>> org.hisp.dhis.security.filter.RequiredLoginFilter.doFilter(RequiredLoginFilter.java:129)
>> >      *
>> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
>> >      *
>> org.hisp.dhis.security.filter.AutomaticAccessFilter.doFilter(AutomaticAccessFilter.java:112)
>> >      *
>> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
>> >      *
>> org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:105)
>> >      *
>> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
>> >      *
>> org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:187)
>> >      *
>> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
>> >      *
>> org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:79)
>> >      *
>> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
>> >      *
>> org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:169)
>> >      *
>> org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:237)
>> >      *
>> org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
>> >      *
>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139)
>> >      *
>> org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198)
>> >      *
>> org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
>> >      *
>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139)
>> >      *
>> org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:378)
>> >      *
>> org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
>> >      *
>> org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
>> >      *
>> org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
>> >      *
>> org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:417)
>> >      *
>> org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
>> >      * org.mortbay.jetty.Server.handle(Server.java:324)
>> >      *
>> org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:535)
>> >      *
>> org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:865)
>> >      * org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:539)
>> >      * org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212)
>> >      * org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
>> >      *
>> org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409)
>> >      *
>> org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:520)
>> >
>> > To unsubscribe from this bug, go to:
>> > https://bugs.launchpad.net/dhis2/+bug/713641/+subscribe
>> >
>>
>>
>> --
>> Jason P. Pickering
>> email: jason.p.pickering@xxxxxxxxx
>> tel:+260974901293
>>
>> --
>> You received this bug notification because you are a member of DHIS 2
>> coordinators, which is the registrant for DHIS.
>> https://bugs.launchpad.net/bugs/713641
>>
>> Title:
>>  export-crashes-when-orgunit-active-null
>>
>> Status in DHIS 2 - District Health Information Software:
>>  New
>>
>> Bug description:
>>  This may not be a true bug, for those who use DHIS2 as they should,
>>  but I normally do not all the time. We had to rearrange an orgunit
>>  hierarchy, and I did this by directly manipulating the orgunittable,
>>  which is normally a bad idea of course. Some orgunits were added
>>  without an "active" field. I did this in part because I was sloppy,
>>  but was only looking for "NOT NULL" fields in the database table.
>>  "active" is nullable, but when it is null, and you attempt to export
>>  you are greeted with this
>>
>>
>>  An exception occurred
>>
>>  Sorry! The system failed to execute the operation. Usually, no data is
>>  lost and you can continue working by going back to the previous page.
>>  If you wish to report the incident, please save this page by choosing
>>  "File -> Save (page as)" in your browser and include the saved page in
>>  the report. The problem details are listed below.
>>
>>  [-] Exception (org.hibernate.PropertyAccessException): Null value was
>>  assigned to a property of primitive type setter of
>>  org.hisp.dhis.organisationunit.OrganisationUnit.active
>>
>>      *
>> org.hibernate.property.BasicPropertyAccessor$BasicSetter.set(BasicPropertyAccessor.java:109)
>>      *
>> org.hibernate.tuple.entity.AbstractEntityTuplizer.setPropertyValues(AbstractEntityTuplizer.java:586)
>>      *
>> org.hibernate.tuple.entity.PojoEntityTuplizer.setPropertyValues(PojoEntityTuplizer.java:231)
>>      *
>> org.hibernate.persister.entity.AbstractEntityPersister.setPropertyValues(AbstractEntityPersister.java:3824)
>>      *
>> org.hibernate.engine.TwoPhaseLoad.initializeEntity(TwoPhaseLoad.java:153)
>>      *
>> org.hibernate.loader.Loader.initializeEntitiesAndCollections(Loader.java:898)
>>      * org.hibernate.loader.Loader.doQuery(Loader.java:773)
>>      *
>> org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:270)
>>      * org.hibernate.loader.Loader.loadCollection(Loader.java:2082)
>>      *
>> org.hibernate.loader.collection.CollectionLoader.initialize(CollectionLoader.java:62)
>>      *
>> org.hibernate.persister.collection.AbstractCollectionPersister.initialize(AbstractCollectionPersister.java:628)
>>      *
>> org.hibernate.event.def.DefaultInitializeCollectionEventListener.onInitializeCollection(DefaultInitializeCollectionEventListener.java:83)
>>      *
>> org.hibernate.impl.SessionImpl.initializeCollection(SessionImpl.java:1853)
>>      *
>> org.hibernate.collection.AbstractPersistentCollection.initialize(AbstractPersistentCollection.java:369)
>>      *
>> org.hibernate.collection.AbstractPersistentCollection.read(AbstractPersistentCollection.java:111)
>>      *
>> org.hibernate.collection.PersistentSet.iterator(PersistentSet.java:186)
>>      *
>> org.hisp.dhis.organisationunit.DefaultOrganisationUnitService.getDepth(DefaultOrganisationUnitService.java:395)
>>      *
>> org.hisp.dhis.organisationunit.DefaultOrganisationUnitService.getDepth(DefaultOrganisationUnitService.java:397)
>>      *
>> org.hisp.dhis.organisationunit.DefaultOrganisationUnitService.getDepth(DefaultOrganisationUnitService.java:397)
>>      *
>> org.hisp.dhis.organisationunit.DefaultOrganisationUnitService.getNumberOfOrganisationalLevels(DefaultOrganisationUnitService.java:375)
>>      *
>> org.hisp.dhis.organisationunit.DefaultOrganisationUnitService.getFilledOrganisationUnitLevels(DefaultOrganisationUnitService.java:547)
>>      *
>> org.hisp.dhis.organisationunit.DefaultOrganisationUnitService.getOrganisationUnitLevels(DefaultOrganisationUnitService.java:523)
>>      *
>> sun.reflect.NativeMethodAccessorImpl.invoke0(NativeMethodAccessorImpl.java:-2)
>>      *
>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>      *
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>      * java.lang.reflect.Method.invoke(Method.java:597)
>>      *
>> org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:309)
>>      *
>> org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
>>      *
>> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
>>      *
>> org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:110)
>>      *
>> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
>>      *
>> org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89)
>>      *
>> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
>>      *
>> org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)
>>      * $Proxy12.getOrganisationUnitLevels(Unknown source)
>>      *
>> org.hisp.dhis.importexport.action.exp.GetExportOptionsAction.execute(GetExportOptionsAction.java:114)
>>      *
>> sun.reflect.NativeMethodAccessorImpl.invoke0(NativeMethodAccessorImpl.java:-2)
>>      *
>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>      *
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>      * java.lang.reflect.Method.invoke(Method.java:597)
>>      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invokeAction(DefaultActionInvocation.java:441)
>>      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invokeActionOnly(DefaultActionInvocation.java:280)
>>      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:243)
>>      *
>> org.hisp.dhis.webportal.interceptor.XWorkPortalUserInterceptor.intercept(XWorkPortalUserInterceptor.java:82)
>>      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>>      *
>> org.hisp.dhis.webportal.interceptor.XWorkPortalModuleInterceptor.intercept(XWorkPortalModuleInterceptor.java:85)
>>      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>>      *
>> org.hisp.dhis.webportal.interceptor.XWorkPortalMenuInterceptor.intercept(XWorkPortalMenuInterceptor.java:91)
>>      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>>      *
>> org.hisp.dhis.webportal.interceptor.XWorkPortalParamsInterceptor.intercept(XWorkPortalParamsInterceptor.java:117)
>>      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>>      *
>> org.hisp.dhis.interceptor.ContextInterceptor.intercept(ContextInterceptor.java:70)
>>      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>>      *
>> org.hisp.dhis.interceptor.StyleInterceptor.intercept(StyleInterceptor.java:107)
>>      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>>      *
>> org.hisp.dhis.interceptor.SystemSettingInterceptor.intercept(SystemSettingInterceptor.java:96)
>>      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>>      *
>> org.hisp.dhis.interceptor.DisplayPropertyInterceptor.intercept(DisplayPropertyInterceptor.java:90)
>>      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>>      *
>> org.hisp.dhis.interceptor.SortOrderInterceptor.intercept(SortOrderInterceptor.java:124)
>>      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>>      *
>> org.hisp.dhis.security.intercept.XWorkSecurityInterceptor.intercept(XWorkSecurityInterceptor.java:98)
>>      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>>      *
>> org.hisp.dhis.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:141)
>>      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>>      *
>> com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:126)
>>      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>>      *
>> com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:195)
>>      *
>> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
>>      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>>      *
>> com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:179)
>>      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>>      *
>> org.hisp.dhis.interceptor.ExceptionInterceptor.intercept(ExceptionInterceptor.java:98)
>>      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>>      *
>> org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:52)
>>      *
>> org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:488)
>>      *
>> org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:395)
>>      *
>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139)
>>      *
>> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:368)
>>      *
>> org.hisp.dhis.security.filter.RequiredLoginFilter.doFilter(RequiredLoginFilter.java:129)
>>      *
>> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
>>      *
>> org.hisp.dhis.security.filter.AutomaticAccessFilter.doFilter(AutomaticAccessFilter.java:112)
>>      *
>> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
>>      *
>> org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:105)
>>      *
>> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
>>      *
>> org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:187)
>>      *
>> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
>>      *
>> org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:79)
>>      *
>> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
>>      *
>> org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:169)
>>      *
>> org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:237)
>>      *
>> org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
>>      *
>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139)
>>      *
>> org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198)
>>      *
>> org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
>>      *
>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139)
>>      *
>> org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:378)
>>      *
>> org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
>>      *
>> org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
>>      *
>> org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
>>      *
>> org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:417)
>>      *
>> org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
>>      * org.mortbay.jetty.Server.handle(Server.java:324)
>>      *
>> org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:535)
>>      *
>> org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:865)
>>      * org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:539)
>>      * org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212)
>>      * org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
>>      *
>> org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409)
>>      *
>> org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:520)
>>
>>  [-] Caused by (java.lang.IllegalArgumentException): null
>>
>>      * sun.reflect.GeneratedMethodAccessor204.invoke(Unknown source)
>>      *
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>      * java.lang.reflect.Method.invoke(Method.java:597)
>>      *
>> org.hibernate.property.BasicPropertyAccessor$BasicSetter.set(BasicPropertyAccessor.java:66)
>>      *
>> org.hibernate.tuple.entity.AbstractEntityTuplizer.setPropertyValues(AbstractEntityTuplizer.java:586)
>>      *
>> org.hibernate.tuple.entity.PojoEntityTuplizer.setPropertyValues(PojoEntityTuplizer.java:231)
>>      *
>> org.hibernate.persister.entity.AbstractEntityPersister.setPropertyValues(AbstractEntityPersister.java:3824)
>>      *
>> org.hibernate.engine.TwoPhaseLoad.initializeEntity(TwoPhaseLoad.java:153)
>>      *
>> org.hibernate.loader.Loader.initializeEntitiesAndCollections(Loader.java:898)
>>      * org.hibernate.loader.Loader.doQuery(Loader.java:773)
>>      *
>> org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:270)
>>      * org.hibernate.loader.Loader.loadCollection(Loader.java:2082)
>>      *
>> org.hibernate.loader.collection.CollectionLoader.initialize(CollectionLoader.java:62)
>>      *
>> org.hibernate.persister.collection.AbstractCollectionPersister.initialize(AbstractCollectionPersister.java:628)
>>      *
>> org.hibernate.event.def.DefaultInitializeCollectionEventListener.onInitializeCollection(DefaultInitializeCollectionEventListener.java:83)
>>      *
>> org.hibernate.impl.SessionImpl.initializeCollection(SessionImpl.java:1853)
>>      *
>> org.hibernate.collection.AbstractPersistentCollection.initialize(AbstractPersistentCollection.java:369)
>>      *
>> org.hibernate.collection.AbstractPersistentCollection.read(AbstractPersistentCollection.java:111)
>>      *
>> org.hibernate.collection.PersistentSet.iterator(PersistentSet.java:186)
>>      *
>> org.hisp.dhis.organisationunit.DefaultOrganisationUnitService.getDepth(DefaultOrganisationUnitService.java:395)
>>      *
>> org.hisp.dhis.organisationunit.DefaultOrganisationUnitService.getDepth(DefaultOrganisationUnitService.java:397)
>>      *
>> org.hisp.dhis.organisationunit.DefaultOrganisationUnitService.getDepth(DefaultOrganisationUnitService.java:397)
>>      *
>> org.hisp.dhis.organisationunit.DefaultOrganisationUnitService.getNumberOfOrganisationalLevels(DefaultOrganisationUnitService.java:375)
>>      *
>> org.hisp.dhis.organisationunit.DefaultOrganisationUnitService.getFilledOrganisationUnitLevels(DefaultOrganisationUnitService.java:547)
>>      *
>> org.hisp.dhis.organisationunit.DefaultOrganisationUnitService.getOrganisationUnitLevels(DefaultOrganisationUnitService.java:523)
>>      *
>> sun.reflect.NativeMethodAccessorImpl.invoke0(NativeMethodAccessorImpl.java:-2)
>>      *
>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>      *
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>      * java.lang.reflect.Method.invoke(Method.java:597)
>>      *
>> org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:309)
>>      *
>> org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
>>      *
>> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
>>      *
>> org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:110)
>>      *
>> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
>>      *
>> org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89)
>>      *
>> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
>>      *
>> org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)
>>      * $Proxy12.getOrganisationUnitLevels(Unknown source)
>>      *
>> org.hisp.dhis.importexport.action.exp.GetExportOptionsAction.execute(GetExportOptionsAction.java:114)
>>      *
>> sun.reflect.NativeMethodAccessorImpl.invoke0(NativeMethodAccessorImpl.java:-2)
>>      *
>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>      *
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>      * java.lang.reflect.Method.invoke(Method.java:597)
>>      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invokeAction(DefaultActionInvocation.java:441)
>>      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invokeActionOnly(DefaultActionInvocation.java:280)
>>      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:243)
>>      *
>> org.hisp.dhis.webportal.interceptor.XWorkPortalUserInterceptor.intercept(XWorkPortalUserInterceptor.java:82)
>>      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>>      *
>> org.hisp.dhis.webportal.interceptor.XWorkPortalModuleInterceptor.intercept(XWorkPortalModuleInterceptor.java:85)
>>      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>>      *
>> org.hisp.dhis.webportal.interceptor.XWorkPortalMenuInterceptor.intercept(XWorkPortalMenuInterceptor.java:91)
>>      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>>      *
>> org.hisp.dhis.webportal.interceptor.XWorkPortalParamsInterceptor.intercept(XWorkPortalParamsInterceptor.java:117)
>>      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>>      *
>> org.hisp.dhis.interceptor.ContextInterceptor.intercept(ContextInterceptor.java:70)
>>      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>>      *
>> org.hisp.dhis.interceptor.StyleInterceptor.intercept(StyleInterceptor.java:107)
>>      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>>      *
>> org.hisp.dhis.interceptor.SystemSettingInterceptor.intercept(SystemSettingInterceptor.java:96)
>>      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>>      *
>> org.hisp.dhis.interceptor.DisplayPropertyInterceptor.intercept(DisplayPropertyInterceptor.java:90)
>>      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>>      *
>> org.hisp.dhis.interceptor.SortOrderInterceptor.intercept(SortOrderInterceptor.java:124)
>>      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>>      *
>> org.hisp.dhis.security.intercept.XWorkSecurityInterceptor.intercept(XWorkSecurityInterceptor.java:98)
>>      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>>      *
>> org.hisp.dhis.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:141)
>>      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>>      *
>> com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:126)
>>      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>>      *
>> com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:195)
>>      *
>> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
>>      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>>      *
>> com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:179)
>>      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>>      *
>> org.hisp.dhis.interceptor.ExceptionInterceptor.intercept(ExceptionInterceptor.java:98)
>>      *
>> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>>      *
>> org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:52)
>>      *
>> org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:488)
>>      *
>> org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:395)
>>      *
>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139)
>>      *
>> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:368)
>>      *
>> org.hisp.dhis.security.filter.RequiredLoginFilter.doFilter(RequiredLoginFilter.java:129)
>>      *
>> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
>>      *
>> org.hisp.dhis.security.filter.AutomaticAccessFilter.doFilter(AutomaticAccessFilter.java:112)
>>      *
>> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
>>      *
>> org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:105)
>>      *
>> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
>>      *
>> org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:187)
>>      *
>> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
>>      *
>> org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:79)
>>      *
>> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
>>      *
>> org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:169)
>>      *
>> org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:237)
>>      *
>> org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
>>      *
>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139)
>>      *
>> org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198)
>>      *
>> org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
>>      *
>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139)
>>      *
>> org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:378)
>>      *
>> org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
>>      *
>> org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
>>      *
>> org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
>>      *
>> org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:417)
>>      *
>> org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
>>      * org.mortbay.jetty.Server.handle(Server.java:324)
>>      *
>> org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:535)
>>      *
>> org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:865)
>>      * org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:539)
>>      * org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212)
>>      * org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
>>      *
>> org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409)
>>      *
>> org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:520)
>>
>>
>>
>
> --
> You received this bug notification because you are a direct subscriber
> of the bug.
> https://bugs.launchpad.net/bugs/713641
>
> Title:
>  export-crashes-when-orgunit-active-null
>
> Status in DHIS 2 - District Health Information Software:
>  New
>
> Bug description:
>  This may not be a true bug, for those who use DHIS2 as they should,
>  but I normally do not all the time. We had to rearrange an orgunit
>  hierarchy, and I did this by directly manipulating the orgunittable,
>  which is normally a bad idea of course. Some orgunits were added
>  without an "active" field. I did this in part because I was sloppy,
>  but was only looking for "NOT NULL" fields in the database table.
>  "active" is nullable, but when it is null, and you attempt to export
>  you are greeted with this
>
>
>  An exception occurred
>
>  Sorry! The system failed to execute the operation. Usually, no data is
>  lost and you can continue working by going back to the previous page.
>  If you wish to report the incident, please save this page by choosing
>  "File -> Save (page as)" in your browser and include the saved page in
>  the report. The problem details are listed below.
>
>  [-] Exception (org.hibernate.PropertyAccessException): Null value was
>  assigned to a property of primitive type setter of
>  org.hisp.dhis.organisationunit.OrganisationUnit.active
>
>      * org.hibernate.property.BasicPropertyAccessor$BasicSetter.set(BasicPropertyAccessor.java:109)
>      * org.hibernate.tuple.entity.AbstractEntityTuplizer.setPropertyValues(AbstractEntityTuplizer.java:586)
>      * org.hibernate.tuple.entity.PojoEntityTuplizer.setPropertyValues(PojoEntityTuplizer.java:231)
>      * org.hibernate.persister.entity.AbstractEntityPersister.setPropertyValues(AbstractEntityPersister.java:3824)
>      * org.hibernate.engine.TwoPhaseLoad.initializeEntity(TwoPhaseLoad.java:153)
>      * org.hibernate.loader.Loader.initializeEntitiesAndCollections(Loader.java:898)
>      * org.hibernate.loader.Loader.doQuery(Loader.java:773)
>      * org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:270)
>      * org.hibernate.loader.Loader.loadCollection(Loader.java:2082)
>      * org.hibernate.loader.collection.CollectionLoader.initialize(CollectionLoader.java:62)
>      * org.hibernate.persister.collection.AbstractCollectionPersister.initialize(AbstractCollectionPersister.java:628)
>      * org.hibernate.event.def.DefaultInitializeCollectionEventListener.onInitializeCollection(DefaultInitializeCollectionEventListener.java:83)
>      * org.hibernate.impl.SessionImpl.initializeCollection(SessionImpl.java:1853)
>      * org.hibernate.collection.AbstractPersistentCollection.initialize(AbstractPersistentCollection.java:369)
>      * org.hibernate.collection.AbstractPersistentCollection.read(AbstractPersistentCollection.java:111)
>      * org.hibernate.collection.PersistentSet.iterator(PersistentSet.java:186)
>      * org.hisp.dhis.organisationunit.DefaultOrganisationUnitService.getDepth(DefaultOrganisationUnitService.java:395)
>      * org.hisp.dhis.organisationunit.DefaultOrganisationUnitService.getDepth(DefaultOrganisationUnitService.java:397)
>      * org.hisp.dhis.organisationunit.DefaultOrganisationUnitService.getDepth(DefaultOrganisationUnitService.java:397)
>      * org.hisp.dhis.organisationunit.DefaultOrganisationUnitService.getNumberOfOrganisationalLevels(DefaultOrganisationUnitService.java:375)
>      * org.hisp.dhis.organisationunit.DefaultOrganisationUnitService.getFilledOrganisationUnitLevels(DefaultOrganisationUnitService.java:547)
>      * org.hisp.dhis.organisationunit.DefaultOrganisationUnitService.getOrganisationUnitLevels(DefaultOrganisationUnitService.java:523)
>      * sun.reflect.NativeMethodAccessorImpl.invoke0(NativeMethodAccessorImpl.java:-2)
>      * sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>      * sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>      * java.lang.reflect.Method.invoke(Method.java:597)
>      * org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:309)
>      * org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
>      * org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
>      * org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:110)
>      * org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
>      * org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89)
>      * org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
>      * org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)
>      * $Proxy12.getOrganisationUnitLevels(Unknown source)
>      * org.hisp.dhis.importexport.action.exp.GetExportOptionsAction.execute(GetExportOptionsAction.java:114)
>      * sun.reflect.NativeMethodAccessorImpl.invoke0(NativeMethodAccessorImpl.java:-2)
>      * sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>      * sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>      * java.lang.reflect.Method.invoke(Method.java:597)
>      * com.opensymphony.xwork2.DefaultActionInvocation.invokeAction(DefaultActionInvocation.java:441)
>      * com.opensymphony.xwork2.DefaultActionInvocation.invokeActionOnly(DefaultActionInvocation.java:280)
>      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:243)
>      * org.hisp.dhis.webportal.interceptor.XWorkPortalUserInterceptor.intercept(XWorkPortalUserInterceptor.java:82)
>      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>      * org.hisp.dhis.webportal.interceptor.XWorkPortalModuleInterceptor.intercept(XWorkPortalModuleInterceptor.java:85)
>      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>      * org.hisp.dhis.webportal.interceptor.XWorkPortalMenuInterceptor.intercept(XWorkPortalMenuInterceptor.java:91)
>      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>      * org.hisp.dhis.webportal.interceptor.XWorkPortalParamsInterceptor.intercept(XWorkPortalParamsInterceptor.java:117)
>      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>      * org.hisp.dhis.interceptor.ContextInterceptor.intercept(ContextInterceptor.java:70)
>      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>      * org.hisp.dhis.interceptor.StyleInterceptor.intercept(StyleInterceptor.java:107)
>      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>      * org.hisp.dhis.interceptor.SystemSettingInterceptor.intercept(SystemSettingInterceptor.java:96)
>      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>      * org.hisp.dhis.interceptor.DisplayPropertyInterceptor.intercept(DisplayPropertyInterceptor.java:90)
>      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>      * org.hisp.dhis.interceptor.SortOrderInterceptor.intercept(SortOrderInterceptor.java:124)
>      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>      * org.hisp.dhis.security.intercept.XWorkSecurityInterceptor.intercept(XWorkSecurityInterceptor.java:98)
>      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>      * org.hisp.dhis.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:141)
>      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>      * com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:126)
>      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>      * com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:195)
>      * com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
>      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>      * com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:179)
>      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>      * org.hisp.dhis.interceptor.ExceptionInterceptor.intercept(ExceptionInterceptor.java:98)
>      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>      * org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:52)
>      * org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:488)
>      * org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:395)
>      * org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139)
>      * org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:368)
>      * org.hisp.dhis.security.filter.RequiredLoginFilter.doFilter(RequiredLoginFilter.java:129)
>      * org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
>      * org.hisp.dhis.security.filter.AutomaticAccessFilter.doFilter(AutomaticAccessFilter.java:112)
>      * org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
>      * org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:105)
>      * org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
>      * org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:187)
>      * org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
>      * org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:79)
>      * org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
>      * org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:169)
>      * org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:237)
>      * org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
>      * org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139)
>      * org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198)
>      * org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
>      * org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139)
>      * org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:378)
>      * org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
>      * org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
>      * org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
>      * org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:417)
>      * org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
>      * org.mortbay.jetty.Server.handle(Server.java:324)
>      * org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:535)
>      * org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:865)
>      * org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:539)
>      * org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212)
>      * org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
>      * org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409)
>      * org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:520)
>
>  [-] Caused by (java.lang.IllegalArgumentException): null
>
>      * sun.reflect.GeneratedMethodAccessor204.invoke(Unknown source)
>      * sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>      * java.lang.reflect.Method.invoke(Method.java:597)
>      * org.hibernate.property.BasicPropertyAccessor$BasicSetter.set(BasicPropertyAccessor.java:66)
>      * org.hibernate.tuple.entity.AbstractEntityTuplizer.setPropertyValues(AbstractEntityTuplizer.java:586)
>      * org.hibernate.tuple.entity.PojoEntityTuplizer.setPropertyValues(PojoEntityTuplizer.java:231)
>      * org.hibernate.persister.entity.AbstractEntityPersister.setPropertyValues(AbstractEntityPersister.java:3824)
>      * org.hibernate.engine.TwoPhaseLoad.initializeEntity(TwoPhaseLoad.java:153)
>      * org.hibernate.loader.Loader.initializeEntitiesAndCollections(Loader.java:898)
>      * org.hibernate.loader.Loader.doQuery(Loader.java:773)
>      * org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:270)
>      * org.hibernate.loader.Loader.loadCollection(Loader.java:2082)
>      * org.hibernate.loader.collection.CollectionLoader.initialize(CollectionLoader.java:62)
>      * org.hibernate.persister.collection.AbstractCollectionPersister.initialize(AbstractCollectionPersister.java:628)
>      * org.hibernate.event.def.DefaultInitializeCollectionEventListener.onInitializeCollection(DefaultInitializeCollectionEventListener.java:83)
>      * org.hibernate.impl.SessionImpl.initializeCollection(SessionImpl.java:1853)
>      * org.hibernate.collection.AbstractPersistentCollection.initialize(AbstractPersistentCollection.java:369)
>      * org.hibernate.collection.AbstractPersistentCollection.read(AbstractPersistentCollection.java:111)
>      * org.hibernate.collection.PersistentSet.iterator(PersistentSet.java:186)
>      * org.hisp.dhis.organisationunit.DefaultOrganisationUnitService.getDepth(DefaultOrganisationUnitService.java:395)
>      * org.hisp.dhis.organisationunit.DefaultOrganisationUnitService.getDepth(DefaultOrganisationUnitService.java:397)
>      * org.hisp.dhis.organisationunit.DefaultOrganisationUnitService.getDepth(DefaultOrganisationUnitService.java:397)
>      * org.hisp.dhis.organisationunit.DefaultOrganisationUnitService.getNumberOfOrganisationalLevels(DefaultOrganisationUnitService.java:375)
>      * org.hisp.dhis.organisationunit.DefaultOrganisationUnitService.getFilledOrganisationUnitLevels(DefaultOrganisationUnitService.java:547)
>      * org.hisp.dhis.organisationunit.DefaultOrganisationUnitService.getOrganisationUnitLevels(DefaultOrganisationUnitService.java:523)
>      * sun.reflect.NativeMethodAccessorImpl.invoke0(NativeMethodAccessorImpl.java:-2)
>      * sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>      * sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>      * java.lang.reflect.Method.invoke(Method.java:597)
>      * org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:309)
>      * org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
>      * org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
>      * org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:110)
>      * org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
>      * org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89)
>      * org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
>      * org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)
>      * $Proxy12.getOrganisationUnitLevels(Unknown source)
>      * org.hisp.dhis.importexport.action.exp.GetExportOptionsAction.execute(GetExportOptionsAction.java:114)
>      * sun.reflect.NativeMethodAccessorImpl.invoke0(NativeMethodAccessorImpl.java:-2)
>      * sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>      * sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>      * java.lang.reflect.Method.invoke(Method.java:597)
>      * com.opensymphony.xwork2.DefaultActionInvocation.invokeAction(DefaultActionInvocation.java:441)
>      * com.opensymphony.xwork2.DefaultActionInvocation.invokeActionOnly(DefaultActionInvocation.java:280)
>      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:243)
>      * org.hisp.dhis.webportal.interceptor.XWorkPortalUserInterceptor.intercept(XWorkPortalUserInterceptor.java:82)
>      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>      * org.hisp.dhis.webportal.interceptor.XWorkPortalModuleInterceptor.intercept(XWorkPortalModuleInterceptor.java:85)
>      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>      * org.hisp.dhis.webportal.interceptor.XWorkPortalMenuInterceptor.intercept(XWorkPortalMenuInterceptor.java:91)
>      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>      * org.hisp.dhis.webportal.interceptor.XWorkPortalParamsInterceptor.intercept(XWorkPortalParamsInterceptor.java:117)
>      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>      * org.hisp.dhis.interceptor.ContextInterceptor.intercept(ContextInterceptor.java:70)
>      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>      * org.hisp.dhis.interceptor.StyleInterceptor.intercept(StyleInterceptor.java:107)
>      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>      * org.hisp.dhis.interceptor.SystemSettingInterceptor.intercept(SystemSettingInterceptor.java:96)
>      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>      * org.hisp.dhis.interceptor.DisplayPropertyInterceptor.intercept(DisplayPropertyInterceptor.java:90)
>      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>      * org.hisp.dhis.interceptor.SortOrderInterceptor.intercept(SortOrderInterceptor.java:124)
>      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>      * org.hisp.dhis.security.intercept.XWorkSecurityInterceptor.intercept(XWorkSecurityInterceptor.java:98)
>      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>      * org.hisp.dhis.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:141)
>      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>      * com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:126)
>      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>      * com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:195)
>      * com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
>      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>      * com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:179)
>      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>      * org.hisp.dhis.interceptor.ExceptionInterceptor.intercept(ExceptionInterceptor.java:98)
>      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
>      * org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:52)
>      * org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:488)
>      * org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:395)
>      * org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139)
>      * org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:368)
>      * org.hisp.dhis.security.filter.RequiredLoginFilter.doFilter(RequiredLoginFilter.java:129)
>      * org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
>      * org.hisp.dhis.security.filter.AutomaticAccessFilter.doFilter(AutomaticAccessFilter.java:112)
>      * org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
>      * org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:105)
>      * org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
>      * org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:187)
>      * org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
>      * org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:79)
>      * org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
>      * org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:169)
>      * org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:237)
>      * org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
>      * org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139)
>      * org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198)
>      * org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
>      * org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139)
>      * org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:378)
>      * org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
>      * org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
>      * org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
>      * org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:417)
>      * org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
>      * org.mortbay.jetty.Server.handle(Server.java:324)
>      * org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:535)
>      * org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:865)
>      * org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:539)
>      * org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212)
>      * org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
>      * org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409)
>      * org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:520)
>
> To unsubscribe from this bug, go to:
> https://bugs.launchpad.net/dhis2/+bug/713641/+subscribe
>


-- 
Jason P. Pickering
email: jason.p.pickering@xxxxxxxxx
tel:+260974901293

-- 
You received this bug notification because you are a member of DHIS 2
developers, which is subscribed to DHIS.
https://bugs.launchpad.net/bugs/713641

Title:
  export-crashes-when-orgunit-active-null

Status in DHIS 2 - District Health Information Software:
  New

Bug description:
  This may not be a true bug, for those who use DHIS2 as they should,
  but I normally do not all the time. We had to rearrange an orgunit
  hierarchy, and I did this by directly manipulating the orgunittable,
  which is normally a bad idea of course. Some orgunits were added
  without an "active" field. I did this in part because I was sloppy,
  but was only looking for "NOT NULL" fields in the database table.
  "active" is nullable, but when it is null, and you attempt to export
  you are greeted with this

  
  An exception occurred

  Sorry! The system failed to execute the operation. Usually, no data is
  lost and you can continue working by going back to the previous page.
  If you wish to report the incident, please save this page by choosing
  "File -> Save (page as)" in your browser and include the saved page in
  the report. The problem details are listed below.

  [-] Exception (org.hibernate.PropertyAccessException): Null value was
  assigned to a property of primitive type setter of
  org.hisp.dhis.organisationunit.OrganisationUnit.active

      * org.hibernate.property.BasicPropertyAccessor$BasicSetter.set(BasicPropertyAccessor.java:109)
      * org.hibernate.tuple.entity.AbstractEntityTuplizer.setPropertyValues(AbstractEntityTuplizer.java:586)
      * org.hibernate.tuple.entity.PojoEntityTuplizer.setPropertyValues(PojoEntityTuplizer.java:231)
      * org.hibernate.persister.entity.AbstractEntityPersister.setPropertyValues(AbstractEntityPersister.java:3824)
      * org.hibernate.engine.TwoPhaseLoad.initializeEntity(TwoPhaseLoad.java:153)
      * org.hibernate.loader.Loader.initializeEntitiesAndCollections(Loader.java:898)
      * org.hibernate.loader.Loader.doQuery(Loader.java:773)
      * org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:270)
      * org.hibernate.loader.Loader.loadCollection(Loader.java:2082)
      * org.hibernate.loader.collection.CollectionLoader.initialize(CollectionLoader.java:62)
      * org.hibernate.persister.collection.AbstractCollectionPersister.initialize(AbstractCollectionPersister.java:628)
      * org.hibernate.event.def.DefaultInitializeCollectionEventListener.onInitializeCollection(DefaultInitializeCollectionEventListener.java:83)
      * org.hibernate.impl.SessionImpl.initializeCollection(SessionImpl.java:1853)
      * org.hibernate.collection.AbstractPersistentCollection.initialize(AbstractPersistentCollection.java:369)
      * org.hibernate.collection.AbstractPersistentCollection.read(AbstractPersistentCollection.java:111)
      * org.hibernate.collection.PersistentSet.iterator(PersistentSet.java:186)
      * org.hisp.dhis.organisationunit.DefaultOrganisationUnitService.getDepth(DefaultOrganisationUnitService.java:395)
      * org.hisp.dhis.organisationunit.DefaultOrganisationUnitService.getDepth(DefaultOrganisationUnitService.java:397)
      * org.hisp.dhis.organisationunit.DefaultOrganisationUnitService.getDepth(DefaultOrganisationUnitService.java:397)
      * org.hisp.dhis.organisationunit.DefaultOrganisationUnitService.getNumberOfOrganisationalLevels(DefaultOrganisationUnitService.java:375)
      * org.hisp.dhis.organisationunit.DefaultOrganisationUnitService.getFilledOrganisationUnitLevels(DefaultOrganisationUnitService.java:547)
      * org.hisp.dhis.organisationunit.DefaultOrganisationUnitService.getOrganisationUnitLevels(DefaultOrganisationUnitService.java:523)
      * sun.reflect.NativeMethodAccessorImpl.invoke0(NativeMethodAccessorImpl.java:-2)
      * sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      * sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      * java.lang.reflect.Method.invoke(Method.java:597)
      * org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:309)
      * org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      * org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      * org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:110)
      * org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      * org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89)
      * org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      * org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)
      * $Proxy12.getOrganisationUnitLevels(Unknown source)
      * org.hisp.dhis.importexport.action.exp.GetExportOptionsAction.execute(GetExportOptionsAction.java:114)
      * sun.reflect.NativeMethodAccessorImpl.invoke0(NativeMethodAccessorImpl.java:-2)
      * sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      * sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      * java.lang.reflect.Method.invoke(Method.java:597)
      * com.opensymphony.xwork2.DefaultActionInvocation.invokeAction(DefaultActionInvocation.java:441)
      * com.opensymphony.xwork2.DefaultActionInvocation.invokeActionOnly(DefaultActionInvocation.java:280)
      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:243)
      * org.hisp.dhis.webportal.interceptor.XWorkPortalUserInterceptor.intercept(XWorkPortalUserInterceptor.java:82)
      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
      * org.hisp.dhis.webportal.interceptor.XWorkPortalModuleInterceptor.intercept(XWorkPortalModuleInterceptor.java:85)
      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
      * org.hisp.dhis.webportal.interceptor.XWorkPortalMenuInterceptor.intercept(XWorkPortalMenuInterceptor.java:91)
      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
      * org.hisp.dhis.webportal.interceptor.XWorkPortalParamsInterceptor.intercept(XWorkPortalParamsInterceptor.java:117)
      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
      * org.hisp.dhis.interceptor.ContextInterceptor.intercept(ContextInterceptor.java:70)
      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
      * org.hisp.dhis.interceptor.StyleInterceptor.intercept(StyleInterceptor.java:107)
      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
      * org.hisp.dhis.interceptor.SystemSettingInterceptor.intercept(SystemSettingInterceptor.java:96)
      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
      * org.hisp.dhis.interceptor.DisplayPropertyInterceptor.intercept(DisplayPropertyInterceptor.java:90)
      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
      * org.hisp.dhis.interceptor.SortOrderInterceptor.intercept(SortOrderInterceptor.java:124)
      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
      * org.hisp.dhis.security.intercept.XWorkSecurityInterceptor.intercept(XWorkSecurityInterceptor.java:98)
      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
      * org.hisp.dhis.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:141)
      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
      * com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:126)
      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
      * com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:195)
      * com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
      * com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:179)
      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
      * org.hisp.dhis.interceptor.ExceptionInterceptor.intercept(ExceptionInterceptor.java:98)
      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
      * org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:52)
      * org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:488)
      * org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:395)
      * org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139)
      * org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:368)
      * org.hisp.dhis.security.filter.RequiredLoginFilter.doFilter(RequiredLoginFilter.java:129)
      * org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
      * org.hisp.dhis.security.filter.AutomaticAccessFilter.doFilter(AutomaticAccessFilter.java:112)
      * org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
      * org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:105)
      * org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
      * org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:187)
      * org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
      * org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:79)
      * org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
      * org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:169)
      * org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:237)
      * org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
      * org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139)
      * org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198)
      * org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
      * org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139)
      * org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:378)
      * org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
      * org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
      * org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
      * org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:417)
      * org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
      * org.mortbay.jetty.Server.handle(Server.java:324)
      * org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:535)
      * org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:865)
      * org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:539)
      * org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212)
      * org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
      * org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409)
      * org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:520)

  [-] Caused by (java.lang.IllegalArgumentException): null

      * sun.reflect.GeneratedMethodAccessor204.invoke(Unknown source)
      * sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      * java.lang.reflect.Method.invoke(Method.java:597)
      * org.hibernate.property.BasicPropertyAccessor$BasicSetter.set(BasicPropertyAccessor.java:66)
      * org.hibernate.tuple.entity.AbstractEntityTuplizer.setPropertyValues(AbstractEntityTuplizer.java:586)
      * org.hibernate.tuple.entity.PojoEntityTuplizer.setPropertyValues(PojoEntityTuplizer.java:231)
      * org.hibernate.persister.entity.AbstractEntityPersister.setPropertyValues(AbstractEntityPersister.java:3824)
      * org.hibernate.engine.TwoPhaseLoad.initializeEntity(TwoPhaseLoad.java:153)
      * org.hibernate.loader.Loader.initializeEntitiesAndCollections(Loader.java:898)
      * org.hibernate.loader.Loader.doQuery(Loader.java:773)
      * org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:270)
      * org.hibernate.loader.Loader.loadCollection(Loader.java:2082)
      * org.hibernate.loader.collection.CollectionLoader.initialize(CollectionLoader.java:62)
      * org.hibernate.persister.collection.AbstractCollectionPersister.initialize(AbstractCollectionPersister.java:628)
      * org.hibernate.event.def.DefaultInitializeCollectionEventListener.onInitializeCollection(DefaultInitializeCollectionEventListener.java:83)
      * org.hibernate.impl.SessionImpl.initializeCollection(SessionImpl.java:1853)
      * org.hibernate.collection.AbstractPersistentCollection.initialize(AbstractPersistentCollection.java:369)
      * org.hibernate.collection.AbstractPersistentCollection.read(AbstractPersistentCollection.java:111)
      * org.hibernate.collection.PersistentSet.iterator(PersistentSet.java:186)
      * org.hisp.dhis.organisationunit.DefaultOrganisationUnitService.getDepth(DefaultOrganisationUnitService.java:395)
      * org.hisp.dhis.organisationunit.DefaultOrganisationUnitService.getDepth(DefaultOrganisationUnitService.java:397)
      * org.hisp.dhis.organisationunit.DefaultOrganisationUnitService.getDepth(DefaultOrganisationUnitService.java:397)
      * org.hisp.dhis.organisationunit.DefaultOrganisationUnitService.getNumberOfOrganisationalLevels(DefaultOrganisationUnitService.java:375)
      * org.hisp.dhis.organisationunit.DefaultOrganisationUnitService.getFilledOrganisationUnitLevels(DefaultOrganisationUnitService.java:547)
      * org.hisp.dhis.organisationunit.DefaultOrganisationUnitService.getOrganisationUnitLevels(DefaultOrganisationUnitService.java:523)
      * sun.reflect.NativeMethodAccessorImpl.invoke0(NativeMethodAccessorImpl.java:-2)
      * sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      * sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      * java.lang.reflect.Method.invoke(Method.java:597)
      * org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:309)
      * org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      * org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      * org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:110)
      * org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      * org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89)
      * org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      * org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)
      * $Proxy12.getOrganisationUnitLevels(Unknown source)
      * org.hisp.dhis.importexport.action.exp.GetExportOptionsAction.execute(GetExportOptionsAction.java:114)
      * sun.reflect.NativeMethodAccessorImpl.invoke0(NativeMethodAccessorImpl.java:-2)
      * sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      * sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      * java.lang.reflect.Method.invoke(Method.java:597)
      * com.opensymphony.xwork2.DefaultActionInvocation.invokeAction(DefaultActionInvocation.java:441)
      * com.opensymphony.xwork2.DefaultActionInvocation.invokeActionOnly(DefaultActionInvocation.java:280)
      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:243)
      * org.hisp.dhis.webportal.interceptor.XWorkPortalUserInterceptor.intercept(XWorkPortalUserInterceptor.java:82)
      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
      * org.hisp.dhis.webportal.interceptor.XWorkPortalModuleInterceptor.intercept(XWorkPortalModuleInterceptor.java:85)
      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
      * org.hisp.dhis.webportal.interceptor.XWorkPortalMenuInterceptor.intercept(XWorkPortalMenuInterceptor.java:91)
      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
      * org.hisp.dhis.webportal.interceptor.XWorkPortalParamsInterceptor.intercept(XWorkPortalParamsInterceptor.java:117)
      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
      * org.hisp.dhis.interceptor.ContextInterceptor.intercept(ContextInterceptor.java:70)
      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
      * org.hisp.dhis.interceptor.StyleInterceptor.intercept(StyleInterceptor.java:107)
      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
      * org.hisp.dhis.interceptor.SystemSettingInterceptor.intercept(SystemSettingInterceptor.java:96)
      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
      * org.hisp.dhis.interceptor.DisplayPropertyInterceptor.intercept(DisplayPropertyInterceptor.java:90)
      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
      * org.hisp.dhis.interceptor.SortOrderInterceptor.intercept(SortOrderInterceptor.java:124)
      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
      * org.hisp.dhis.security.intercept.XWorkSecurityInterceptor.intercept(XWorkSecurityInterceptor.java:98)
      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
      * org.hisp.dhis.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:141)
      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
      * com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:126)
      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
      * com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:195)
      * com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
      * com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:179)
      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
      * org.hisp.dhis.interceptor.ExceptionInterceptor.intercept(ExceptionInterceptor.java:98)
      * com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
      * org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:52)
      * org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:488)
      * org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:395)
      * org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139)
      * org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:368)
      * org.hisp.dhis.security.filter.RequiredLoginFilter.doFilter(RequiredLoginFilter.java:129)
      * org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
      * org.hisp.dhis.security.filter.AutomaticAccessFilter.doFilter(AutomaticAccessFilter.java:112)
      * org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
      * org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:105)
      * org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
      * org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:187)
      * org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
      * org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:79)
      * org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:380)
      * org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:169)
      * org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:237)
      * org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
      * org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139)
      * org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198)
      * org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
      * org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1139)
      * org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:378)
      * org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
      * org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
      * org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
      * org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:417)
      * org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
      * org.mortbay.jetty.Server.handle(Server.java:324)
      * org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:535)
      * org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:865)
      * org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:539)
      * org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212)
      * org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
      * org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409)
      * org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:520)





Follow ups

References