問題
When trying to access the JIRA Service Desk Customer Portal a 500 java.lang.NoSuchMethodError: com.atlassian.jira.user.util.UserManager.userCanUpdateOwnDetails(Lcom/atlassian/jira/user/ApplicationUser;)Z
error is shown.
The following appears in the atlassian-jira.log
2015-01-01 01:01:01,001 http-bio-80-exec-01 ERROR captainplanet 1267x28734x1 16k8f6f 192.168.1.1 /servicedesk/customer/portal/3 [common.error.jersey.ThrowableExceptionMapper] Uncaught exception thrown by REST service: com.atlassian.jira.user.util.UserManager.userCanUpdateOwnDetails(Lcom/atlassian/jira/user/ApplicationUser;)Z java.lang.NoSuchMethodError: com.atlassian.jira.user.util.UserManager.userCanUpdateOwnDetails(Lcom/atlassian/jira/user/ApplicationUser;)Z at com.atlassian.servicedesk.internal.feature.customer.portal.providers.UserResponseProvider.toResponse(UserResponseProvider.scala:63) at com.atlassian.servicedesk.internal.feature.customer.portal.providers.UserResponseProvider$$anonfun$getResponse$1.apply(UserResponseProvider.scala:46) at com.atlassian.servicedesk.internal.feature.customer.portal.providers.UserResponseProvider$$anonfun$getResponse$1.apply(UserResponseProvider.scala:44) at scalaz.$bslash$div$class.map(Either.scala:94) at scalaz.$bslash$div$minus.map(Either.scala:283) at com.atlassian.servicedesk.internal.feature.customer.portal.providers.UserResponseProvider.getResponse(UserResponseProvider.scala:44) at com.atlassian.servicedesk.internal.rest.CustomerResponseFactory$$anonfun$com$atlassian$servicedesk$internal$rest$CustomerResponseFactory$$getResponse$1.apply(CustomerResponseFactory.scala:85) at com.atlassian.servicedesk.internal.rest.CustomerResponseFactory$$anonfun$com$atlassian$servicedesk$internal$rest$CustomerResponseFactory$$getResponse$1.apply(CustomerResponseFactory.scala:84) at scalaz.$bslash$div$class.flatMap(Either.scala:117) at scalaz.$bslash$div$minus.flatMap(Either.scala:283) at com.atlassian.servicedesk.internal.rest.CustomerResponseFactory.com$atlassian$servicedesk$internal$rest$CustomerResponseFactory$$getResponse(CustomerResponseFactory.scala:84) at com.atlassian.servicedesk.internal.rest.CustomerResponseFactory$$anonfun$1.apply(CustomerResponseFactory.scala:41) ...
診断
環境
- This issue will occur when version is earlier than JIRA 6.3.8 and JIRA ServiceDesk is version 2.1 or newer.
Diagnostic Steps
- To confirm JIRA Version, goto JIRA Administration > System > General Configuration and look for Version under JIRA Info (this information should also be included in the page footer)
- To confirm ServiceDesk Version goto: JIRA Administration > Add-ons > Manage Add-Ons and locate the JIRA Service Desk Add-On, and expand to see the Version details.
原因
This error is caused by an incompatible version of JIRA Service Desk. The NoSuchMethod Exception is caused by the fact that versions of JIRA before 6.3.8 did not contain the following method:
com.atlassian.jira.user.util.UserManager.userCanUpdateOwnDetails
ソリューション
Upgrade JIRA so that Service Desk is running on a Supported version as per: JIRA ServiceDesk Marketplace - Version.
For more information on Upgrading JIRA, please see the Upgrading JIRA documentation.
Help us improve!