[Dhis2-users] Secundary geographical data needed for analysis

2016-10-21 Thread Marc Garnica
Hi all,
First of all, thank you for the support and the new release, it really has
some nice new features that will help us a lot!. We want to share with you
a discussion we have been developing this week to see if you can give us
some advice.

For every single data entry (individual with or without registration and
aggregated data) we always need at least one geographical data which refers
to where the data comes from. This is information can be selected in the
interface through the Org unit tree in the left.


But we sometimes need and additional geographical data referring to where
the patient comes from. In this case we add a data element to add this
data. This information is so important to create great analysis and reports
so we need to think well how we want to collect this geographical data.


The first option we did was just create a typed TEXT data element where the
user could enter manually the village where the patient came from. But
obviously, this was not correct enough because the user can write the same
village in more than one spelling way and also there was no feasible way to
use this data element as a dimension in the analysis so we were not able to
map the data in a map of villages or create a table with the cases by
village. So we need to formulate a new treatment


*POSSIBILITIES*

*1.   **CAPTURE THE VILLAGE AS A SET OF COORDINATES*

This options consists in create a data element with type COORDINATES and
add it to the form. With this options we can add a the geographical
information of where the patient comes from by providing the coordinates of
the village or even better (in new versions of DHIS2) we can click on the
map, search for the village in the search bar and capture the coordinates
of it visually.

Nice feature but then the village information is only stored as a pair of
coordinates, there is no auxiliary information as for instance its name. In
the analytical point of view we can now show the cases in a map distributed
by village (which is nice) but we cannot create the desired table with the
cases by village.

Another issue in this option is that for the end-user sometimes it will be
difficult to interact with the map and be able to capture the correct
village.

*2.   **CAPTURE THE VILLAGE AS A ORGANISATION  UNIT*

This option appeared once 2.25 DHIS2 version was released with a new
Organisation Unit Type for data elements. Using that, we can create a new
data element with type = Organisation unit to capture the information of
where the patient comes from.

So in this option we can have a user with data capture permission only on
the Sierra Leona hierarchy of organisation units but able to select a
village for example in Benin hierarchy of organisation units.

Even though the Organisation unit type data element is the more natural way
to specify where the patient comes from, we experienced some problems.
Firstly, we are not able to use this data as a dimension for aggregate
events information (for instance knowing how many events are registered
with a patient coming from X village). And secondly, this option will mean
to add all the villages included in our area of research which may lead to
memory problems in our server.

*3.   **CAPTURE THE VILLAGE AS A RELATIONSHIP WITH THE PATIENT*

The 3rd option is to use the “Relationship” implemented in Tracker Capture
App. This app can create links between different entities registered in the
system; originally it was created for tracking a pregnant patient and then
registers to the system her new child. But we could use this relationship
in another way just registering villages in the system and then linking
these registrations with the patient. This is a more complex way to
implement our needs and it needs a lot of research to know if we will be
able to show the relationship in a map and to creates tables from them.



As I said, thank you very much. We look forward to your answer.


Marc Garnica
___
Mailing list: https://launchpad.net/~dhis2-users
Post to : dhis2-users@lists.launchpad.net
Unsubscribe : https://launchpad.net/~dhis2-users
More help   : https://help.launchpad.net/ListHelp


[Dhis2-users] Calculation indicator for some organisation unit in the formula

2016-10-21 Thread Carlos Nyembwe
Hi everyone,

I have a problem in my system, I need to use an indicator just for some
organisation unit, now it's big problem in my mind, I can't to solve it.

who can help me?

Thanks

-- 
*Carlos Nyembwe*
*I'm just a Computer Scientist*

*Skype: carloscnk1*
*Cell: (+243)813166381*
*Find me in: | Google Plus  |
**Linkedin
 | Facebook
 | Twitter
 |*
___
Mailing list: https://launchpad.net/~dhis2-users
Post to : dhis2-users@lists.launchpad.net
Unsubscribe : https://launchpad.net/~dhis2-users
More help   : https://help.launchpad.net/ListHelp


