Details
-
Bug
-
Resolution: Cannot Reproduce
-
Low
-
None
-
7.0.0
-
7
-
Description
Steps to Reproduce:
- Install JIRA 7
- Finish the installation.
- Run GET call for the REST below whether using browser or any other tool:
<Base URL>/rest/api/2/permissionscheme
Expected Result:
- Like in the documentation, 200 OK response will be returned with the Default Permission Scheme details.
Actual Result:
- It will returned 500 Internal Server Error instead with error on the logs:
2015-10-13 18:58:03,843 http-nio-8700-exec-18 ERROR admin 1138x1282x1 iiy4d0 0:0:0:0:0:0:0:1 /rest/api/2/permissionscheme [c.a.j.rest.exception.ExceptionInterceptor] Returning internal server error in response java.lang.reflect.InvocationTargetException at sun.reflect.GeneratedMethodAccessor849.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:497) at com.atlassian.plugins.rest.common.interceptor.impl.DispatchProviderHelper$ResponseOutInvoker$1.invoke(DispatchProviderHelper.java:234) at com.atlassian.plugins.rest.common.interceptor.impl.DispatchProviderHelper$1.intercept(DispatchProviderHelper.java:100) ... 1 filtered at com.atlassian.jira.rest.exception.ExceptionInterceptor.intercept(ExceptionInterceptor.java:59) ... 1 filtered at com.atlassian.jira.rest.v2.issue.scope.RequestScopeInterceptor.intercept(RequestScopeInterceptor.java:43) ... 14 filtered at com.atlassian.plugins.rest.module.RestDelegatingServletFilter$JerseyOsgiServletContainer.doFilter(RestDelegatingServletFilter.java:178) ... 1 filtered at com.atlassian.plugins.rest.module.RestDelegatingServletFilter.doFilter(RestDelegatingServletFilter.java:73) ... 41 filtered at com.atlassian.plugins.cors.CorsFilter.doFilter(CorsFilter.java:65) ... 64 filtered at com.atlassian.plugins.rest.module.servlet.RestSeraphFilter.doFilter(RestSeraphFilter.java:40) ... 73 filtered at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) at java.lang.Thread.run(Thread.java:745) Caused by: java.lang.IllegalArgumentException: Parameter should be set if and only if type requires it. Type was: applicationRole, parameter was: null at com.google.common.base.Preconditions.checkArgument(Preconditions.java:122) at com.atlassian.jira.permission.PermissionHolder.holder(PermissionHolder.java:66) at com.atlassian.jira.permission.PermissionSchemeRepresentationConverter.holder(PermissionSchemeRepresentationConverter.java:130) at com.atlassian.jira.permission.PermissionSchemeRepresentationConverter.access$000(PermissionSchemeRepresentationConverter.java:22) at com.atlassian.jira.permission.PermissionSchemeRepresentationConverter$4.apply(PermissionSchemeRepresentationConverter.java:89) at com.atlassian.fugue.Option.map(Option.java:272) at com.atlassian.jira.permission.PermissionSchemeRepresentationConverter.permissionGrant(PermissionSchemeRepresentationConverter.java:82) at com.atlassian.jira.permission.PermissionSchemeRepresentationConverter$1.apply(PermissionSchemeRepresentationConverter.java:39) at com.atlassian.jira.permission.PermissionSchemeRepresentationConverter$1.apply(PermissionSchemeRepresentationConverter.java:35) at com.google.common.collect.Iterators$8.transform(Iterators.java:799) at com.google.common.collect.TransformedIterator.next(TransformedIterator.java:48) at com.google.common.collect.Iterators$7.computeNext(Iterators.java:651) at com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143) at com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138) at com.google.common.collect.TransformedIterator.hasNext(TransformedIterator.java:43) at com.google.common.collect.ImmutableList.copyOf(ImmutableList.java:272) at com.google.common.collect.ImmutableList.copyOf(ImmutableList.java:226) at com.atlassian.jira.permission.data.PermissionSchemeImpl.<init>(PermissionSchemeImpl.java:37) at com.atlassian.jira.permission.PermissionSchemeRepresentationConverter.permissionScheme(PermissionSchemeRepresentationConverter.java:34) at com.atlassian.jira.permission.DefaultPermissionSchemeService$1.apply(DefaultPermissionSchemeService.java:90) at com.atlassian.jira.permission.DefaultPermissionSchemeService$1.apply(DefaultPermissionSchemeService.java:86) at com.google.common.collect.Iterators$8.transform(Iterators.java:799) at com.google.common.collect.TransformedIterator.next(TransformedIterator.java:48) at com.google.common.collect.ImmutableList.copyOf(ImmutableList.java:271) at com.google.common.collect.ImmutableList.copyOf(ImmutableList.java:226) at com.atlassian.jira.permission.DefaultPermissionSchemeService.getPermissionSchemes(DefaultPermissionSchemeService.java:79) ... 2 filtered at java.lang.reflect.Method.invoke(Method.java:497) at com.atlassian.plugin.util.ContextClassLoaderSettingInvocationHandler.invoke(ContextClassLoaderSettingInvocationHandler.java:30) at com.sun.proxy.$Proxy444.getPermissionSchemes(Unknown Source) ... 2 filtered at java.lang.reflect.Method.invoke(Method.java:497) at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317) at org.eclipse.gemini.blueprint.service.importer.support.internal.aop.ServiceInvoker.doInvoke(ServiceInvoker.java:56) at org.eclipse.gemini.blueprint.service.importer.support.internal.aop.ServiceInvoker.invoke(ServiceInvoker.java:60) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179) at org.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:133) at org.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:121) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179) at org.eclipse.gemini.blueprint.service.util.internal.aop.ServiceTCCLInterceptor.invokeUnprivileged(ServiceTCCLInterceptor.java:70) at org.eclipse.gemini.blueprint.service.util.internal.aop.ServiceTCCLInterceptor.invoke(ServiceTCCLInterceptor.java:53) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179) at org.eclipse.gemini.blueprint.service.importer.support.LocalBundleContextAdvice.invoke(LocalBundleContextAdvice.java:57) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179) at org.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:133) at org.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:121) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179) at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:207) at com.sun.proxy.$Proxy2171.getPermissionSchemes(Unknown Source) at com.atlassian.jira.rest.v2.admin.permissionscheme.PermissionSchemeResource$1.apply(PermissionSchemeResource.java:206) at com.atlassian.jira.rest.v2.admin.permissionscheme.PermissionSchemeResource$1.apply(PermissionSchemeResource.java:202) at com.atlassian.fugue.Either$LeftProjection.on(Either.java:663) at com.atlassian.jira.rest.v2.admin.permissionscheme.PermissionSchemeResource.getPermissionSchemes(PermissionSchemeResource.java:201) ... 210 more
Notes:
- It is caused by the new Application Role on the Project Role.
Workaround:
- Removing of this role on every permissions on each permission scheme will make the REST call possible.
Attachments
Issue Links
- was cloned as
-
HELIX-333 Loading...