Re: [Dhis2-devs] NPE on opening messages in 2.25

2016-10-13 Thread Halvdan Hoem Grelland
This was due to a missing null-check when accessing the (nullable) feedback
recipient group. Fixed in 2.26-SNAP and backported to 2.25.

On Thu, Oct 13, 2016 at 4:52 PM, Stian Sandvold  wrote:

> Have you set up feedback recipient groups?
> ——
> Stian Sandvold
> Software developer, DHIS 2
> University of Oslo
> http://www.dhis2.org
>
>
>
>
> On 13 Oct 2016, at 15:40, Jason Pickering 
> wrote:
>
> When accessing messages from the dashboard, I get this error. Any ideas?
>
> Version:2.25Build revision:332e86dBuild date:2016-10-13 08:37
>
> * ERROR 2016-10-13 15:38:27,628 Error while executing action
> (ExceptionInterceptor.java [http-bio-127.0.0.1-8090-exec-18])
> java.lang.NullPointerException
> at org.hisp.dhis.configuration.DefaultConfigurationService.
> isUserInFeedbackRecipientUserGroup(DefaultConfigurationService.java:91)
> 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 org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection
> (AopUtils.java:302)
> at org.springframework.aop.framework.ReflectiveMethodInvocation.
> invokeJoinpoint(ReflectiveMethodInvocation.java:190)
> at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(
> ReflectiveMethodInvocation.java:157)
> at org.springframework.transaction.interceptor.TransactionInterceptor$1.
> proceedWithInvocation(TransactionInterceptor.java:99)
> at org.springframework.transaction.interceptor.TransactionAspectSupport.
> invokeWithinTransaction(TransactionAspectSupport.java:281)
> at org.springframework.transaction.interceptor.
> TransactionInterceptor.invoke(TransactionInterceptor.java:96)
> at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(
> ReflectiveMethodInvocation.java:179)
> at org.springframework.aop.framework.JdkDynamicAopProxy.
> invoke(JdkDynamicAopProxy.java:208)
> at com.sun.proxy.$Proxy63.isUserInFeedbackRecipientUserGroup(Unknown
> Source)
> at org.hisp.dhis.message.DefaultMessageService.
> hasAccessToManageFeedbackMessages(DefaultMessageService.java:478)
> 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 org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection
> (AopUtils.java:302)
> at org.springframework.aop.framework.ReflectiveMethodInvocation.
> invokeJoinpoint(ReflectiveMethodInvocation.java:190)
> at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(
> ReflectiveMethodInvocation.java:157)
> at org.springframework.transaction.interceptor.TransactionInterceptor$1.
> proceedWithInvocation(TransactionInterceptor.java:99)
> at org.springframework.transaction.interceptor.TransactionAspectSupport.
> invokeWithinTransaction(TransactionAspectSupport.java:281)
> at org.springframework.transaction.interceptor.
> TransactionInterceptor.invoke(TransactionInterceptor.java:96)
> at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(
> ReflectiveMethodInvocation.java:179)
> at org.springframework.aop.framework.JdkDynamicAopProxy.
> invoke(JdkDynamicAopProxy.java:208)
> at com.sun.proxy.$Proxy76.hasAccessToManageFeedbackMessages(Unknown
> Source)
> at org.hisp.dhis.dashboard.message.action.GetMessagesAction.execute(
> GetMessagesAction.java:113)
> 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 ognl.OgnlRuntime.invokeMethod(OgnlRuntime.java:891)
> at ognl.OgnlRuntime.callAppropriateMethod(OgnlRuntime.java:1293)
> at ognl.ObjectMethodAccessor.callMethod(ObjectMethodAccessor.java:68)
> at com.opensymphony.xwork2.ognl.accessor.XWorkMethodAccessor.
> callMethodWithDebugInfo(XWorkMethodAccessor.java:117)
> at com.opensymphony.xwork2.ognl.accessor.XWorkMethodAccessor.callMethod(
> XWorkMethodAccessor.java:108)
> at ognl.OgnlRuntime.callMethod(OgnlRuntime.java:1369)
> at ognl.ASTMethod.getValueBody(ASTMethod.java:90)
> at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:212)
> at ognl.SimpleNode.getValue(SimpleNode.java:258)
> at ognl.Ognl.getValue(Ognl.java:494)
> at ognl.Ognl.getValue(Ognl.java:458)
> at com.opensymphony.xwork2.ognl.OgnlUtil$2.execute(OgnlUtil.java:309)
> at com.opensymphony.xwork2.ognl.OgnlUtil.compileAndExecute(
> OgnlUtil.java:340)
> at com.opensymphony.xwork2.ognl.OgnlUtil.getValue(OgnlUtil.java:307)
> at 