Re: [Dhis2-users] [Dhis2-devs] UID issues when loading dataentry module or user management

2016-10-21 Thread Ocaya Stephen
Yes Alex.

I managed to do that using the PSQL query above. Thought some people could
be having the same problem and running that query can sort them out as fast
as possible.

Regards

On Fri, Oct 21, 2016 at 1:51 PM, Alex Tumwesigye 
wrote:

> This was an issue in old versions. You need to replace all uids that begin
> with a number.
>
> Alex
>
>
> On Thursday, October 20, 2016, Ocaya Stephen  wrote:
>
>> Dear All,
>>
>> You could have noted after upgrading DHIS2 from lower version to 2.24 or
>> so, the organisationunits may not load when opening data entry module or
>> user managerment so you can't attach any user to any orgunit.
>>
>> We noted that the issue is brought about by a Token Error on uid. All the
>> orgunits with uid starting with a number will cause this to fail in dhis2
>> 2.24 or so. To resolve, we managed to write an SQL query to update the uids
>> as below.
>>
>> UPDATE organisationunit SET uid = (
>>  CASE
>> WHEN (substring(uid FROM 1 FOR 1)) = '0'
>> THEN 'o' || substring(uid FROM 2)
>> WHEN (substring(uid FROM 1 FOR 1)) = '1'
>> THEN 'a' || substring(uid FROM 2)
>> WHEN (substring(uid FROM 1 FOR 1)) = '2'
>> THEN 'b' || substring(uid FROM 2)
>> WHEN (substring(uid FROM 1 FOR 1)) = '3'
>> THEN 'c' || substring(uid FROM 2)
>> WHEN (substring(uid FROM 1 FOR 1)) = '4'
>> THEN 'd' || substring(uid FROM 2)
>> WHEN (substring(uid FROM 1 FOR 1)) = '5'
>> THEN 'e' || substring(uid FROM 2)
>> WHEN (substring(uid FROM 1 FOR 1)) = '6'
>> THEN 'f' || substring(uid FROM 2)
>> WHEN (substring(uid FROM 1 FOR 1)) = '7'
>> THEN 'g' || substring(uid FROM 2)
>> WHEN (substring(uid FROM 1 FOR 1)) = '8'
>> THEN 'h' || substring(uid FROM 2)
>> WHEN (substring(uid FROM 1 FOR 1)) = '9'
>> THEN 'i' || substring(uid FROM 2)
>> ELSE
>> uid
>> END
>>   )
>> WHERE uid ~ '^[0-9]';
>>
>> Replacing the starting number with a letter random.
>>
>> Hope this helps
>>
>> --
>>
>> *You can do anything, but not everything.*
>>
>>
>
> --
> Alex Tumwesigye
>
> Technical Advisor - DHIS2 (Consultant),
> Ministry of Health/AFENET  | HISP Uganda
> Kampala
> Uganda
> +256 774149 775, + 256 759 800161
> Skype ID: talexie
>
> IT Consultant (Servers, Networks and Security, Health Information Systems
> - DHIS2, Disease Outbreak & Surveillance Systems) & Solar Consultant
>
>
> "I don't want to be anything other than what I have been - one tree hill "
>
>


-- 

*You can do anything, but not everything.*
___
Mailing list: https://launchpad.net/~dhis2-users
Post to : dhis2-users@lists.launchpad.net
Unsubscribe : https://launchpad.net/~dhis2-users
More help   : https://help.launchpad.net/ListHelp


Re: [Dhis2-users] [Dhis2-devs] UID issues when loading dataentry module or user management

2016-10-21 Thread Alex Tumwesigye
This was an issue in old versions. You need to replace all uids that begin
with a number.

Alex

On Thursday, October 20, 2016, Ocaya Stephen  wrote:

