Ver. 3.4.4 - Jira linking causes NPE

Shane Lawrence, modified 12 Years ago.

Ver. 3.4.4 - Jira linking causes NPE

Youngling Posts: 3 Join Date: 8/22/11 Recent Posts
I just upgraded my trail version that I am evaluating to 3.4.4.
Before I was able to create new issue management tickets in Jira through Klaros, but could not link them to test cases. Recieved no feedback on why, no error messages, etc, it just did nothing.

Post-upgrade to 3.4.4 now when I try to link a test case to a jira ticket, it throws an error on searching, and linking the issue.
As follows:
========
SEVERE: java.lang.NullPointerException
javax.faces.el.EvaluationException: java.lang.NullPointerException
at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:102)
at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:102)
at javax.faces.component.UICommand.broadcast(UICommand.java:387)
at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:475)
at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:756)
at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:82)
at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100)
at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
at de.verit.klaros.web.beans.application.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:54)
at com.icesoft.faces.webapp.http.core.JsfLifecycleExecutor.apply(JsfLifecycleExecutor.java:18)
at com.icesoft.faces.webapp.http.core.ReceiveSendUpdates.renderCycle(ReceiveSendUpdates.java:132)
at com.icesoft.faces.webapp.http.core.ReceiveSendUpdates.service(ReceiveSendUpdates.java:74)
at com.icesoft.faces.webapp.http.core.RequestVerifier.service(RequestVerifier.java:31)
at com.icesoft.faces.webapp.http.common.standard.PathDispatcherServer.service(PathDispatcherServer.java:24)
at com.icesoft.faces.webapp.http.servlet.BasicAdaptingServlet.service(BasicAdaptingServlet.java:16)
at com.icesoft.faces.webapp.http.servlet.PathDispatcher.service(PathDispatcher.java:23)
at com.icesoft.faces.webapp.http.servlet.SessionDispatcher.service(SessionDispatcher.java:53)
at com.icesoft.faces.webapp.http.servlet.SessionVerifier.service(SessionVerifier.java:26)
at com.icesoft.faces.webapp.http.servlet.PathDispatcher.service(PathDispatcher.java:23)
at com.icesoft.faces.webapp.http.servlet.MainServlet.service(MainServlet.java:131)
at javax.servlet.http.HttpServlet.service(HttpServlet.java)
at de.verit.klaros.web.servlet.ExceptionHandlingPersistentFacesServlet.service(ExceptionHandlingPersistentFacesServlet.java:51)
at com.icesoft.faces.webapp.xmlhttp.BlockingServlet.service(BlockingServlet.java:56)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java)
at java.lang.Thread.run(Thread.java:662)
Caused by: java.lang.NullPointerException
at de.verit.klaros.web.beans.session.MylynAuthenticationBean.getConnection(MylynAuthenticationBean.java:119)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.jboss.seam.util.Reflections.invoke(Reflections.java:22)
at org.jboss.seam.intercept.RootInvocationContext.proceed(RootInvocationContext.java:32)
at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:56)
at org.jboss.seam.transaction.RollbackInterceptor.aroundInvoke(RollbackInterceptor.java:28)
at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
at org.jboss.seam.core.BijectionInterceptor.aroundInvoke(BijectionInterceptor.java:77)
at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
at org.jboss.seam.core.MethodContextInterceptor.aroundInvoke(MethodContextInterceptor.java:44)
at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
at org.jboss.seam.core.SynchronizationInterceptor.aroundInvoke(SynchronizationInterceptor.java:32)
at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
at org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:107)
at org.jboss.seam.intercept.JavaBeanInterceptor.interceptInvocation(JavaBeanInterceptor.java:185)
at org.jboss.seam.intercept.JavaBeanInterceptor.invoke(JavaBeanInterceptor.java:103)
at de.verit.klaros.web.beans.session.MylynAuthenticationBean_$$_javassist_seam_39.getConnection(MylynAuthenticationBean_$$_javassist_seam_39.java)
at de.verit.klaros.web.beans.pages.evaluate.EvaluateLinkIssuesTestCaseBean.testIssueId(EvaluateLinkIssuesTestCaseBean.java:510)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.jboss.seam.util.Reflections.invoke(Reflections.java:22)
at org.jboss.seam.intercept.RootInvocationContext.proceed(RootInvocationContext.java:32)
at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:56)
at org.jboss.seam.transaction.RollbackInterceptor.aroundInvoke(RollbackInterceptor.java:28)
at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
at org.jboss.seam.core.BijectionInterceptor.aroundInvoke(BijectionInterceptor.java:77)
at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
at org.jboss.seam.core.MethodContextInterceptor.aroundInvoke(MethodContextInterceptor.java:44)
at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
at org.jboss.seam.core.SynchronizationInterceptor.aroundInvoke(SynchronizationInterceptor.java:32)
at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
at org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:107)
at org.jboss.seam.intercept.JavaBeanInterceptor.interceptInvocation(JavaBeanInterceptor.java:185)
at org.jboss.seam.intercept.JavaBeanInterceptor.invoke(JavaBeanInterceptor.java:103)
at de.verit.klaros.web.beans.pages.evaluate.EvaluateLinkIssuesTestCaseBean_$$_javassist_seam_91.testIssueId(EvaluateLinkIssuesTestCaseBean_$$_javassist_seam_91.java)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.jboss.el.util.ReflectionUtil.invokeMethod(ReflectionUtil.java:335)
at org.jboss.el.util.ReflectionUtil.invokeMethod(ReflectionUtil.java:348)
at org.jboss.el.parser.AstPropertySuffix.invoke(AstPropertySuffix.java:58)
at org.jboss.el.parser.AstValue.invoke(AstValue.java:96)
at org.jboss.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:276)
at com.sun.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:68)
at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:88)
... 34 more
====
thumbnail
Torsten Stolpmann, modified 12 Years ago.