Re: [Dhis2-devs] NPE on opening messages in 2.25

2016-10-13 Thread Stian Sandvold
Have you set up feedback recipient groups?
——
Stian Sandvold
Software developer, DHIS 2
University of Oslo
http://www.dhis2.org




> On 13 Oct 2016, at 15:40, Jason Pickering  wrote:
> 
> When accessing messages from the dashboard, I get this error. Any ideas?
> 
> Version:
> 2.25
> Build revision:
> 332e86d
> Build date:
> 2016-10-13 08:37
> 
> * ERROR 2016-10-13 15:38:27,628 Error while executing action 
> (ExceptionInterceptor.java [http-bio-127.0.0.1-8090-exec-18])
> java.lang.NullPointerException
>   at 
> org.hisp.dhis.configuration.DefaultConfigurationService.isUserInFeedbackRecipientUserGroup(DefaultConfigurationService.java:91)
>   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 
> org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:302)
>   at 
> org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:190)
>   at 
> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157)
>   at 
> org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:99)
>   at 
> org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:281)
>   at 
> org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96)
>   at 
> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
>   at 
> org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:208)
>   at com.sun.proxy.$Proxy63.isUserInFeedbackRecipientUserGroup(Unknown 
> Source)
>   at 
> org.hisp.dhis.message.DefaultMessageService.hasAccessToManageFeedbackMessages(DefaultMessageService.java:478)
>   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 
> org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:302)
>   at 
> org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:190)
>   at 
> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157)
>   at 
> org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:99)
>   at 
> org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:281)
>   at 
> org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96)
>   at 
> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
>   at 
> org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:208)
>   at com.sun.proxy.$Proxy76.hasAccessToManageFeedbackMessages(Unknown 
> Source)
>   at 
> org.hisp.dhis.dashboard.message.action.GetMessagesAction.execute(GetMessagesAction.java:113)
>   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 ognl.OgnlRuntime.invokeMethod(OgnlRuntime.java:891)
>   at ognl.OgnlRuntime.callAppropriateMethod(OgnlRuntime.java:1293)
>   at ognl.ObjectMethodAccessor.callMethod(ObjectMethodAccessor.java:68)
>   at 
> com.opensymphony.xwork2.ognl.accessor.XWorkMethodAccessor.callMethodWithDebugInfo(XWorkMethodAccessor.java:117)
>   at 
> com.opensymphony.xwork2.ognl.accessor.XWorkMethodAccessor.callMethod(XWorkMethodAccessor.java:108)
>   at ognl.OgnlRuntime.callMethod(OgnlRuntime.java:1369)
>   at ognl.ASTMethod.getValueBody(ASTMethod.java:90)
>   at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:212)
>   at ognl.SimpleNode.getValue(SimpleNode.java:258)
>   at ognl.Ognl.getValue(Ognl.java:494)
>   at ognl.Ognl.getValue(Ognl.java:458)
>   at com.opensymphony.xwork2.ognl.OgnlUtil$2.execute(OgnlUtil.java:309)
>   at 
> com.opensymphony.xwork2.ognl.OgnlUtil.compileAndExecute(OgnlUtil.java:340)
>   at