> Dear All,
>
> You could have noted after upgrading DHIS2 from lower version to 2.24 or
> so, the organisationunits may not load when opening data entry module or
> user managerment so you can't attach any user to any orgunit.
>
> We noted that the issue is brought about by a Token Error on uid. All the
> orgunits with uid starting with a number will cause this to fail in dhis2
> 2.24 or so. To resolve, we managed to write an SQL query to update the uids
> as below.
>
> UPDATE organisationunit SET uid = (
>  CASE
> WHEN (substring(uid FROM 1 FOR 1)) = '0'
> THEN 'o' || substring(uid FROM 2)
> WHEN (substring(uid FROM 1 FOR 1)) = '1'
> THEN 'a' || substring(uid FROM 2)
> WHEN (substring(uid FROM 1 FOR 1)) = '2'
> THEN 'b' || substring(uid FROM 2)
> WHEN (substring(uid FROM 1 FOR 1)) = '3'
> THEN 'c' || substring(uid FROM 2)
> WHEN (substring(uid FROM 1 FOR 1)) = '4'
> THEN 'd' || substring(uid FROM 2)
> WHEN (substring(uid FROM 1 FOR 1)) = '5'
> THEN 'e' || substring(uid FROM 2)
> WHEN (substring(uid FROM 1 FOR 1)) = '6'
> THEN 'f' || substring(uid FROM 2)
> WHEN (substring(uid FROM 1 FOR 1)) = '7'
> THEN 'g' || substring(uid FROM 2)
> WHEN (substring(uid FROM 1 FOR 1)) = '8'
> THEN 'h' || substring(uid FROM 2)
> WHEN (substring(uid FROM 1 FOR 1)) = '9'
> THEN 'i' || substring(uid FROM 2)
> ELSE
> uid
> END
>   )
> WHERE uid ~ '^[0-9]';
>
> Replacing the starting number with a letter random.
>
> Hope this helps
>
> --
>
> *You can do anything, but not everything.*
>
>

-- 
Alex Tumwesigye

Technical Advisor - DHIS2 (Consultant),
Ministry of Health/AFENET  | HISP Uganda
Kampala
Uganda
+256 774149 775, + 256 759 800161
Skype ID: talexie

IT Consultant (Servers, Networks and Security, Health Information Systems -
DHIS2, Disease Outbreak & Surveillance Systems) & Solar Consultant


"I don't want to be anything other than what I have been - one tree hill "
___
Mailing list: https://launchpad.net/~dhis2-users
Post to : dhis2-users@lists.launchpad.net
Unsubscribe : https://launchpad.net/~dhis2-users
More help   : https://help.launchpad.net/ListHelp


[Dhis2-users] Betr: Betr: Re: Data Import does not allow a combination of identifier types in 2.22

