[ https://issues.apache.org/jira/browse/SYNCOPE-303?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13806680#comment-13806680 ]
Hudson commented on SYNCOPE-303: -------------------------------- SUCCESS: Integrated in Syncope-trunk #480 (See [https://builds.apache.org/job/Syncope-trunk/480/]) [SYNCOPE-303] Refactoring exception management, also by avoiding composite exceptions whenever possible (ilgrosso: rev 1536304) * /syncope/trunk/client/src/main/java/org/apache/syncope/client/rest/RestClientExceptionMapper.java * /syncope/trunk/common/src/main/java/org/apache/syncope/common/SyncopeConstants.java * /syncope/trunk/common/src/main/java/org/apache/syncope/common/types/ClientExceptionType.java * /syncope/trunk/common/src/main/java/org/apache/syncope/common/types/SyncopeClientExceptionType.java * /syncope/trunk/common/src/main/java/org/apache/syncope/common/validation/SyncopeClientCompositeException.java * /syncope/trunk/common/src/main/java/org/apache/syncope/common/validation/SyncopeClientException.java * /syncope/trunk/console/src/main/java/org/apache/syncope/console/SyncopeRequestCycleListener.java * /syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/AbstractSchedTaskModalPage.java * /syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/ApprovalModalPage.java * /syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/Configuration.java * /syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/ConfigurationModalPage.java * /syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/ConnectorModalPage.java * /syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/DerivedSchemaModalPage.java * /syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/Login.java * /syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/NotificationModalPage.java * /syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/PolicyModalPage.java * /syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/ProvisioningModalPage.java * /syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/ReportModalPage.java * /syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/Reports.java * /syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/Resources.java * /syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/RoleModalPage.java * /syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/SchemaModalPage.java * /syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/StatusModalPage.java * /syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/TaskModalPage.java * /syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/Todo.java * /syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/UserModalPage.java * /syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/VirtualSchemaModalPage.java * /syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/NotificationTasks.java * /syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/PoliciesPanel.java * /syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/PropagationTasks.java * /syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/RoleSearchResultPanel.java * /syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/RoleSummaryPanel.java * /syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/SchedTasks.java * /syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/SyncTasks.java * /syncope/trunk/console/src/main/java/org/apache/syncope/console/pages/panels/UserSearchResultPanel.java * /syncope/trunk/console/src/main/java/org/apache/syncope/console/rest/ConnectorRestClient.java * /syncope/trunk/console/src/main/java/org/apache/syncope/console/rest/ReportRestClient.java * /syncope/trunk/console/src/main/java/org/apache/syncope/console/rest/ResourceRestClient.java * /syncope/trunk/console/src/main/java/org/apache/syncope/console/rest/SchemaRestClient.java * /syncope/trunk/console/src/main/java/org/apache/syncope/console/rest/TaskRestClient.java * /syncope/trunk/console/src/main/java/org/apache/syncope/console/rest/UserRestClient.java * /syncope/trunk/console/src/main/java/org/apache/syncope/console/rest/WorkflowRestClient.java * /syncope/trunk/console/src/main/java/org/apache/syncope/console/wicket/markup/html/tree/TreeActionLinkPanel.java * /syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/RoleDAO.java * /syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/dao/impl/RoleDAOImpl.java * /syncope/trunk/core/src/main/java/org/apache/syncope/core/persistence/validation/attrvalue/ParsingValidationException.java * /syncope/trunk/core/src/main/java/org/apache/syncope/core/propagation/PropagationException.java * /syncope/trunk/core/src/main/java/org/apache/syncope/core/rest/controller/ConnectorController.java * /syncope/trunk/core/src/main/java/org/apache/syncope/core/rest/controller/LoggerController.java * /syncope/trunk/core/src/main/java/org/apache/syncope/core/rest/controller/ReportController.java * /syncope/trunk/core/src/main/java/org/apache/syncope/core/rest/controller/ResourceController.java * /syncope/trunk/core/src/main/java/org/apache/syncope/core/rest/controller/RoleController.java * /syncope/trunk/core/src/main/java/org/apache/syncope/core/rest/controller/SchemaController.java * /syncope/trunk/core/src/main/java/org/apache/syncope/core/rest/controller/TaskController.java * /syncope/trunk/core/src/main/java/org/apache/syncope/core/rest/controller/UserController.java * /syncope/trunk/core/src/main/java/org/apache/syncope/core/rest/controller/UserRequestController.java * /syncope/trunk/core/src/main/java/org/apache/syncope/core/rest/data/AbstractAttributableDataBinder.java * /syncope/trunk/core/src/main/java/org/apache/syncope/core/rest/data/ConnInstanceDataBinder.java * /syncope/trunk/core/src/main/java/org/apache/syncope/core/rest/data/ResourceDataBinder.java * /syncope/trunk/core/src/main/java/org/apache/syncope/core/rest/data/RoleDataBinder.java * /syncope/trunk/core/src/main/java/org/apache/syncope/core/rest/data/SchemaDataBinder.java * /syncope/trunk/core/src/main/java/org/apache/syncope/core/rest/data/TaskDataBinder.java * /syncope/trunk/core/src/main/java/org/apache/syncope/core/rest/data/UserDataBinder.java * /syncope/trunk/core/src/main/java/org/apache/syncope/core/rest/utils/RestServiceExceptionMapper.java * /syncope/trunk/core/src/main/java/org/apache/syncope/core/services/ConfigurationServiceImpl.java * /syncope/trunk/core/src/main/java/org/apache/syncope/core/services/ConnectorServiceImpl.java * /syncope/trunk/core/src/main/java/org/apache/syncope/core/services/NotificationServiceImpl.java * /syncope/trunk/core/src/main/java/org/apache/syncope/core/services/PolicyServiceImpl.java * /syncope/trunk/core/src/main/java/org/apache/syncope/core/services/ReportServiceImpl.java * /syncope/trunk/core/src/main/java/org/apache/syncope/core/services/ResourceServiceImpl.java * /syncope/trunk/core/src/main/java/org/apache/syncope/core/services/RoleServiceImpl.java * /syncope/trunk/core/src/main/java/org/apache/syncope/core/services/SchemaServiceImpl.java * /syncope/trunk/core/src/main/java/org/apache/syncope/core/services/TaskServiceImpl.java * /syncope/trunk/core/src/main/java/org/apache/syncope/core/services/UserRequestServiceImpl.java * /syncope/trunk/core/src/main/java/org/apache/syncope/core/services/UserServiceImpl.java * /syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/AuthenticationTestITCase.java * /syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/ConfigurationTestITCase.java * /syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/ConnInstanceTestITCase.java * /syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/DerivedSchemaTestITCase.java * /syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/NotificationTestITCase.java * /syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/PolicyTestITCase.java * /syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/ReportTestITCase.java * /syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/ResourceTestITCase.java * /syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/RoleTestITCase.java * /syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/SchemaTestITCase.java * /syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/TaskTestITCase.java * /syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/UserRequestTestITCase.java * /syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/UserTestITCase.java * /syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/VirtualSchemaTestITCase.java > Mapping to SyncopeClientCompositeException on client side > --------------------------------------------------------- > > Key: SYNCOPE-303 > URL: https://issues.apache.org/jira/browse/SYNCOPE-303 > Project: Syncope > Issue Type: Improvement > Components: common, core > Reporter: Andrei Shakirin > Assignee: Francesco Chicchiriccò > Fix For: 1.2.0 > > > Actually almost all exceptions with status BAD_REQUEST and NOT_FOUND are > mapped to SyncopeClientCompositeErrorException on the client side. > It is absolutely OK for composite exceptions containing number of > sub-exceptions (like validation and propagation), however for some single > exceptions it makes more sense to map not to > SyncopeClientCompositeErrorException, but directly to corresponded exception > type. > Candidates are: > Deadlock > ExistingResource > DataIntegrityViolation > GenericPersistence > UnauthorizedRole > Proposed mapping makes exception processing more easy and effective. > https://cwiki.apache.org/confluence/display/SYNCOPE/Remote+Exceptions -- This message was sent by Atlassian JIRA (v6.1#6144)