Details
-
Bug
-
Resolution: Fixed
-
Medium
-
None
-
None
-
None
Description
I'm getting an NPE in my REST resource that calls com.atlassian.sal.api.user.UserManager.getRemoteUser():
2014-08-06 19:26:20.249479500 2014-08-06 19:26:20,245 TP-Processor2 ERROR [common.error.jersey.ThrowableExceptionMapper] Uncaught exception thrown by REST service: The validated object is null 2014-08-06 19:26:20.249482500 java.lang.NullPointerException: The validated object is null 2014-08-06 19:26:20.249483500 at org.apache.commons.lang3.Validate.notNull(Validate.java:222) 2014-08-06 19:26:20.249483500 at org.apache.commons.lang3.Validate.notNull(Validate.java:203) 2014-08-06 19:26:20.249484500 at com.atlassian.crowd.manager.application.AliasManagerImpl.findUsernameByAlias(AliasManagerImpl.java:35) 2014-08-06 19:26:20.249497500 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 2014-08-06 19:26:20.249498500 at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 2014-08-06 19:26:20.249499500 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 2014-08-06 19:26:20.249500500 at java.lang.reflect.Method.invoke(Method.java:597) 2014-08-06 19:26:20.249502500 at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317) 2014-08-06 19:26:20.249502500 at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183) 2014-08-06 19:26:20.249503500 at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150) 2014-08-06 19:26:20.249508500 at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:96) 2014-08-06 19:26:20.249509500 at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:260) 2014-08-06 19:26:20.249510500 at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:94) 2014-08-06 19:26:20.249513500 at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172) 2014-08-06 19:26:20.249513500 at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204) 2014-08-06 19:26:20.249514500 at $Proxy26.findUsernameByAlias(Unknown Source) 2014-08-06 19:26:20.249515500 at com.atlassian.crowd.manager.application.TranslatingApplicationService.findUserByName(TranslatingApplicationService.java:107) 2014-08-06 19:26:20.249517500 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 2014-08-06 19:26:20.249518500 at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 2014-08-06 19:26:20.249519500 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 2014-08-06 19:26:20.249523500 at java.lang.reflect.Method.invoke(Method.java:597) 2014-08-06 19:26:20.249523500 at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317) 2014-08-06 19:26:20.249524500 at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183) 2014-08-06 19:26:20.249525500 at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150) 2014-08-06 19:26:20.249527500 at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:96) 2014-08-06 19:26:20.249528500 at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:260) 2014-08-06 19:26:20.249529500 at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:94) 2014-08-06 19:26:20.249532500 at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172) 2014-08-06 19:26:20.249532500 at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204) 2014-08-06 19:26:20.249533500 at $Proxy25.findUserByName(Unknown Source) 2014-08-06 19:26:20.249534500 at com.atlassian.crowd.embedded.core.CrowdServiceImpl.getUser(CrowdServiceImpl.java:93) 2014-08-06 19:26:20.249544500 at com.atlassian.sal.crowd.user.DefaultUserManager.getRemoteUser(DefaultUserManager.java:49) 2014-08-06 19:26:20.249544500 at com.atlassian.crowd.plugin.usermanagement.rest.resource.password.PasswordMeterResource.getPasswordMeterConfigForLoggedInUser(PasswordMeterResource.java:62) 2014-08-06 19:26:20.249546500 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 2014-08-06 19:26:20.249546500 at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 2014-08-06 19:26:20.249549500 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 2014-08-06 19:26:20.249550500 at java.lang.reflect.Method.invoke(Method.java:597) 2014-08-06 19:26:20.249550500 at com.atlassian.plugins.rest.common.interceptor.impl.DispatchProviderHelper$ResponseOutInvoker$1.invoke(DispatchProviderHelper.java:234) 2014-08-06 19:26:20.249551500 at com.atlassian.plugins.rest.common.interceptor.impl.DispatchProviderHelper$1.intercept(DispatchProviderHelper.java:100) 2014-08-06 19:26:20.249554500 at com.atlassian.plugins.rest.common.interceptor.impl.DefaultMethodInvocation.invoke(DefaultMethodInvocation.java:61) 2014-08-06 19:26:20.249555500 at com.atlassian.plugins.rest.common.validation.ValidationInterceptor.intercept(ValidationInterceptor.java:78) 2014-08-06 19:26:20.249559500 at com.atlassian.plugins.rest.common.interceptor.impl.DefaultMethodInvocation.invoke(DefaultMethodInvocation.java:61) 2014-08-06 19:26:20.249560500 at com.atlassian.plugins.rest.common.expand.interceptor.ExpandInterceptor.intercept(ExpandInterceptor.java:38) 2014-08-06 19:26:20.249560500 at com.atlassian.plugins.rest.common.interceptor.impl.DefaultMethodInvocation.invoke(DefaultMethodInvocation.java:61) 2014-08-06 19:26:20.249564500 at com.atlassian.plugins.rest.common.interceptor.impl.DispatchProviderHelper.invokeMethodWithInterceptors(DispatchProviderHelper.java:132) 2014-08-06 19:26:20.249565500 at com.atlassian.plugins.rest.common.interceptor.impl.DispatchProviderHelper$ResponseOutInvoker._dispatch(DispatchProviderHelper.java:230) 2014-08-06 19:26:20.249566500 at com.sun.jersey.server.impl.model.method.dispatch.ResourceJavaMethodDispatcher.dispatch(ResourceJavaMethodDispatcher.java:75) 2014-08-06 19:26:20.249568500 at com.sun.jersey.server.impl.uri.rules.HttpMethodRule.accept(HttpMethodRule.java:302) 2014-08-06 19:26:20.249569500 at com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:147) 2014-08-06 19:26:20.249570500 at com.sun.jersey.server.impl.uri.rules.ResourceClassRule.accept(ResourceClassRule.java:108) 2014-08-06 19:26:20.249574500 at com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:147) 2014-08-06 19:26:20.249575500 at com.sun.jersey.server.impl.uri.rules.RootResourceClassesRule.accept(RootResourceClassesRule.java:84) 2014-08-06 19:26:20.249575500 at com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1511) 2014-08-06 19:26:20.249576500 at com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1442) 2014-08-06 19:26:20.249579500 at com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1391) 2014-08-06 19:26:20.249580500 at com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1381) 2014-08-06 19:26:20.249581500 at com.sun.jersey.spi.container.servlet.WebComponent.service(WebComponent.java:416) 2014-08-06 19:26:20.249581500 at com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:538) 2014-08-06 19:26:20.249584500 at com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:716) 2014-08-06 19:26:20.249585500 at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) 2014-08-06 19:26:20.249589500 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) 2014-08-06 19:26:20.249589500 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 2014-08-06 19:26:20.249590500 at com.atlassian.crowd.horde.analytics.HttpRequestAnalyticsFilter.doFilter(HttpRequestAnalyticsFilter.java:51) 2014-08-06 19:26:20.249591500 at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:343) 2014-08-06 19:26:20.249596500 at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:260) 2014-08-06 19:26:20.249597500 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) 2014-08-06 19:26:20.249598500 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 2014-08-06 19:26:20.249599500 at org.springframework.orm.hibernate4.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:151) 2014-08-06 19:26:20.249602500 at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:106) 2014-08-06 19:26:20.249602500 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) 2014-08-06 19:26:20.249607500 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 2014-08-06 19:26:20.249607500 at com.atlassian.crowd.plugin.web.filter.HttpContextFilter.doFilter(HttpContextFilter.java:34) 2014-08-06 19:26:20.249608500 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) 2014-08-06 19:26:20.249609500 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 2014-08-06 19:26:20.249612500 at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) 2014-08-06 19:26:20.249612500 at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) 2014-08-06 19:26:20.249613500 at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) 2014-08-06 19:26:20.249614500 at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) 2014-08-06 19:26:20.249616500 at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) 2014-08-06 19:26:20.249616500 at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298) 2014-08-06 19:26:20.249617500 at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:190) 2014-08-06 19:26:20.249618500 at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:291) 2014-08-06 19:26:20.249622500 at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:776) 2014-08-06 19:26:20.249623500 at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:705) 2014-08-06 19:26:20.249624500 at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:898) 2014-08-06 19:26:20.249624500 at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:690) 2014-08-06 19:26:20.249627500 at java.lang.Thread.run(Thread.java:662)
Calling com.atlassian.sal.api.user.UserManager.getRemoteUsername() works as expected.