2016-10-21 Thread Gijsbert OOMS
Any update on this? When trying to import a csv and using "code" ID scheme 
for organisation unit, nothing gets imported ("Organisation unit not found 
or not accessible ")

This worked fine up to version 2.21. I just tested with the same csv-file 
every later version up to 2.25 and it seems broken in all of them.


GIJSBERT OOMS
EXPERT D4D - Digitalisation for Development
BELGIAN DEVELOPMENT AGENCY
RUE HAUTE 147
1000 BRUSSELS
T +32 (0)2 505 38 44
F +32 (0)2 502 98 62
WWW.BTCCTB.ORG
Save paper! Think before you print



Van:Gijsbert OOMS 
Aan:"Laura E. Lincks" 
Cc: DHIS Users , DHIS 2 Developers 
list 
Datum:  29/06/2016 18:51
Onderwerp:  [Dhis2-users] Betr: Re: Data Import does not allow a 
combination of identifier types in 2.22
Verzonden door: "Dhis2-users" 




Exactly same problem in Burundi. Was fine in 2.21, not working in 2.22. 
Haven't tested yet in 2.23. 


GIJSBERT OOMS
EXPERT D4D - Digitalisation for Development 
BELGIAN DEVELOPMENT AGENCY
RUE HAUTE 147
1000 BRUSSELS
T +32 (0)2 505 38 44
F +32 (0)2 502 98 62
WWW.BTCCTB.ORG 
Save paper! Think before you print 



Van:"Laura E. Lincks"  
Aan:DHIS Users , DHIS 2 
Developers list  
Datum:23/06/2016 21:00 
Onderwerp:Re: [Dhis2-users] Data Import does not allow a 
combination of identifier types in 2.22 
Verzonden door:"Dhis2-users" 
 



Asking if anyone has experienced this problem one more time... 
Laura E. Lincks
Database Manager/Developer
ICAP - Columbia University
Mailman School of Public Health
60 Haven Ave, Floor B1
New York, NY 10032
Tel: 212 304 7132 

On Wed, Apr 20, 2016 at 5:15 PM, Laura E. Lincks <
laura.lin...@icap.columbia.edu> wrote: 
Version:2.22 
Build revision:21927 
​​ 
​We are testing an import of data which we have routinely done in 2.20. 
We are importing a csv file with the following columns: 
​​dataelement 
period ​​
orgunit ​​categoryoptioncombo ​​attributeoptioncombo value 







​attributeoptioncombo is blank 
​​​dataelement  and ​categoryoptioncombo contain UIDs 
orgunit contains Code 

In 2.20 we were able to set the Data element ID scheme and the Org unit ID 
scheme to what we wanted without issue. In 2.22 we have the same options 
on the front end but when attempting to import a csv file with dataelement 
scheme set to UID and orgunit scheme set to Code, the import fails. If I 
take the same data file and convert the orgunits to the appropriate UID 
and then import, it succeeds. 

It appears that the option exists in 2.22 but is ignored when performing 
the import. Is this intentional? Perhaps it was corrected in a later 
build? 

Thanks in advance. 

Laura E. Lincks
Database Manager/Developer
ICAP - Columbia University
Mailman School of Public Health
60 Haven Ave, Floor B1
New York, NY 10032
Tel: 212 304 7132 
___
Mailing list: https://launchpad.net/~dhis2-users
Post to : dhis2-users@lists.launchpad.net
Unsubscribe : https://launchpad.net/~dhis2-users
More help   : https://help.launchpad.net/ListHelp
___
Mailing list: https://launchpad.net/~dhis2-users
Post to : dhis2-users@lists.launchpad.net
Unsubscribe : https://launchpad.net/~dhis2-users
More help   : https://help.launchpad.net/ListHelp


___
Mailing list: https://launchpad.net/~dhis2-users
Post to : dhis2-users@lists.launchpad.net
Unsubscribe : https://launchpad.net/~dhis2-users
More help   : https://help.launchpad.net/ListHelp


[Dhis2-users] Testing upgrade of DHIS2 from 2.21 to 2.24

2016-10-21 Thread Aamer Mohammed
Hi Lars/Morten,

Recently we did a DHIS upgrade test to upgrade our instances from 2.21 to
2.24. We started with 2.21 instance having good amount of metadata. We
sequentially upgraded that instance to 2.24 by following the upgrade
scripts for each DHIS version.
>From that upgraded instance, an export was taken using the new exporter
(/api/24/metadata). It was then imported to another fresh instance on 2.24
using the new importer. Below are our findings.

1) Most of the blockers were due to introducing of new constraints across
DHIS versions. The upgraded instance did not have these constraints but
the new fresh instance had them so it was preventing the import.
ex: shortName in dataelements table became unique
numerator is required for all indicators
dataelement_operand_unique_key (it is removed now)
We manually corrected our data so it abides as per the constraints. *The
list of constraints introduced in a DHIS version would be part of upgrade
notes. Is this a right assumption?*

2) Allow for many-to-many between Group and GroupSet. If we have groups
which are part of multiple group sets, Hibernate will create duplicate
GroupSets and it results in database integrity issue when importing.
We manually corrected the data and ensured one to one mapping between them
to proceed further. *When do we plan to have the many-to-many mapping
between Group and GroupSet?*

