Details
-
Bug
-
Resolution: Fixed
-
Medium
-
None
Description
In Confluence, we get the following exception when trying to modify user information on a POSIX (read-only) LDAP server via Crowd:
java.lang.IllegalArgumentException: POSIX support is currently read-only at com.atlassian.crowd.integration.rest.service.RestCrowdClient.handleCommonExceptions(RestCrowdClient.java:1081) at com.atlassian.crowd.integration.rest.service.RestCrowdClient.updateUser(RestCrowdClient.java:128) at com.atlassian.crowd.directory.RemoteCrowdDirectory.updateUser(RemoteCrowdDirectory.java:139)
As I see it, this method should throw OperationFailedException according to the RemoteDirectory and CrowdClient API documentation.
I think the fundamental problem here is the handleCommonExceptions() method in RestCrowdClient, which seems to throw IllegalArgumentException in quite a number of cases. None of the methods on the CrowdClient interface are documented as throwing IAE, so this exception therefore bubbles up to the unsuspecting client code and leads to unhandled exceptions.
Attachments
Issue Links
- is related to
-
CONFSERVER-21968 Exception while trying to update my profile settings with Crowd and read-only LDAP
- Closed