RE: Ver. 3.4.4 - Jira linking causes NPE

Jedi Council Member Posts: 755 Join Date: 2/12/09 Recent Posts
Hi Shane,

the error handling is broken here leading to the NPE , so first of all thanks for the notice.

It looks like the connection could not be established, so can you please check what a connection check under Configure / Issue Management Systems gives as a result?

As always the tomcat logs and a little bit of detail on your targetted Jira may be helpful here for us tracking this down.

Thanks,

Torsten
Shane Lawrence, modified 12 Years ago.

RE: Ver. 3.4.4 - Jira linking causes NPE

Youngling Posts: 3 Join Date: 8/22/11 Recent Posts
I replied to the email I received, with the log and connection info attached.
===
The steps I followed were to select a project, go straight to “evaluate”, “Link Issues”, select a test case, select an SUT and then type the ticket in the ID field. (TPF-5408).
On clicking the search icon, or the link button, it returns an error on the page, and the NPE in the logs is the result.
The error on the page is: #{evaluateLinkIssuesTestCaseBean.testIssueId}: java.lang.NullPointerException
===
thumbnail
Torsten Stolpmann, modified 12 Years ago.

RE: Ver. 3.4.4 - Jira linking causes NPE

Jedi Council Member Posts: 755 Join Date: 2/12/09 Recent Posts
Hi Shane,

thank you very much for attaching the screenshot, since this finally allowed us reproduce that situation:

You have set the system flag on your user account, which normally indicates that your account should be used non-interactively (e.g. for webservice authentication). Given that you should never had been able to log in with these credentials but due to a regression bug on our side you are able to log in nonetheless (Please note the error message 'This account has no permissions to login' after logging in). We have a fix ready for this problem, which will be adressed in a bugfix release 3.4.5 in the next days.

For an immediate solution please deactivate the system flag on your user account and you should be able to finally link issues to your Jira system.

Sorry for the trouble and thanks for your feedback,

Torsten
Shane Lawrence, modified 12 Years ago.

RE: Ver. 3.4.4 - Jira linking causes NPE

Youngling Posts: 3 Join Date: 8/22/11 Recent Posts
Thanks for the quick diagnosis and workaround.

As far as the root-cause regression bug:
I dont recall having set ALL my users up with the system flag, but they all have it, and it will not clear.
If I edit a user, un-select the system checkbox, and save, it returns no error, but it does not save this. When I use "back" and re-edit that user, the box is checked again.

I did workaround this by creating a new user, with administrator role, and did not check the system box, and that user is able to properly create and link jira issues to tickets.
Thanks again!
thumbnail
Torsten Stolpmann, modified 12 Years ago.

RE: Ver. 3.4.4 - Jira linking causes NPE

Jedi Council Member Posts: 755 Join Date: 2/12/09 Recent Posts
I dont recall having set ALL my users up with the system flag, but they all have it, and it will not clear.
If I edit a user, un-select the system checkbox, and save, it returns no error, but it does not save this. When I use "back" and re-edit that user, the box is checked again.


This is KLAROS-1373 (User system account flag can't be changed once user has been created) which has already been adressed towards 3.4.5 to be released RSN.

Thanks for spotting this!

Torsten