3) Error importing Charts, Report Tables, Event charts, Event reports.
We excluded these metadata types from the export.json to continue further.
We are unable to import these in 2.25 also. *Please do inform us once the
fix is done in 2.25 so that we can retest.*

4) When we update a new DHIS war, the instance is migrated to new DHIS
version. But if existing data in our instance does not abide by the new
constraints, the new constraints are not applied in our upgraded instance.
So effectively it is not pure DHIS upgrade. So ideally, before applying the
war file we should modify our data to abide the new constraints. *Is this a
right assumption?*

Please suggest.

Thanks
Aamer.
___
Mailing list: https://launchpad.net/~dhis2-users
Post to : dhis2-users@lists.launchpad.net
Unsubscribe : https://launchpad.net/~dhis2-users
More help   : https://help.launchpad.net/ListHelp


Re: [Dhis2-users] [Dhis2-devs] dhis 2.25 upgrade

2016-10-21 Thread Paulo Grácio
disregard my question... looking at the wrong container ;)

On Fri, Oct 21, 2016 at 10:49 AM Paulo Grácio  wrote:

> Hi,
>
> when starting version 2.25 it logs
>
> INFO  2016-10-21 08:42:25,118 Environment variable DHIS2_HOME points to
> /opt/dhis2/config (DefaultLocationManager.java [localhost-startStop-1])
> INFO  2016-10-21 08:42:25,144 File /opt/dhis2/config/dhis.conf does not
> exist (DefaultLocationManager.java [localhost-startStop-1])
>
> root@2f72d3f3ea13:/opt/dhis2/config# ls -la
> total 16
> drwxr-xr-x 2 root root 4096 Oct 21 08:41 .
> drwxr-xr-x 4 root root 4096 Oct 21 08:41 ..
> -rw-r--r-- 1 root root  488 Oct 21 08:24 dhis.conf
> -rw-r--r-- 1 root root  282 Dec  4  2015 hibernate.properties
>
> any idea why this might be happening?
>
> BR,
> -- Paulo
>
>
>
>
> On Fri, Oct 14, 2016 at 8:21 PM Lars Helge Øverland 
> wrote:
>
> Hi all,
>
> please take care to read the upgrade notes for DHIS version 2.25:
>
> https://www.dhis2.org/225-upgrade
>
> Some highlights:
>
> - A new column "deleted" is introduced for the datavalue table. For large
> databases it is recommended to run the upgrade script
> .
> This will be taken care of by DHIS 2 itself if not run but the upgrade
> script is faster as it drops / creates constraints around the upgrade
> statements. The upgrade might take a few minutes on large database so the
> upgrade process should be planned for.
>
> - There is a breaking API change around the data set to data element
> association, so app developers should evaluate this.
>
> - Support for the *hibernate.properties* config file is removed after
> being deprecated for a year. Use *dhis.conf* as filename. Note that the
> config properties is updated. Install docs here
> 
> .
>
>
>
>
> Lars
>
> --
> Lars Helge Øverland
> Lead developer, DHIS 2
> University of Oslo
> Skype: larshelgeoverland
> l...@dhis2.org
> http://www.dhis2.org 
>
> ___
> Mailing list: https://launchpad.net/~dhis2-devs
> Post to : dhis2-d...@lists.launchpad.net
> Unsubscribe : https://launchpad.net/~dhis2-devs
> More help   : https://help.launchpad.net/ListHelp
>
>
___
Mailing list: https://launchpad.net/~dhis2-users
Post to : dhis2-users@lists.launchpad.net
Unsubscribe : https://launchpad.net/~dhis2-users
More help   : https://help.launchpad.net/ListHelp


Re: [Dhis2-users] [Dhis2-devs] dhis 2.25 upgrade

2016-10-21 Thread Paulo Grácio
Hi,

when starting version 2.25 it logs

