← Back to team overview

dhis2-devs team mailing list archive

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

 

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 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