INFO  2016-10-21 08:42:25,118 Environment variable DHIS2_HOME points to
/opt/dhis2/config (DefaultLocationManager.java [localhost-startStop-1])
INFO  2016-10-21 08:42:25,144 File /opt/dhis2/config/dhis.conf does not
exist (DefaultLocationManager.java [localhost-startStop-1])

root@2f72d3f3ea13:/opt/dhis2/config# ls -la
total 16
drwxr-xr-x 2 root root 4096 Oct 21 08:41 .
drwxr-xr-x 4 root root 4096 Oct 21 08:41 ..
-rw-r--r-- 1 root root  488 Oct 21 08:24 dhis.conf
-rw-r--r-- 1 root root  282 Dec  4  2015 hibernate.properties

any idea why this might be happening?

BR,
-- Paulo




On Fri, Oct 14, 2016 at 8:21 PM Lars Helge Øverland  wrote:

> Hi all,
>
> please take care to read the upgrade notes for DHIS version 2.25:
>
> https://www.dhis2.org/225-upgrade
>
> Some highlights:
>
> - A new column "deleted" is introduced for the datavalue table. For large
> databases it is recommended to run the upgrade script
> .
> This will be taken care of by DHIS 2 itself if not run but the upgrade
> script is faster as it drops / creates constraints around the upgrade
> statements. The upgrade might take a few minutes on large database so the
> upgrade process should be planned for.
>
> - There is a breaking API change around the data set to data element
> association, so app developers should evaluate this.
>
> - Support for the *hibernate.properties* config file is removed after
> being deprecated for a year. Use *dhis.conf* as filename. Note that the
> config properties is updated. Install docs here
> 
> .
>
>
>
>
> Lars
>
> --
> Lars Helge Øverland
> Lead developer, DHIS 2
> University of Oslo
> Skype: larshelgeoverland
> l...@dhis2.org
> http://www.dhis2.org 
>
> ___
> Mailing list: https://launchpad.net/~dhis2-devs
> Post to : dhis2-d...@lists.launchpad.net
> Unsubscribe : https://launchpad.net/~dhis2-devs
> More help   : https://help.launchpad.net/ListHelp
>
___
Mailing list: https://launchpad.net/~dhis2-users
Post to : dhis2-users@lists.launchpad.net
Unsubscribe : https://launchpad.net/~dhis2-users
More help   : https://help.launchpad.net/ListHelp


Re: [Dhis2-users] Compulsory data element not seems to be working

2016-10-21 Thread Ibrahim Bayoh
Hi Lars,
Regarding the Compulsory data element feature, it's still not been fixed. We've
tested on 2.22 and 2.23 with almost the result.


   - From the 'Data Sets' screen in DHIS2
   - Select a Data Set
   - Right click it and then 'Edit Compulsory Data Elements'
   - Attempt to add one of the Data Elements to the DataSet
   - Hit 'Save'.

The action fails, with a DHIS2 error screen asking you to go back, where
the changes aren't saved.

See log below.



> From the 'Data Sets' screen in DHIS2, select a Data Set, click it and
> then 'Edit Compulsory Data Elements'. Attempt to add one of these Data
> Elements to the Data Set and hit 'Save'. The action fails, with a DHIS2
> error screen asking you to go back, where the changes aren't saved.


> This appears to happen on both our dev server (2.22) and staging (2.21),
> for all data set and data element combinations.


> See log output below:

`* INFO 2016-10-19 12:54:54,425 'admin' update
> org.hisp.dhis.dataset.DataSet, name: georgeTest, uid: vjAYdNmic8v
> (AuditLogUtil.java [http-apr-8080-exec-7])

* WARN 2016-10-19 12:54:54,429 SQL Error: 0, SQLState: 23505
> (SqlExceptionHelper.java [http-apr-8080-exec-7])

* ERROR 2016-10-19 12:54:54,429 ERROR: duplicate key value violates unique
> constraint "dataelement_operand_unique_key"

Detail: Key (dataelementid, categoryoptioncomboid)=(1627, 1596) already
> exists. (SqlExceptionHelper.java [http-apr-8080-exec-7])

at org.springframework.orm.hibernate4.HibernateTransactionManager.
> convertHibernateAccessException(HibernateTransactionManager.java:730)

at org.springframework.orm.hibernate4.HibernateTransactionManager.doCommit(
> HibernateTransactionManager.java:592)

at org.springframework.transaction.support.AbstractPlatformTransactionMan
> ager.processCommit(AbstractPlatformTransactionManager.java:757)

at org.springframework.transaction.support.AbstractPlatformTransactionMan
> ager.commit(AbstractPlatformTransactionManager.java:726)

at org.springframework.transaction.interceptor.TransactionAspectSupport.
> commitTransactionAfterReturning(TransactionAspectSupport.java:521)

at org.springframework.transaction.interceptor.TransactionAspectSupport.
> invokeWithinTransaction(TransactionAspectSupport.java:291)

at org.springframework.transaction.interceptor.
> TransactionInterceptor.invoke(TransactionInterceptor.java:96)

at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(
> ReflectiveMethodInvocation.java:179)

at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(
> ExposeInvocationInterceptor.java:92)

at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(
> ReflectiveMethodInvocation.java:179)

at org.springframework.aop.framework.JdkDynamicAopProxy.
> invoke(JdkDynamicAopProxy.java:207)

at com.sun.proxy.$Proxy99.updateDataSet(Unknown Source)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(
> NativeMethodAccessorImpl.java:62)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(
> DelegatingMethodAccessorImpl.java:43)

at java.lang.reflect.Method.invoke(Method.java:498)

at com.opensymphony.xwork2.DefaultActionInvocation.invokeAction(
> DefaultActionInvocation.java:450)

at com.opensymphony.xwork2.DefaultActionInvocation.invokeActionOnly(
> DefaultActionInvocation.java:289)

at com.opensymphony.xwork2.DefaultActionInvocation.invoke(
> DefaultActionInvocation.java:252)

at org.hisp.dhis.webportal.interceptor.XWorkPortalUserInterceptor.intercept(
> XWorkPortalUserInterceptor.java:85)

at com.opensymphony.xwork2.DefaultActionInvocation.invoke(
> DefaultActionInvocation.java:246)

at org.hisp.dhis.webportal.interceptor.XWorkPortalModuleInterceptor.
> intercept(XWorkPortalModuleInterceptor.java:91)

at com.opensymphony.xwork2.DefaultActionInvocation.invoke(
> DefaultActionInvocation.java:246)

at org.hisp.dhis.webportal.interceptor.XWorkPortalMenuInterceptor.intercept(
> XWorkPortalMenuInterceptor.java:94)

at com.opensymphony.xwork2.DefaultActionInvocation.invoke(
> DefaultActionInvocation.java:246)

at org.hisp.dhis.webportal.interceptor.XWorkPortalParamsInterceptor.
> intercept(XWorkPortalParamsInterceptor.java:149)

at com.opensymphony.xwork2.DefaultActionInvocation.invoke(
> DefaultActionInvocation.java:246)

at org.hisp.dhis.interceptor.ContextInterceptor.intercept(
> ContextInterceptor.java:83)

at com.opensymphony.xwork2.DefaultActionInvocation.invoke(
> DefaultActionInvocation.java:246)

at org.hisp.dhis.interceptor.UserSettingInterceptor.intercept(
> UserSettingInterceptor.java:81)

at com.opensymphony.xwork2.DefaultActionInvocation.invoke(
> DefaultActionInvocation.java:246)

at org.hisp.dhis.security.intercept.LoginInterceptor.
> intercept(LoginInterceptor.java:85)

at com.opensymphony.xwork2.DefaultActionInvocation.invoke(
> DefaultActionInvocation.java:246)

at org.hisp.dhis.security.intercept.XWorkSecurityInterceptor.intercept(
> XWorkSecurityInterceptor.java:116)

at