You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@syncope.apache.org by il...@apache.org on 2015/06/10 16:03:18 UTC

[1/4] syncope git commit: Upgrading Jackson

Repository: syncope
Updated Branches:
  refs/heads/SYNCOPE-666 a45a46bba -> df60b3b41


Upgrading Jackson


Project: http://git-wip-us.apache.org/repos/asf/syncope/repo
Commit: http://git-wip-us.apache.org/repos/asf/syncope/commit/2e5fc7ec
Tree: http://git-wip-us.apache.org/repos/asf/syncope/tree/2e5fc7ec
Diff: http://git-wip-us.apache.org/repos/asf/syncope/diff/2e5fc7ec

Branch: refs/heads/SYNCOPE-666
Commit: 2e5fc7ecc8a81d7b663b24b57c01fc2e35d3e956
Parents: 34ec671
Author: Francesco Chicchiriccò <il...@apache.org>
Authored: Wed Jun 10 15:50:11 2015 +0200
Committer: Francesco Chicchiriccò <il...@apache.org>
Committed: Wed Jun 10 15:50:11 2015 +0200

----------------------------------------------------------------------
 pom.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/syncope/blob/2e5fc7ec/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index fe9519d..7e27081 100644
--- a/pom.xml
+++ b/pom.xml
@@ -330,7 +330,7 @@ under the License.
 
     <camel.version>2.15.2</camel.version>	
 
-    <jackson.version>2.5.3</jackson.version>
+    <jackson.version>2.5.4</jackson.version>
 
     <spring.version>4.1.6.RELEASE</spring.version>
     <spring-security.version>4.0.1.RELEASE</spring-security.version>


[2/4] syncope git commit: Merge branch 'master' into SYNCOPE-666

Posted by il...@apache.org.
Merge branch 'master' into SYNCOPE-666


Project: http://git-wip-us.apache.org/repos/asf/syncope/repo
Commit: http://git-wip-us.apache.org/repos/asf/syncope/commit/6239afa2
Tree: http://git-wip-us.apache.org/repos/asf/syncope/tree/6239afa2
Diff: http://git-wip-us.apache.org/repos/asf/syncope/diff/6239afa2

Branch: refs/heads/SYNCOPE-666
Commit: 6239afa23516938740b5be9ef791bb724ffd1252
Parents: a45a46b 2e5fc7e
Author: Francesco Chicchiriccò <il...@apache.org>
Authored: Wed Jun 10 16:02:35 2015 +0200
Committer: Francesco Chicchiriccò <il...@apache.org>
Committed: Wed Jun 10 16:02:35 2015 +0200

----------------------------------------------------------------------
 pom.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/syncope/blob/6239afa2/pom.xml
----------------------------------------------------------------------


[3/4] syncope git commit: Improving REST update methods signature thanks to CXF-6447

Posted by il...@apache.org.
http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/ConnectorITCase.java
----------------------------------------------------------------------
diff --git a/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/ConnectorITCase.java b/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/ConnectorITCase.java
index 2616d4a..60842b9 100644
--- a/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/ConnectorITCase.java
+++ b/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/ConnectorITCase.java
@@ -172,8 +172,8 @@ public class ConnectorITCase extends AbstractITCase {
         assertEquals(Integer.valueOf(15), actual.getConnRequestTimeout());
         assertEquals(connectorTO.getCapabilities(), actual.getCapabilities());
         assertNotNull(actual.getPoolConf());
-        assertEquals(1534, actual.getPoolConf().getMaxObjects().intValue());
-        assertEquals(10, actual.getPoolConf().getMaxIdle().intValue());
+        assertEquals(1534, actual.getPoolConf().getMaxObjects(), 0);
+        assertEquals(10, actual.getPoolConf().getMaxIdle(), 0);
 
         Throwable t = null;
 
@@ -182,7 +182,7 @@ public class ConnectorITCase extends AbstractITCase {
         actual.getPoolConf().setMaxObjects(null);
 
         try {
-            connectorService.update(actual.getKey(), actual);
+            connectorService.update(actual);
             actual = connectorService.read(actual.getKey());
         } catch (SyncopeClientException e) {
             LOG.error("update failed", e);
@@ -255,7 +255,7 @@ public class ConnectorITCase extends AbstractITCase {
         // set connector configuration
         connectorTO.getConfiguration().addAll(conf);
 
-        connectorService.update(connectorTO.getKey(), connectorTO);
+        connectorService.update(connectorTO);
         ConnInstanceTO actual = connectorService.read(connectorTO.getKey());
 
         assertNotNull(actual);
@@ -348,7 +348,7 @@ public class ConnectorITCase extends AbstractITCase {
         // ----------------------------------
         connInstanceTO.getCapabilities().add(ConnectorCapability.AUTHENTICATE);
 
-        connectorService.update(connInstanceTO.getKey(), connInstanceTO);
+        connectorService.update(connInstanceTO);
         ConnInstanceTO actual = connectorService.read(connInstanceTO.getKey());
         assertNotNull(actual);
         assertTrue(connInstanceTO.getCapabilities().contains(ConnectorCapability.AUTHENTICATE));
@@ -732,7 +732,7 @@ public class ConnectorITCase extends AbstractITCase {
         assertTrue(connectorInstanceTO.getCapabilities().isEmpty());
 
         connectorInstanceTO.getCapabilities().add(ConnectorCapability.SEARCH);
-        connectorService.update(connectorInstanceTO.getKey(), connectorInstanceTO);
+        connectorService.update(connectorInstanceTO);
 
         ConnInstanceTO updatedCapabilities = connectorService.read(connectorInstanceTO.getKey());
         assertNotNull(updatedCapabilities.getCapabilities());

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/DerSchemaITCase.java
----------------------------------------------------------------------
diff --git a/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/DerSchemaITCase.java b/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/DerSchemaITCase.java
index d06ca77..210b515 100644
--- a/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/DerSchemaITCase.java
+++ b/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/DerSchemaITCase.java
@@ -94,8 +94,7 @@ public class DerSchemaITCase extends AbstractITCase {
         try {
             schema.setExpression("mderived_sx + '.' + mderived_dx");
 
-            schemaService.update(SchemaType.DERIVED,
-                    schema.getKey(), schema);
+            schemaService.update(SchemaType.DERIVED, schema);
 
             schema = schemaService.read(SchemaType.DERIVED, "mderiveddata");
             assertNotNull(schema);
@@ -103,8 +102,7 @@ public class DerSchemaITCase extends AbstractITCase {
         } finally {
             // Set updated back to make test re-runnable
             schema.setExpression("mderived_sx + '-' + mderived_dx");
-            schemaService.update(SchemaType.DERIVED,
-                    schema.getKey(), schema);
+            schemaService.update(SchemaType.DERIVED, schema);
         }
     }
 

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/GroupITCase.java
----------------------------------------------------------------------
diff --git a/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/GroupITCase.java b/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/GroupITCase.java
index f16ee21..855f25b 100644
--- a/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/GroupITCase.java
+++ b/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/GroupITCase.java
@@ -272,7 +272,7 @@ public class GroupITCase extends AbstractITCase {
         GroupService groupService2 = clientFactory.create("verdi", ADMIN_PWD).getService(GroupService.class);
 
         try {
-            groupService2.update(groupMod.getKey(), groupMod);
+            groupService2.update(groupMod);
             fail();
         } catch (SyncopeClientException e) {
             assertEquals(Response.Status.UNAUTHORIZED, e.getType().getResponseStatus());
@@ -283,7 +283,7 @@ public class GroupITCase extends AbstractITCase {
         // 4. update as puccini, owner of group 6 - success
         GroupService groupService3 = clientFactory.create("puccini", ADMIN_PWD).getService(GroupService.class);
 
-        groupTO = groupService3.update(groupMod.getKey(), groupMod).readEntity(GroupTO.class);
+        groupTO = groupService3.update(groupMod).readEntity(GroupTO.class);
         assertEquals("Director", groupTO.getName());
 
         // issue SYNCOPE-15
@@ -531,7 +531,7 @@ public class GroupITCase extends AbstractITCase {
         String typeClassName = type.getClasses().get(0);
         AnyTypeClassTO typeClass = anyTypeClassService.read(typeClassName);
         typeClass.getPlainSchemas().add(badge.getKey());
-        anyTypeClassService.update(typeClassName, typeClass);
+        anyTypeClassService.update(typeClass);
         typeClass = anyTypeClassService.read(typeClassName);
         assertTrue(typeClass.getPlainSchemas().contains(badge.getKey()));
 
@@ -556,7 +556,7 @@ public class GroupITCase extends AbstractITCase {
         } finally {
             // restore the original group class
             typeClass.getPlainSchemas().remove(badge.getKey());
-            anyTypeClassService.update(typeClassName, typeClass);
+            anyTypeClassService.update(typeClass);
             typeClass = anyTypeClassService.read(typeClassName);
             assertFalse(typeClass.getPlainSchemas().contains(badge.getKey()));
         }
@@ -595,9 +595,10 @@ public class GroupITCase extends AbstractITCase {
         assertNotNull(group);
 
         GroupMod groupMod = new GroupMod();
+        groupMod.setKey(group.getKey());
         groupMod.getPlainAttrsToUpdate().add(attrMod("badge", "xxxxxxxxxx"));
 
-        response = noContentService.update(group.getKey(), groupMod);
+        response = noContentService.update(groupMod);
         assertEquals(Response.Status.NO_CONTENT.getStatusCode(), response.getStatus());
         assertEquals(Preference.RETURN_NO_CONTENT.toString(), response.getHeaderString(RESTHeaders.PREFERENCE_APPLIED));
         assertEquals(StringUtils.EMPTY, IOUtils.toString((InputStream) response.getEntity()));
@@ -705,7 +706,7 @@ public class GroupITCase extends AbstractITCase {
         GroupMod mod = new GroupMod();
         mod.setKey(group.getKey());
         mod.setUDynMembershipCond("cool==false");
-        groupService.update(mod.getKey(), mod);
+        groupService.update(mod);
 
         assertTrue(userService.read(4L).getDynGroups().isEmpty());
     }

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/NotificationITCase.java
----------------------------------------------------------------------
diff --git a/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/NotificationITCase.java b/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/NotificationITCase.java
index c58b7b7..09f40f9 100644
--- a/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/NotificationITCase.java
+++ b/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/NotificationITCase.java
@@ -93,7 +93,7 @@ public class NotificationITCase extends AbstractITCase {
         NotificationTO notificationTO = notificationService.read(10L);
         notificationTO.setRecipients(SyncopeClient.getUserSearchConditionBuilder().inGroups(7L).query());
 
-        notificationService.update(notificationTO.getKey(), notificationTO);
+        notificationService.update(notificationTO);
         NotificationTO actual = notificationService.read(notificationTO.getKey());
         assertNotNull(actual);
         assertEquals(actual, notificationTO);

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/PlainSchemaITCase.java
----------------------------------------------------------------------
diff --git a/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/PlainSchemaITCase.java b/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/PlainSchemaITCase.java
index e6e450c..feb041a 100644
--- a/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/PlainSchemaITCase.java
+++ b/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/PlainSchemaITCase.java
@@ -184,13 +184,13 @@ public class PlainSchemaITCase extends AbstractITCase {
         PlainSchemaTO schemaTO = schemaService.read(SchemaType.PLAIN, "icon");
         assertNotNull(schemaTO);
 
-        schemaService.update(SchemaType.PLAIN, schemaTO.getKey(), schemaTO);
+        schemaService.update(SchemaType.PLAIN, schemaTO);
         PlainSchemaTO updatedTO = schemaService.read(SchemaType.PLAIN, "icon");
         assertEquals(schemaTO, updatedTO);
 
         updatedTO.setType(AttrSchemaType.Date);
         try {
-            schemaService.update(SchemaType.PLAIN, schemaTO.getKey(), updatedTO);
+            schemaService.update(SchemaType.PLAIN, updatedTO);
             fail("This should not be reacheable");
         } catch (SyncopeClientException e) {
             assertEquals(ClientExceptionType.InvalidPlainSchema, e.getType());
@@ -220,7 +220,7 @@ public class PlainSchemaITCase extends AbstractITCase {
 
         schemaTO.setType(AttrSchemaType.Long);
         try {
-            schemaService.update(SchemaType.PLAIN, schemaTO.getKey(), schemaTO);
+            schemaService.update(SchemaType.PLAIN, schemaTO);
             fail("This should not be reacheable");
         } catch (SyncopeClientException e) {
             assertEquals(ClientExceptionType.InvalidPlainSchema, e.getType());
@@ -253,7 +253,7 @@ public class PlainSchemaITCase extends AbstractITCase {
 
         UserMod userMod = AnyOperations.diff(newUserTO, userTO);
 
-        userTO = userService.update(userMod.getKey(), userMod).readEntity(UserTO.class);
+        userTO = userService.update(userMod).readEntity(UserTO.class);
         assertNotNull(userTO);
     }
 
@@ -278,7 +278,7 @@ public class PlainSchemaITCase extends AbstractITCase {
 
         schemaTO.setUniqueConstraint(false);
         try {
-            schemaService.update(SchemaType.PLAIN, schemaTO.getKey(), schemaTO);
+            schemaService.update(SchemaType.PLAIN, schemaTO);
             fail("This should not be reacheable");
         } catch (SyncopeClientException e) {
             assertEquals(ClientExceptionType.InvalidPlainSchema, e.getType());

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/PolicyITCase.java
----------------------------------------------------------------------
diff --git a/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/PolicyITCase.java b/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/PolicyITCase.java
index df36ac4..3684f35 100644
--- a/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/PolicyITCase.java
+++ b/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/PolicyITCase.java
@@ -141,7 +141,7 @@ public class PolicyITCase extends AbstractITCase {
         policy.setSpecification(policySpec);
 
         // update new password policy
-        policyService.update(policy.getKey(), policy);
+        policyService.update(policy);
         policy = policyService.read(policy.getKey());
 
         assertNotNull(policy);

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/RealmITCase.java
----------------------------------------------------------------------
diff --git a/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/RealmITCase.java b/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/RealmITCase.java
index edb2366..fe2c0a5 100644
--- a/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/RealmITCase.java
+++ b/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/RealmITCase.java
@@ -91,7 +91,7 @@ public class RealmITCase extends AbstractITCase {
         // 2. update setting policies
         actual.setAccountPolicy(6L);
         actual.setPasswordPolicy(4L);
-        realmService.update(actual.getFullPath(), actual);
+        realmService.update(actual);
 
         actual = getRealm(actual.getFullPath());
         assertNotNull(actual.getAccountPolicy());
@@ -99,7 +99,7 @@ public class RealmITCase extends AbstractITCase {
 
         // 3. update changing parent
         actual.setParent(getRealm("/odd").getKey());
-        realmService.update(actual.getFullPath(), actual);
+        realmService.update(actual);
 
         actual = getRealm("/odd/last");
         assertNotNull(actual);

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/ReportITCase.java
----------------------------------------------------------------------
diff --git a/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/ReportITCase.java b/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/ReportITCase.java
index 2199bc8..d02b726 100644
--- a/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/ReportITCase.java
+++ b/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/ReportITCase.java
@@ -116,7 +116,7 @@ public class ReportITCase extends AbstractITCase {
 
         report.getReportletConfs().add(new UserReportletConf("last"));
 
-        reportService.update(report.getKey(), report);
+        reportService.update(report);
         ReportTO updated = reportService.read(report.getKey());
         assertNotNull(updated);
         assertEquals(3, updated.getReportletConfs().size());

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/ResourceITCase.java
----------------------------------------------------------------------
diff --git a/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/ResourceITCase.java b/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/ResourceITCase.java
index a6dd805..c0e1790 100644
--- a/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/ResourceITCase.java
+++ b/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/ResourceITCase.java
@@ -329,7 +329,7 @@ public class ResourceITCase extends AbstractITCase {
         try {
             ResourceTO resourceTO = new ResourceTO();
             resourceTO.setKey("resourcenotfound");
-            resourceService.update(resourceTO.getKey(), resourceTO);
+            resourceService.update(resourceTO);
 
             fail();
         } catch (SyncopeClientException e) {
@@ -378,7 +378,7 @@ public class ResourceITCase extends AbstractITCase {
         item.setPurpose(MappingPurpose.BOTH);
         mapping.setConnObjectKeyItem(item);
 
-        resourceService.update(resourceTO.getKey(), resourceTO);
+        resourceService.update(resourceTO);
         ResourceTO actual = resourceService.read(resourceTO.getKey());
         assertNotNull(actual);
 
@@ -408,7 +408,7 @@ public class ResourceITCase extends AbstractITCase {
         resourceService.create(pre);
 
         pre.getProvision(AnyTypeKind.USER.name()).setSyncToken(null);
-        resourceService.update(pre.getKey(), pre);
+        resourceService.update(pre);
         ResourceTO actual = resourceService.read(pre.getKey());
         // check that the synctoken has been reset
         assertNull(actual.getProvision(AnyTypeKind.USER.name()).getSyncToken());
@@ -511,7 +511,7 @@ public class ResourceITCase extends AbstractITCase {
         assertNotNull(resource.getProvision(AnyTypeKind.USER.name()).getMapping());
 
         resource.getProvision(AnyTypeKind.USER.name()).setMapping(null);
-        resourceService.update(name, resource);
+        resourceService.update(resource);
 
         resource = resourceService.read(name);
         assertNotNull(resource);

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/RoleITCase.java
----------------------------------------------------------------------
diff --git a/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/RoleITCase.java b/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/RoleITCase.java
index 4d61644..81b0796 100644
--- a/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/RoleITCase.java
+++ b/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/RoleITCase.java
@@ -95,7 +95,7 @@ public class RoleITCase extends AbstractITCase {
         role.getEntitlements().add(Entitlement.WORKFLOW_TASK_LIST);
         role.getRealms().add("/even/two");
 
-        roleService.update(role.getKey(), role);
+        roleService.update(role);
 
         actual = roleService.read(role.getKey());
         assertTrue(actual.getEntitlements().contains(Entitlement.WORKFLOW_TASK_LIST));
@@ -133,7 +133,7 @@ public class RoleITCase extends AbstractITCase {
         assertTrue(userService.read(4L).getDynRoles().contains(role.getKey()));
 
         role.setDynMembershipCond("cool==false");
-        roleService.update(role.getKey(), role);
+        roleService.update(role);
 
         assertTrue(userService.read(4L).getDynGroups().isEmpty());
     }

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/SchedTaskITCase.java
----------------------------------------------------------------------
diff --git a/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/SchedTaskITCase.java b/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/SchedTaskITCase.java
index e31190f..b65aa72 100644
--- a/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/SchedTaskITCase.java
+++ b/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/SchedTaskITCase.java
@@ -74,7 +74,7 @@ public class SchedTaskITCase extends AbstractTaskITCase {
         taskMod.setKey(5);
         taskMod.setCronExpression(null);
 
-        taskService.update(taskMod.getKey(), taskMod);
+        taskService.update(taskMod);
         SchedTaskTO actual = taskService.read(taskMod.getKey());
         assertNotNull(actual);
         assertEquals(task.getKey(), actual.getKey());

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/SecurityQuestionITCase.java
----------------------------------------------------------------------
diff --git a/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/SecurityQuestionITCase.java b/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/SecurityQuestionITCase.java
index 95a1988..36214c9 100644
--- a/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/SecurityQuestionITCase.java
+++ b/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/SecurityQuestionITCase.java
@@ -72,7 +72,7 @@ public class SecurityQuestionITCase extends AbstractITCase {
         SecurityQuestionTO securityQuestionTO = securityQuestionService.read(1L);
         securityQuestionTO.setContent("What is your favorite color?");
 
-        securityQuestionService.update(securityQuestionTO.getKey(), securityQuestionTO);
+        securityQuestionService.update(securityQuestionTO);
         SecurityQuestionTO actual = securityQuestionService.read(securityQuestionTO.getKey());
         assertNotNull(actual);
         assertEquals(actual, securityQuestionTO);

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/SyncTaskITCase.java
----------------------------------------------------------------------
diff --git a/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/SyncTaskITCase.java b/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/SyncTaskITCase.java
index 939919f..f6d2e57 100644
--- a/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/SyncTaskITCase.java
+++ b/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/SyncTaskITCase.java
@@ -78,7 +78,7 @@ public class SyncTaskITCase extends AbstractTaskITCase {
     public static void testSyncActionsSetup() {
         SyncTaskTO syncTask = taskService.read(SYNC_TASK_ID);
         syncTask.getActionsClassNames().add(TestSyncActions.class.getName());
-        taskService.update(SYNC_TASK_ID, syncTask);
+        taskService.update(syncTask);
     }
 
     @Test
@@ -362,7 +362,7 @@ public class SyncTaskITCase extends AbstractTaskITCase {
         assertNotNull(provision);
 
         provision.setSyncToken(null);
-        resourceService.update(resource.getKey(), resource);
+        resourceService.update(resource);
 
         // 1. create printer on external resource
         AnyObjectTO anyObjectTO = AnyObjectITCase.getSampleTO("sync");
@@ -449,7 +449,7 @@ public class SyncTaskITCase extends AbstractTaskITCase {
 
             task.getTemplates().put(AnyTypeKind.USER.name(), template);
 
-            taskService.update(task.getKey(), task);
+            taskService.update(task);
             SyncTaskTO actual = taskService.read(task.getKey());
             assertNotNull(actual);
             assertEquals(task.getKey(), actual.getKey());
@@ -514,7 +514,7 @@ public class SyncTaskITCase extends AbstractTaskITCase {
         }
         item.setJavaRule(TestSyncRule.class.getName());
 
-        policyService.update(policyTO.getKey(), policyTO);
+        policyService.update(policyTO);
         // -----------------------------
 
         SyncTaskTO task = new SyncTaskTO();
@@ -548,7 +548,7 @@ public class SyncTaskITCase extends AbstractTaskITCase {
         userMod.getPlainAttrsToRemove().add("email");
         userMod.getPlainAttrsToUpdate().add(attrMod("email", "s258@apache.org"));
 
-        userService.update(userMod.getKey(), userMod);
+        userService.update(userMod);
 
         execProvisioningTask(actual.getKey(), 50, false);
 
@@ -622,7 +622,7 @@ public class SyncTaskITCase extends AbstractTaskITCase {
 
         task.getTemplates().put(AnyTypeKind.USER.name(), template);
 
-        taskService.update(task.getKey(), task);
+        taskService.update(task);
         execProvisioningTask(task.getKey(), 50, false);
 
         // check for sync policy
@@ -736,7 +736,7 @@ public class SyncTaskITCase extends AbstractTaskITCase {
         ConnConfProperty property = resourceConnector.getConfigurationMap().get("retrievePasswordsWithSearch");
         property.getValues().clear();
         property.getValues().add(Boolean.TRUE);
-        connectorService.update(ldapResource.getConnector(), resourceConnector);
+        connectorService.update(resourceConnector);
 
         // 6. Sync the user from the resource
         SyncTaskTO syncTask = new SyncTaskTO();
@@ -771,7 +771,7 @@ public class SyncTaskITCase extends AbstractTaskITCase {
         taskService.delete(syncTask.getKey());
         property.getValues().clear();
         property.getValues().add(Boolean.FALSE);
-        connectorService.update(ldapResource.getConnector(), resourceConnector);
+        connectorService.update(resourceConnector);
         deleteUser(updatedUser.getKey());
     }
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/UserITCase.java
----------------------------------------------------------------------
diff --git a/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/UserITCase.java b/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/UserITCase.java
index bd6b4aa..10b07bf 100644
--- a/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/UserITCase.java
+++ b/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/UserITCase.java
@@ -617,7 +617,7 @@ public class UserITCase extends AbstractITCase {
         userMod.setKey(userTO.getKey());
         userMod.setPassword("pass");
 
-        userService.update(userMod.getKey(), userMod);
+        userService.update(userMod);
     }
 
     @Test(expected = SyncopeClientException.class)
@@ -632,7 +632,7 @@ public class UserITCase extends AbstractITCase {
         userMod.setKey(userTO.getKey());
         userMod.setPassword("password123");
 
-        userService.update(userMod.getKey(), userMod);
+        userService.update(userMod);
     }
 
     @Test
@@ -1145,9 +1145,10 @@ public class UserITCase extends AbstractITCase {
         assertNotNull(user);
 
         UserMod userMod = new UserMod();
+        userMod.setKey(user.getKey());
         userMod.setPassword("password321");
 
-        response = noContentService.update(user.getKey(), userMod);
+        response = noContentService.update(userMod);
         assertEquals(Response.Status.NO_CONTENT.getStatusCode(), response.getStatus());
         assertEquals(Preference.RETURN_NO_CONTENT.toString(), response.getHeaderString(RESTHeaders.PREFERENCE_APPLIED));
         assertEquals(StringUtils.EMPTY, IOUtils.toString((InputStream) response.getEntity()));
@@ -1577,7 +1578,7 @@ public class UserITCase extends AbstractITCase {
                 item.setExtAttrName("uniqueMember");
             }
         }
-        resourceService.update(ldap.getKey(), ldap);
+        resourceService.update(ldap);
 
         // 1. create group with LDAP resource
         GroupTO groupTO = new GroupTO();
@@ -1625,7 +1626,7 @@ public class UserITCase extends AbstractITCase {
                 item.setExtAttrName("description");
             }
         }
-        resourceService.update(ldap.getKey(), ldap);
+        resourceService.update(ldap);
     }
 
     @Test
@@ -2026,8 +2027,9 @@ public class UserITCase extends AbstractITCase {
         assertNotNull(userTO);
 
         UserMod userMod = new UserMod();
+        userMod.setKey(userTO.getKey());
         userMod.setPassword("anotherPassword123");
-        userTO = userService.update(userTO.getKey(), userMod).readEntity(UserTO.class);
+        userTO = userService.update(userMod).readEntity(UserTO.class);
         assertNotNull(userTO);
     }
 
@@ -2041,9 +2043,10 @@ public class UserITCase extends AbstractITCase {
 
         // 2. try to update user by subscribing a resource - works but propagation is not even attempted
         UserMod userMod = new UserMod();
+        userMod.setKey(userTO.getKey());
         userMod.getResourcesToAdd().add(RESOURCE_NAME_WS1);
 
-        userTO = userService.update(userTO.getKey(), userMod).readEntity(UserTO.class);
+        userTO = userService.update(userMod).readEntity(UserTO.class);
         assertEquals(Collections.singleton(RESOURCE_NAME_WS1), userTO.getResources());
         assertFalse(userTO.getPropagationStatusTOs().get(0).getStatus().isSuccessful());
         assertTrue(userTO.getPropagationStatusTOs().get(0).getFailureReason().
@@ -2064,7 +2067,7 @@ public class UserITCase extends AbstractITCase {
         UserMod userMod = new UserMod();
         userMod.setKey(userTO.getKey());
         userMod.setUsername(userTO.getUsername() + "XX");
-        userTO = userService.update(userMod.getKey(), userMod).readEntity(UserTO.class);
+        userTO = userService.update(userMod).readEntity(UserTO.class);
         assertTrue(userTO.getUsername().endsWith("XX"));
         EntityTag etag1 = adminClient.getLatestEntityTag(userService);
         assertFalse(etag.getValue().equals(etag1.getValue()));
@@ -2072,7 +2075,7 @@ public class UserITCase extends AbstractITCase {
         UserService ifMatchService = adminClient.ifMatch(UserService.class, etag);
         userMod.setUsername(userTO.getUsername() + "YY");
         try {
-            ifMatchService.update(userMod.getKey(), userMod);
+            ifMatchService.update(userMod);
             fail();
         } catch (SyncopeClientException e) {
             assertEquals(ClientExceptionType.ConcurrentModification, e.getType());
@@ -2106,7 +2109,7 @@ public class UserITCase extends AbstractITCase {
         userMod.setPwdPropRequest(new StatusMod());
         userMod.getPlainAttrsToUpdate().add(attrMod("surname", "surname2"));
 
-        userService.update(userTO.getKey(), userMod);
+        userService.update(userMod);
 
         // 5. try (and succeed again) to perform simple LDAP binding: password has not changed
         assertNotNull(getLdapRemoteObject(
@@ -2145,7 +2148,7 @@ public class UserITCase extends AbstractITCase {
 
         ws1.getProvision(AnyTypeKind.USER.name()).setMapping(ws1NewUMapping);
 
-        resourceService.update(RESOURCE_NAME_WS1, ws1);
+        resourceService.update(ws1);
         ResourceTO newWs1 = resourceService.read(ws1.getKey());
         assertNotNull(newWs1);
 
@@ -2182,7 +2185,7 @@ public class UserITCase extends AbstractITCase {
 
         newWs1.getProvision(AnyTypeKind.USER.name()).setMapping(ws1NewUMapping);
 
-        resourceService.update(RESOURCE_NAME_WS1, newWs1);
+        resourceService.update(newWs1);
     }
 
     @Test
@@ -2198,7 +2201,7 @@ public class UserITCase extends AbstractITCase {
         ResourceTO resourceTO = resourceService.read(RESOURCE_NAME_TESTDB);
         assertNotNull(resourceTO);
         resourceTO.getPropagationActionsClassNames().add(DBPasswordPropagationActions.class.getName());
-        resourceService.update(RESOURCE_NAME_TESTDB, resourceTO);
+        resourceService.update(resourceTO);
 
         // 3. Add a db resource to the User
         UserMod userMod = new UserMod();
@@ -2224,7 +2227,7 @@ public class UserITCase extends AbstractITCase {
         resourceTO = resourceService.read(RESOURCE_NAME_TESTDB);
         assertNotNull(resourceTO);
         resourceTO.getPropagationActionsClassNames().remove(DBPasswordPropagationActions.class.getName());
-        resourceService.update(RESOURCE_NAME_TESTDB, resourceTO);
+        resourceService.update(resourceTO);
     }
 
     @Test
@@ -2241,7 +2244,7 @@ public class UserITCase extends AbstractITCase {
         assertNotNull(resourceTO);
         resourceTO.getPropagationActionsClassNames().add(LDAPPasswordPropagationActions.class.getName());
         resourceTO.setRandomPwdIfNotProvided(false);
-        resourceService.update(RESOURCE_NAME_LDAP, resourceTO);
+        resourceService.update(resourceTO);
 
         // 3. Add a resource to the User
         UserMod userMod = new UserMod();
@@ -2271,7 +2274,7 @@ public class UserITCase extends AbstractITCase {
         assertNotNull(resourceTO);
         resourceTO.getPropagationActionsClassNames().remove(LDAPPasswordPropagationActions.class.getName());
         resourceTO.setRandomPwdIfNotProvided(true);
-        resourceService.update(RESOURCE_NAME_LDAP, resourceTO);
+        resourceService.update(resourceTO);
     }
 
     @Test
@@ -2360,7 +2363,7 @@ public class UserITCase extends AbstractITCase {
         assertNotNull(csv);
         try {
             csv.setPasswordPolicy(8L);
-            resourceService.update(RESOURCE_NAME_CSV, csv);
+            resourceService.update(csv);
             csv = resourceService.read(RESOURCE_NAME_CSV);
 
             userTO = getUniqueSampleTO("syncope391@syncope.apache.org");
@@ -2379,7 +2382,7 @@ public class UserITCase extends AbstractITCase {
         } finally {
             // resource csv with null password policy
             csv.setPasswordPolicy(null);
-            resourceService.update(RESOURCE_NAME_CSV, csv);
+            resourceService.update(csv);
         }
     }
 

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/UserSelfITCase.java
----------------------------------------------------------------------
diff --git a/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/UserSelfITCase.java b/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/UserSelfITCase.java
index fdd25bd..2944cdc 100644
--- a/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/UserSelfITCase.java
+++ b/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/UserSelfITCase.java
@@ -148,10 +148,11 @@ public class UserSelfITCase extends AbstractITCase {
 
         // 2. self-update (username) - works
         UserMod userMod = new UserMod();
+        userMod.setKey(created.getKey());
         userMod.setUsername(created.getUsername() + "XX");
 
         SyncopeClient authClient = clientFactory.create(created.getUsername(), "password123");
-        UserTO updated = authClient.getService(UserSelfService.class).update(created.getKey(), userMod).
+        UserTO updated = authClient.getService(UserSelfService.class).update(userMod).
                 readEntity(UserTO.class);
         assertNotNull(updated);
         assertEquals(ActivitiDetector.isActivitiEnabledForUsers(syncopeService)
@@ -170,6 +171,7 @@ public class UserSelfITCase extends AbstractITCase {
 
         // 2. self-update (username + memberships + resource) - works but needs approval
         UserMod userMod = new UserMod();
+        userMod.setKey(created.getKey());
         userMod.setUsername(created.getUsername() + "XX");
         userMod.getMembershipsToAdd().add(7L);
         userMod.getResourcesToAdd().add(RESOURCE_NAME_TESTDB);
@@ -180,7 +182,7 @@ public class UserSelfITCase extends AbstractITCase {
         userMod.setPwdPropRequest(statusMod);
 
         SyncopeClient authClient = clientFactory.create(created.getUsername(), "password123");
-        UserTO updated = authClient.getService(UserSelfService.class).update(created.getKey(), userMod).
+        UserTO updated = authClient.getService(UserSelfService.class).update(userMod).
                 readEntity(UserTO.class);
         assertNotNull(updated);
         assertEquals("updateApproval", updated.getStatus());

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/VirAttrITCase.java
----------------------------------------------------------------------
diff --git a/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/VirAttrITCase.java b/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/VirAttrITCase.java
index 2c2065f..3fc1b98 100644
--- a/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/VirAttrITCase.java
+++ b/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/VirAttrITCase.java
@@ -281,7 +281,7 @@ public class VirAttrITCase extends AbstractITCase {
                 }
             }
 
-            resourceService.update(csv.getKey(), csv);
+            resourceService.update(csv);
             csv = resourceService.read(RESOURCE_NAME_CSV);
             assertNotNull(csv.getProvisions().get(0).getMapping());
 
@@ -337,7 +337,7 @@ public class VirAttrITCase extends AbstractITCase {
         } finally {
             // restore mapping of resource-csv
             csv.getProvisions().get(0).setMapping(origMapping);
-            resourceService.update(csv.getKey(), csv);
+            resourceService.update(csv);
         }
     }
 
@@ -376,7 +376,7 @@ public class VirAttrITCase extends AbstractITCase {
             }
         }
 
-        connectorService.update(connInstanceBean.getKey(), connInstanceBean);
+        connectorService.update(connInstanceBean);
 
         UserMod userMod = new UserMod();
         userMod.setKey(actual.getKey());
@@ -421,7 +421,7 @@ public class VirAttrITCase extends AbstractITCase {
             }
         }
 
-        connectorService.update(connInstanceBean.getKey(), connInstanceBean);
+        connectorService.update(connInstanceBean);
         // ----------------------------------------
 
         actual = userService.read(actual.getKey());


[4/4] syncope git commit: Improving REST update methods signature thanks to CXF-6447

Posted by il...@apache.org.
Improving REST update methods signature thanks to CXF-6447


Project: http://git-wip-us.apache.org/repos/asf/syncope/repo
Commit: http://git-wip-us.apache.org/repos/asf/syncope/commit/df60b3b4
Tree: http://git-wip-us.apache.org/repos/asf/syncope/tree/df60b3b4
Diff: http://git-wip-us.apache.org/repos/asf/syncope/diff/df60b3b4

Branch: refs/heads/SYNCOPE-666
Commit: df60b3b4166cfb924dac08c6f81a7f49bd2a5f8c
Parents: 6239afa
Author: Francesco Chicchiriccò <il...@apache.org>
Authored: Wed Jun 10 16:03:09 2015 +0200
Committer: Francesco Chicchiriccò <il...@apache.org>
Committed: Wed Jun 10 16:03:09 2015 +0200

----------------------------------------------------------------------
 .../console/rest/ConnectorRestClient.java       |  2 +-
 .../client/console/rest/GroupRestClient.java    |  2 +-
 .../console/rest/NotificationRestClient.java    |  2 +-
 .../client/console/rest/PolicyRestClient.java   |  2 +-
 .../client/console/rest/ReportRestClient.java   |  2 +-
 .../client/console/rest/ResourceRestClient.java |  2 +-
 .../client/console/rest/SchemaRestClient.java   |  6 +--
 .../rest/SecurityQuestionRestClient.java        |  6 +--
 .../client/console/rest/TaskRestClient.java     |  4 +-
 .../client/console/rest/UserRestClient.java     |  2 +-
 .../client/console/rest/UserSelfRestClient.java |  2 +-
 .../apache/syncope/common/lib/mod/AnyMod.java   |  2 +
 .../syncope/common/lib/to/AbstractPolicyTO.java |  2 +
 .../syncope/common/lib/to/AbstractSchemaTO.java |  2 +
 .../syncope/common/lib/to/AbstractTaskTO.java   |  2 +
 .../syncope/common/lib/to/AnyTypeClassTO.java   |  2 +
 .../apache/syncope/common/lib/to/AnyTypeTO.java |  2 +
 .../syncope/common/lib/to/ConnInstanceTO.java   |  2 +
 .../syncope/common/lib/to/NotificationTO.java   |  2 +
 .../apache/syncope/common/lib/to/RealmTO.java   |  2 +
 .../apache/syncope/common/lib/to/ReportTO.java  |  2 +
 .../syncope/common/lib/to/ResourceTO.java       |  2 +
 .../apache/syncope/common/lib/to/RoleTO.java    |  2 +
 .../common/lib/to/SecurityQuestionTO.java       |  2 +
 .../common/rest/api/service/AnyService.java     |  3 +-
 .../rest/api/service/AnyTypeClassService.java   |  3 +-
 .../common/rest/api/service/AnyTypeService.java |  3 +-
 .../rest/api/service/ConnectorService.java      |  3 +-
 .../rest/api/service/NotificationService.java   | 17 ++++---
 .../common/rest/api/service/PolicyService.java  | 17 ++++---
 .../common/rest/api/service/RealmService.java   |  3 +-
 .../common/rest/api/service/ReportService.java  | 29 ++++++------
 .../rest/api/service/ResourceService.java       |  3 +-
 .../common/rest/api/service/RoleService.java    |  3 +-
 .../common/rest/api/service/SchemaService.java  | 27 +++++------
 .../api/service/SecurityQuestionService.java    | 26 +++++------
 .../common/rest/api/service/TaskService.java    | 29 ++++++------
 .../rest/api/service/UserSelfService.java       |  8 ++--
 .../rest/cxf/service/AbstractAnyService.java    |  5 +--
 .../cxf/service/AnyTypeClassServiceImpl.java    |  3 +-
 .../rest/cxf/service/AnyTypeServiceImpl.java    |  3 +-
 .../rest/cxf/service/ConnectorServiceImpl.java  |  3 +-
 .../cxf/service/NotificationServiceImpl.java    | 11 +++--
 .../rest/cxf/service/PolicyServiceImpl.java     | 12 +++--
 .../core/rest/cxf/service/RealmServiceImpl.java |  4 +-
 .../rest/cxf/service/ReportServiceImpl.java     | 19 ++++----
 .../rest/cxf/service/ResourceServiceImpl.java   |  3 +-
 .../core/rest/cxf/service/RoleServiceImpl.java  |  3 +-
 .../rest/cxf/service/SchemaServiceImpl.java     | 13 +++---
 .../service/SecurityQuestionServiceImpl.java    | 11 +++--
 .../core/rest/cxf/service/TaskServiceImpl.java  | 47 ++++++++++----------
 .../rest/cxf/service/UserSelfServiceImpl.java   |  3 +-
 .../fit/core/reference/AbstractITCase.java      |  6 +--
 .../fit/core/reference/AnyTypeClassITCase.java  |  2 +-
 .../fit/core/reference/AnyTypeITCase.java       |  4 +-
 .../core/reference/AuthenticationITCase.java    |  2 +-
 .../fit/core/reference/ConnectorITCase.java     | 12 ++---
 .../fit/core/reference/DerSchemaITCase.java     |  6 +--
 .../syncope/fit/core/reference/GroupITCase.java | 13 +++---
 .../fit/core/reference/NotificationITCase.java  |  2 +-
 .../fit/core/reference/PlainSchemaITCase.java   | 10 ++---
 .../fit/core/reference/PolicyITCase.java        |  2 +-
 .../syncope/fit/core/reference/RealmITCase.java |  4 +-
 .../fit/core/reference/ReportITCase.java        |  2 +-
 .../fit/core/reference/ResourceITCase.java      |  8 ++--
 .../syncope/fit/core/reference/RoleITCase.java  |  4 +-
 .../fit/core/reference/SchedTaskITCase.java     |  2 +-
 .../core/reference/SecurityQuestionITCase.java  |  2 +-
 .../fit/core/reference/SyncTaskITCase.java      | 16 +++----
 .../syncope/fit/core/reference/UserITCase.java  | 39 ++++++++--------
 .../fit/core/reference/UserSelfITCase.java      |  6 ++-
 .../fit/core/reference/VirAttrITCase.java       |  8 ++--
 72 files changed, 258 insertions(+), 264 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/client/console/src/main/java/org/apache/syncope/client/console/rest/ConnectorRestClient.java
----------------------------------------------------------------------
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/rest/ConnectorRestClient.java b/client/console/src/main/java/org/apache/syncope/client/console/rest/ConnectorRestClient.java
index 3298d3f..8dab310 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/rest/ConnectorRestClient.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/rest/ConnectorRestClient.java
@@ -85,7 +85,7 @@ public class ConnectorRestClient extends BaseRestClient {
         Set<ConnConfProperty> filteredConf = filterProperties(connectorTO.getConfiguration());
         connectorTO.getConfiguration().clear();
         connectorTO.getConfiguration().addAll(filteredConf);
-        getService(ConnectorService.class).update(connectorTO.getKey(), connectorTO);
+        getService(ConnectorService.class).update(connectorTO);
     }
 
     public ConnInstanceTO delete(final Long id) {

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/client/console/src/main/java/org/apache/syncope/client/console/rest/GroupRestClient.java
----------------------------------------------------------------------
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/rest/GroupRestClient.java b/client/console/src/main/java/org/apache/syncope/client/console/rest/GroupRestClient.java
index a146857..b4b848c 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/rest/GroupRestClient.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/rest/GroupRestClient.java
@@ -98,7 +98,7 @@ public class GroupRestClient extends AbstractAnyRestClient {
         GroupTO result;
         synchronized (this) {
             GroupService service = getService(etag, GroupService.class);
-            result = service.update(groupMod.getKey(), groupMod).readEntity(GroupTO.class);
+            result = service.update(groupMod).readEntity(GroupTO.class);
             resetClient(GroupService.class);
         }
         return result;

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/client/console/src/main/java/org/apache/syncope/client/console/rest/NotificationRestClient.java
----------------------------------------------------------------------
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/rest/NotificationRestClient.java b/client/console/src/main/java/org/apache/syncope/client/console/rest/NotificationRestClient.java
index b33e4dc..ac2eb03 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/rest/NotificationRestClient.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/rest/NotificationRestClient.java
@@ -41,7 +41,7 @@ public class NotificationRestClient extends BaseRestClient {
     }
 
     public void update(final NotificationTO notificationTO) {
-        getService(NotificationService.class).update(notificationTO.getKey(), notificationTO);
+        getService(NotificationService.class).update(notificationTO);
     }
 
     public void delete(final Long key) {

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/client/console/src/main/java/org/apache/syncope/client/console/rest/PolicyRestClient.java
----------------------------------------------------------------------
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/rest/PolicyRestClient.java b/client/console/src/main/java/org/apache/syncope/client/console/rest/PolicyRestClient.java
index c1f019f..e58f734 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/rest/PolicyRestClient.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/rest/PolicyRestClient.java
@@ -62,7 +62,7 @@ public class PolicyRestClient extends BaseRestClient {
     }
 
     public <T extends AbstractPolicyTO> void updatePolicy(final T policy) {
-        getService(PolicyService.class).update(policy.getKey(), policy);
+        getService(PolicyService.class).update(policy);
     }
 
     public void delete(final Long id, final Class<? extends AbstractPolicyTO> policyClass) {

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/client/console/src/main/java/org/apache/syncope/client/console/rest/ReportRestClient.java
----------------------------------------------------------------------
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/rest/ReportRestClient.java b/client/console/src/main/java/org/apache/syncope/client/console/rest/ReportRestClient.java
index 617a2c7..05af975 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/rest/ReportRestClient.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/rest/ReportRestClient.java
@@ -77,7 +77,7 @@ public class ReportRestClient extends BaseRestClient implements ExecutionRestCli
     }
 
     public void update(final ReportTO reportTO) {
-        getService(ReportService.class).update(reportTO.getKey(), reportTO);
+        getService(ReportService.class).update(reportTO);
     }
 
     /**

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/client/console/src/main/java/org/apache/syncope/client/console/rest/ResourceRestClient.java
----------------------------------------------------------------------
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/rest/ResourceRestClient.java b/client/console/src/main/java/org/apache/syncope/client/console/rest/ResourceRestClient.java
index f5431db..15bf7aa 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/rest/ResourceRestClient.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/rest/ResourceRestClient.java
@@ -69,7 +69,7 @@ public class ResourceRestClient extends BaseRestClient {
     }
 
     public void update(final ResourceTO resourceTO) {
-        getService(ResourceService.class).update(resourceTO.getKey(), resourceTO);
+        getService(ResourceService.class).update(resourceTO);
     }
 
     public void delete(final String name) {

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/client/console/src/main/java/org/apache/syncope/client/console/rest/SchemaRestClient.java
----------------------------------------------------------------------
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/rest/SchemaRestClient.java b/client/console/src/main/java/org/apache/syncope/client/console/rest/SchemaRestClient.java
index 8a145dc..6b9f244 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/rest/SchemaRestClient.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/rest/SchemaRestClient.java
@@ -153,7 +153,7 @@ public class SchemaRestClient extends BaseRestClient {
     }
 
     public void updatePlainSchema(final PlainSchemaTO schemaTO) {
-        getService(SchemaService.class).update(SchemaType.PLAIN, schemaTO.getKey(), schemaTO);
+        getService(SchemaService.class).update(SchemaType.PLAIN, schemaTO);
     }
 
     public PlainSchemaTO deletePlainSchema(final String name) {
@@ -177,7 +177,7 @@ public class SchemaRestClient extends BaseRestClient {
     }
 
     public void updateVirSchema(final VirSchemaTO schemaTO) {
-        getService(SchemaService.class).update(SchemaType.VIRTUAL, schemaTO.getKey(), schemaTO);
+        getService(SchemaService.class).update(SchemaType.VIRTUAL, schemaTO);
     }
 
     public DerSchemaTO deleteDerSchema(final String name) {
@@ -191,7 +191,7 @@ public class SchemaRestClient extends BaseRestClient {
     }
 
     public void updateDerSchema(final DerSchemaTO schemaTO) {
-        getService(SchemaService.class).update(SchemaType.DERIVED, schemaTO.getKey(), schemaTO);
+        getService(SchemaService.class).update(SchemaType.DERIVED, schemaTO);
     }
 
     public VirSchemaTO deleteVirSchema(final String name) {

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/client/console/src/main/java/org/apache/syncope/client/console/rest/SecurityQuestionRestClient.java
----------------------------------------------------------------------
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/rest/SecurityQuestionRestClient.java b/client/console/src/main/java/org/apache/syncope/client/console/rest/SecurityQuestionRestClient.java
index 119b3b5..2fd07e0 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/rest/SecurityQuestionRestClient.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/rest/SecurityQuestionRestClient.java
@@ -37,11 +37,11 @@ public class SecurityQuestionRestClient extends BaseRestClient {
     }
 
     public void update(final SecurityQuestionTO securityQuestionTO) {
-        getService(SecurityQuestionService.class).update(securityQuestionTO.getKey(), securityQuestionTO);
+        getService(SecurityQuestionService.class).update(securityQuestionTO);
     }
 
-    public void delete(final Long securityQuestionId) {
-        getService(SecurityQuestionService.class).delete(securityQuestionId);
+    public void delete(final Long securityQuestionKey) {
+        getService(SecurityQuestionService.class).delete(securityQuestionKey);
     }
 
     public SecurityQuestionTO readByUser(final String username) {

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/client/console/src/main/java/org/apache/syncope/client/console/rest/TaskRestClient.java
----------------------------------------------------------------------
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/rest/TaskRestClient.java b/client/console/src/main/java/org/apache/syncope/client/console/rest/TaskRestClient.java
index cea466e..32236a9 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/rest/TaskRestClient.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/rest/TaskRestClient.java
@@ -131,11 +131,11 @@ public class TaskRestClient extends BaseRestClient implements ExecutionRestClien
     }
 
     public void updateSchedTask(final SchedTaskTO taskTO) {
-        getService(TaskService.class).update(taskTO.getKey(), taskTO);
+        getService(TaskService.class).update(taskTO);
     }
 
     public void updateSyncTask(final SyncTaskTO taskTO) {
-        getService(TaskService.class).update(taskTO.getKey(), taskTO);
+        getService(TaskService.class).update(taskTO);
     }
 
     public BulkActionResult bulkAction(final BulkAction action) {

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/client/console/src/main/java/org/apache/syncope/client/console/rest/UserRestClient.java
----------------------------------------------------------------------
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/rest/UserRestClient.java b/client/console/src/main/java/org/apache/syncope/client/console/rest/UserRestClient.java
index bfe6385..f517c4c 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/rest/UserRestClient.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/rest/UserRestClient.java
@@ -73,7 +73,7 @@ public class UserRestClient extends AbstractAnyRestClient {
         UserTO result;
         synchronized (this) {
             UserService service = getService(etag, UserService.class);
-            result = service.update(userMod.getKey(), userMod).readEntity(UserTO.class);
+            result = service.update(userMod).readEntity(UserTO.class);
             resetClient(UserService.class);
         }
         return result;

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/client/console/src/main/java/org/apache/syncope/client/console/rest/UserSelfRestClient.java
----------------------------------------------------------------------
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/rest/UserSelfRestClient.java b/client/console/src/main/java/org/apache/syncope/client/console/rest/UserSelfRestClient.java
index 13e1555..9668672 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/rest/UserSelfRestClient.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/rest/UserSelfRestClient.java
@@ -52,7 +52,7 @@ public class UserSelfRestClient extends BaseRestClient {
     }
 
     public void update(final UserMod userMod) {
-        getService(UserSelfService.class).update(userMod.getKey(), userMod);
+        getService(UserSelfService.class).update(userMod);
     }
 
     public void delete() {

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/common/lib/src/main/java/org/apache/syncope/common/lib/mod/AnyMod.java
----------------------------------------------------------------------
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/mod/AnyMod.java b/common/lib/src/main/java/org/apache/syncope/common/lib/mod/AnyMod.java
index f84e65a..0fbd6aa 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/mod/AnyMod.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/mod/AnyMod.java
@@ -22,6 +22,7 @@ import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import java.util.HashSet;
 import java.util.Set;
+import javax.ws.rs.PathParam;
 import javax.xml.bind.annotation.XmlElement;
 import javax.xml.bind.annotation.XmlElementWrapper;
 import javax.xml.bind.annotation.XmlType;
@@ -60,6 +61,7 @@ public abstract class AnyMod extends AbstractBaseBean {
         return key;
     }
 
+    @PathParam("key")
     public void setKey(final long key) {
         this.key = key;
     }

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/common/lib/src/main/java/org/apache/syncope/common/lib/to/AbstractPolicyTO.java
----------------------------------------------------------------------
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/AbstractPolicyTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/AbstractPolicyTO.java
index 9202fba..2c5fcb4 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/AbstractPolicyTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/AbstractPolicyTO.java
@@ -22,6 +22,7 @@ import com.fasterxml.jackson.annotation.JsonProperty;
 import com.fasterxml.jackson.annotation.JsonTypeInfo;
 import java.util.ArrayList;
 import java.util.List;
+import javax.ws.rs.PathParam;
 import javax.xml.bind.annotation.XmlElement;
 import javax.xml.bind.annotation.XmlElementWrapper;
 import javax.xml.bind.annotation.XmlRootElement;
@@ -62,6 +63,7 @@ public abstract class AbstractPolicyTO extends AbstractBaseBean {
         return key;
     }
 
+    @PathParam("key")
     public void setKey(final long key) {
         this.key = key;
     }

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/common/lib/src/main/java/org/apache/syncope/common/lib/to/AbstractSchemaTO.java
----------------------------------------------------------------------
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/AbstractSchemaTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/AbstractSchemaTO.java
index b3a37a8..afd6e6b 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/AbstractSchemaTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/AbstractSchemaTO.java
@@ -19,6 +19,7 @@
 package org.apache.syncope.common.lib.to;
 
 import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import javax.ws.rs.PathParam;
 import javax.xml.bind.annotation.XmlRootElement;
 import javax.xml.bind.annotation.XmlSeeAlso;
 import javax.xml.bind.annotation.XmlType;
@@ -38,6 +39,7 @@ public abstract class AbstractSchemaTO extends AbstractBaseBean {
         return key;
     }
 
+    @PathParam("key")
     public void setKey(final String key) {
         this.key = key;
     }

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/common/lib/src/main/java/org/apache/syncope/common/lib/to/AbstractTaskTO.java
----------------------------------------------------------------------
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/AbstractTaskTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/AbstractTaskTO.java
index 21e1cb0..21e665b 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/AbstractTaskTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/AbstractTaskTO.java
@@ -23,6 +23,7 @@ import com.fasterxml.jackson.annotation.JsonTypeInfo;
 
 import java.util.ArrayList;
 import java.util.List;
+import javax.ws.rs.PathParam;
 import javax.xml.bind.annotation.XmlElement;
 import javax.xml.bind.annotation.XmlElementWrapper;
 import javax.xml.bind.annotation.XmlRootElement;
@@ -47,6 +48,7 @@ public abstract class AbstractTaskTO extends AbstractStartEndBean {
         return key;
     }
 
+    @PathParam("key")
     public void setKey(final long key) {
         this.key = key;
     }

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/common/lib/src/main/java/org/apache/syncope/common/lib/to/AnyTypeClassTO.java
----------------------------------------------------------------------
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/AnyTypeClassTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/AnyTypeClassTO.java
index 9b696f8..508d2cb 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/AnyTypeClassTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/AnyTypeClassTO.java
@@ -21,6 +21,7 @@ package org.apache.syncope.common.lib.to;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import java.util.ArrayList;
 import java.util.List;
+import javax.ws.rs.PathParam;
 import javax.xml.bind.annotation.XmlElement;
 import javax.xml.bind.annotation.XmlElementWrapper;
 import javax.xml.bind.annotation.XmlRootElement;
@@ -45,6 +46,7 @@ public class AnyTypeClassTO extends AbstractBaseBean {
         return key;
     }
 
+    @PathParam("key")
     public void setKey(final String key) {
         this.key = key;
     }

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/common/lib/src/main/java/org/apache/syncope/common/lib/to/AnyTypeTO.java
----------------------------------------------------------------------
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/AnyTypeTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/AnyTypeTO.java
index 3722b81..a5a7104 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/AnyTypeTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/AnyTypeTO.java
@@ -21,6 +21,7 @@ package org.apache.syncope.common.lib.to;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import java.util.ArrayList;
 import java.util.List;
+import javax.ws.rs.PathParam;
 import javax.xml.bind.annotation.XmlElement;
 import javax.xml.bind.annotation.XmlElementWrapper;
 import javax.xml.bind.annotation.XmlRootElement;
@@ -44,6 +45,7 @@ public class AnyTypeTO extends AbstractBaseBean {
         return key;
     }
 
+    @PathParam("key")
     public void setKey(final String key) {
         this.key = key;
     }

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/common/lib/src/main/java/org/apache/syncope/common/lib/to/ConnInstanceTO.java
----------------------------------------------------------------------
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/ConnInstanceTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/ConnInstanceTO.java
index 5c25783..2111570 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/ConnInstanceTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/ConnInstanceTO.java
@@ -26,6 +26,7 @@ import java.util.HashMap;
 import java.util.HashSet;
 import java.util.Map;
 import java.util.Set;
+import javax.ws.rs.PathParam;
 import javax.xml.bind.annotation.XmlElement;
 import javax.xml.bind.annotation.XmlElementWrapper;
 import javax.xml.bind.annotation.XmlRootElement;
@@ -71,6 +72,7 @@ public class ConnInstanceTO extends AbstractBaseBean {
         return key;
     }
 
+    @PathParam("key")
     public void setKey(final long key) {
         this.key = key;
     }

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/common/lib/src/main/java/org/apache/syncope/common/lib/to/NotificationTO.java
----------------------------------------------------------------------
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/NotificationTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/NotificationTO.java
index 5487410..01f70d0 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/NotificationTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/NotificationTO.java
@@ -24,6 +24,7 @@ import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
+import javax.ws.rs.PathParam;
 import javax.xml.bind.annotation.XmlElement;
 import javax.xml.bind.annotation.XmlElementWrapper;
 import javax.xml.bind.annotation.XmlRootElement;
@@ -91,6 +92,7 @@ public class NotificationTO extends AbstractBaseBean {
         return key;
     }
 
+    @PathParam("key")
     public void setKey(final Long key) {
         this.key = key;
     }

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/common/lib/src/main/java/org/apache/syncope/common/lib/to/RealmTO.java
----------------------------------------------------------------------
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/RealmTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/RealmTO.java
index 9a25be2..faef389 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/RealmTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/RealmTO.java
@@ -18,6 +18,7 @@
  */
 package org.apache.syncope.common.lib.to;
 
+import javax.ws.rs.PathParam;
 import javax.xml.bind.annotation.XmlRootElement;
 import javax.xml.bind.annotation.XmlType;
 import org.apache.syncope.common.lib.AbstractBaseBean;
@@ -68,6 +69,7 @@ public class RealmTO extends AbstractBaseBean {
         return fullPath;
     }
 
+    @PathParam("fullPath")
     public void setFullPath(final String fullPath) {
         this.fullPath = fullPath;
     }

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/common/lib/src/main/java/org/apache/syncope/common/lib/to/ReportTO.java
----------------------------------------------------------------------
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/ReportTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/ReportTO.java
index 80f74f3..533f8d1 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/ReportTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/ReportTO.java
@@ -22,6 +22,7 @@ import com.fasterxml.jackson.annotation.JsonProperty;
 import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
+import javax.ws.rs.PathParam;
 import javax.xml.bind.annotation.XmlElement;
 import javax.xml.bind.annotation.XmlElementWrapper;
 import javax.xml.bind.annotation.XmlRootElement;
@@ -54,6 +55,7 @@ public class ReportTO extends AbstractStartEndBean {
         return key;
     }
 
+    @PathParam("key")
     public void setKey(final long key) {
         this.key = key;
     }

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/common/lib/src/main/java/org/apache/syncope/common/lib/to/ResourceTO.java
----------------------------------------------------------------------
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/ResourceTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/ResourceTO.java
index 7fbac89..79d33a1 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/ResourceTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/ResourceTO.java
@@ -24,6 +24,7 @@ import java.util.ArrayList;
 import java.util.HashSet;
 import java.util.List;
 import java.util.Set;
+import javax.ws.rs.PathParam;
 import javax.xml.bind.annotation.XmlElement;
 import javax.xml.bind.annotation.XmlElementWrapper;
 import javax.xml.bind.annotation.XmlRootElement;
@@ -98,6 +99,7 @@ public class ResourceTO extends AbstractAnnotatedBean {
         return key;
     }
 
+    @PathParam("key")
     public void setKey(final String key) {
         this.key = key;
     }

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/common/lib/src/main/java/org/apache/syncope/common/lib/to/RoleTO.java
----------------------------------------------------------------------
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/RoleTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/RoleTO.java
index 1a12fdb..fab8a06 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/RoleTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/RoleTO.java
@@ -23,6 +23,7 @@ import java.util.ArrayList;
 import java.util.HashSet;
 import java.util.List;
 import java.util.Set;
+import javax.ws.rs.PathParam;
 import javax.xml.bind.annotation.XmlElement;
 import javax.xml.bind.annotation.XmlElementWrapper;
 import javax.xml.bind.annotation.XmlRootElement;
@@ -49,6 +50,7 @@ public class RoleTO extends AbstractBaseBean {
         return key;
     }
 
+    @PathParam("key")
     public void setKey(final long key) {
         this.key = key;
     }

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/common/lib/src/main/java/org/apache/syncope/common/lib/to/SecurityQuestionTO.java
----------------------------------------------------------------------
diff --git a/common/lib/src/main/java/org/apache/syncope/common/lib/to/SecurityQuestionTO.java b/common/lib/src/main/java/org/apache/syncope/common/lib/to/SecurityQuestionTO.java
index dd73f2c..83a8c55 100644
--- a/common/lib/src/main/java/org/apache/syncope/common/lib/to/SecurityQuestionTO.java
+++ b/common/lib/src/main/java/org/apache/syncope/common/lib/to/SecurityQuestionTO.java
@@ -18,6 +18,7 @@
  */
 package org.apache.syncope.common.lib.to;
 
+import javax.ws.rs.PathParam;
 import javax.xml.bind.annotation.XmlRootElement;
 import javax.xml.bind.annotation.XmlType;
 import org.apache.syncope.common.lib.AbstractBaseBean;
@@ -36,6 +37,7 @@ public class SecurityQuestionTO extends AbstractBaseBean {
         return key;
     }
 
+    @PathParam("key")
     public void setKey(final long key) {
         this.key = key;
     }

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/AnyService.java
----------------------------------------------------------------------
diff --git a/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/AnyService.java b/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/AnyService.java
index 90fbf7d..93167cb 100644
--- a/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/AnyService.java
+++ b/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/AnyService.java
@@ -100,7 +100,6 @@ public interface AnyService<TO extends AnyTO, MOD extends AnyMod> extends JAXRSS
     /**
      * Updates any object matching the provided key.
      *
-     * @param key key of any object to be updated
      * @param anyMod modification to be applied to any object matching the provided key
      * @return <tt>Response</tt> object featuring the updated any object enriched with propagation status information
      * - {@link AnyTO} as <tt>Entity</tt>
@@ -114,7 +113,7 @@ public interface AnyService<TO extends AnyTO, MOD extends AnyMod> extends JAXRSS
     @Path("{key}")
     @Produces({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
     @Consumes({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
-    Response update(@NotNull @PathParam("key") Long key, @NotNull MOD anyMod);
+    Response update(@NotNull MOD anyMod);
 
     /**
      * Deletes any object matching provided key.

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/AnyTypeClassService.java
----------------------------------------------------------------------
diff --git a/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/AnyTypeClassService.java b/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/AnyTypeClassService.java
index 21831cf..18bf1c4 100644
--- a/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/AnyTypeClassService.java
+++ b/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/AnyTypeClassService.java
@@ -78,13 +78,12 @@ public interface AnyTypeClassService extends JAXRSService {
     /**
      * Updates the anyTypeClass matching the provided key.
      *
-     * @param key anyTypeClass key to be updated
      * @param anyTypeClassTO anyTypeClass to be stored
      */
     @PUT
     @Path("{key}")
     @Consumes({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
-    void update(@NotNull @PathParam("key") String key, @NotNull AnyTypeClassTO anyTypeClassTO);
+    void update(@NotNull AnyTypeClassTO anyTypeClassTO);
 
     /**
      * Deletes the anyTypeClass matching the provided key.

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/AnyTypeService.java
----------------------------------------------------------------------
diff --git a/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/AnyTypeService.java b/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/AnyTypeService.java
index ddedd25..c4a8c02 100644
--- a/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/AnyTypeService.java
+++ b/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/AnyTypeService.java
@@ -78,13 +78,12 @@ public interface AnyTypeService extends JAXRSService {
     /**
      * Updates the anyType matching the provided key.
      *
-     * @param key anyType key to be updated
      * @param anyTypeTO anyType to be stored
      */
     @PUT
     @Path("{key}")
     @Consumes({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
-    void update(@NotNull @PathParam("key") String key, @NotNull AnyTypeTO anyTypeTO);
+    void update(@NotNull AnyTypeTO anyTypeTO);
 
     /**
      * Deletes the anyType matching the provided key.

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/ConnectorService.java
----------------------------------------------------------------------
diff --git a/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/ConnectorService.java b/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/ConnectorService.java
index e0c240f..2518a74 100644
--- a/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/ConnectorService.java
+++ b/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/ConnectorService.java
@@ -154,13 +154,12 @@ public interface ConnectorService extends JAXRSService {
     /**
      * Updates the connector instance matching the provided key.
      *
-     * @param key connector instance key to be updated
      * @param connInstanceTO connector instance to be stored
      */
     @PUT
     @Path("{key}")
     @Consumes({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
-    void update(@NotNull @PathParam("key") Long key, @NotNull ConnInstanceTO connInstanceTO);
+    void update(@NotNull ConnInstanceTO connInstanceTO);
 
     /**
      * Deletes the connector instance matching the provided key.

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/NotificationService.java
----------------------------------------------------------------------
diff --git a/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/NotificationService.java b/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/NotificationService.java
index a210014..ae33d5a 100644
--- a/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/NotificationService.java
+++ b/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/NotificationService.java
@@ -44,13 +44,13 @@ public interface NotificationService extends JAXRSService {
     /**
      * Returns notification with matching id.
      *
-     * @param notificationKey key of notification to be read
+     * @param key key of notification to be read
      * @return notification with matching key
      */
     @GET
-    @Path("{notificationKey}")
+    @Path("{key}")
     @Produces({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
-    NotificationTO read(@NotNull @PathParam("notificationKey") Long notificationKey);
+    NotificationTO read(@NotNull @PathParam("key") Long key);
 
     /**
      * Returns a list of all notifications.
@@ -78,20 +78,19 @@ public interface NotificationService extends JAXRSService {
     /**
      * Updates the notification matching the given key.
      *
-     * @param notificationKey key of notification to be updated
      * @param notificationTO notification to be stored
      */
     @PUT
-    @Path("{notificationKey}")
+    @Path("{key}")
     @Consumes({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
-    void update(@NotNull @PathParam("notificationKey") Long notificationKey, @NotNull NotificationTO notificationTO);
+    void update(@NotNull NotificationTO notificationTO);
 
     /**
      * Deletes the notification matching the given key.
      *
-     * @param notificationKey key for notification to be deleted
+     * @param key key for notification to be deleted
      */
     @DELETE
-    @Path("{notificationKey}")
-    void delete(@NotNull @PathParam("notificationKey") Long notificationKey);
+    @Path("{key}")
+    void delete(@NotNull @PathParam("key") Long key);
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/PolicyService.java
----------------------------------------------------------------------
diff --git a/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/PolicyService.java b/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/PolicyService.java
index c098ace..980da9f 100644
--- a/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/PolicyService.java
+++ b/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/PolicyService.java
@@ -46,14 +46,14 @@ public interface PolicyService extends JAXRSService {
     /**
      * Returns the policy matching the given key.
      *
-     * @param policyKey key of requested policy
+     * @param key key of requested policy
      * @param <T> response type (extending PolicyTO)
      * @return policy with matching id
      */
     @GET
-    @Path("{policyKey}")
+    @Path("{key}")
     @Produces({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
-    <T extends AbstractPolicyTO> T read(@NotNull @PathParam("policyKey") Long policyKey);
+    <T extends AbstractPolicyTO> T read(@NotNull @PathParam("key") Long key);
 
     /**
      * Returns a list of policies of the matching type.
@@ -83,23 +83,22 @@ public interface PolicyService extends JAXRSService {
     /**
      * Updates policy matching the given key.
      *
-     * @param policyKey key of policy to be updated
      * @param policyTO Policy to replace existing policy
      * @param <T> response type (extending PolicyTO)
      */
     @PUT
-    @Path("{policyKey}")
+    @Path("{key}")
     @Consumes({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
-    <T extends AbstractPolicyTO> void update(@NotNull @PathParam("policyKey") Long policyKey, @NotNull T policyTO);
+    <T extends AbstractPolicyTO> void update(@NotNull T policyTO);
 
     /**
      * Delete policy matching the given key.
      *
-     * @param policyKey key of policy to be deleted
+     * @param key key of policy to be deleted
      * @param <T> response type (extending PolicyTO)
      */
     @DELETE
-    @Path("{policyKey}")
-    <T extends AbstractPolicyTO> void delete(@NotNull @PathParam("policyKey") Long policyKey);
+    @Path("{key}")
+    <T extends AbstractPolicyTO> void delete(@NotNull @PathParam("key") Long key);
 
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/RealmService.java
----------------------------------------------------------------------
diff --git a/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/RealmService.java b/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/RealmService.java
index c8343ae..74b2333 100644
--- a/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/RealmService.java
+++ b/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/RealmService.java
@@ -80,13 +80,12 @@ public interface RealmService extends JAXRSService {
     /**
      * Updates the realm under the given path.
      *
-     * @param fullPath full path of the realm
      * @param realmTO realm to be stored
      */
     @PUT
     @Path("{fullPath:.*}")
     @Consumes({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
-    void update(@NotNull @PathParam("fullPath") String fullPath, @NotNull RealmTO realmTO);
+    void update(@NotNull RealmTO realmTO);
 
     /**
      * Deletes the notification matching the given key.

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/ReportService.java
----------------------------------------------------------------------
diff --git a/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/ReportService.java b/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/ReportService.java
index 996f784..b5ce7ec 100644
--- a/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/ReportService.java
+++ b/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/ReportService.java
@@ -64,13 +64,13 @@ public interface ReportService extends JAXRSService {
     /**
      * Returns report with matching key.
      *
-     * @param reportKey key of report to be read
+     * @param key key of report to be read
      * @return report with matching key
      */
     @GET
-    @Path("{reportKey}")
+    @Path("{key}")
     @Produces({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
-    ReportTO read(@NotNull @PathParam("reportKey") Long reportKey);
+    ReportTO read(@NotNull @PathParam("key") Long key);
 
     /**
      * Returns report execution with matching key.
@@ -109,22 +109,21 @@ public interface ReportService extends JAXRSService {
     /**
      * Updates report with matching key.
      *
-     * @param reportKey id for report to be updated
      * @param reportTO report to be stored
      */
     @PUT
-    @Path("{reportKey}")
+    @Path("{key}")
     @Consumes({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
-    void update(@NotNull @PathParam("reportKey") Long reportKey, ReportTO reportTO);
+    void update(@NotNull ReportTO reportTO);
 
     /**
      * Deletes report with matching key.
      *
-     * @param reportKey Deletes report with matching key
+     * @param key Deletes report with matching key
      */
     @DELETE
-    @Path("{reportKey}")
-    void delete(@NotNull @PathParam("reportKey") Long reportKey);
+    @Path("{key}")
+    void delete(@NotNull @PathParam("key") Long key);
 
     /**
      * Deletes report execution with matching key.
@@ -138,13 +137,13 @@ public interface ReportService extends JAXRSService {
     /**
      * Executes the report with matching key.
      *
-     * @param reportKey key of report to be executed
+     * @param key key of report to be executed
      * @return report execution result
      */
     @POST
-    @Path("{reportKey}/execute")
+    @Path("{key}/execute")
     @Produces({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
-    ReportExecTO execute(@NotNull @PathParam("reportKey") Long reportKey);
+    ReportExecTO execute(@NotNull @PathParam("key") Long key);
 
     /**
      * Exports the report execution with matching key in the requested format.
@@ -173,10 +172,10 @@ public interface ReportService extends JAXRSService {
     /**
      * Executes an action on an existing report's job.
      *
-     * @param reportKey report key
+     * @param key report key
      * @param action
      */
     @POST
-    @Path("{reportKey}")
-    void actionJob(@PathParam("reportKey") Long reportKey, @QueryParam("action") JobAction action);
+    @Path("{key}")
+    void actionJob(@PathParam("key") Long key, @QueryParam("action") JobAction action);
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/ResourceService.java
----------------------------------------------------------------------
diff --git a/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/ResourceService.java b/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/ResourceService.java
index 41204a0..cac9132 100644
--- a/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/ResourceService.java
+++ b/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/ResourceService.java
@@ -98,13 +98,12 @@ public interface ResourceService extends JAXRSService {
     /**
      * Updates the resource matching the given name.
      *
-     * @param key name of resource to be updated
      * @param resourceTO resource to be stored
      */
     @PUT
     @Path("{key}")
     @Consumes({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
-    void update(@NotNull @PathParam("key") String key, @NotNull ResourceTO resourceTO);
+    void update(@NotNull ResourceTO resourceTO);
 
     /**
      * Deletes the resource matching the given name.

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/RoleService.java
----------------------------------------------------------------------
diff --git a/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/RoleService.java b/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/RoleService.java
index 881e1bc..d6afa1f 100644
--- a/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/RoleService.java
+++ b/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/RoleService.java
@@ -78,13 +78,12 @@ public interface RoleService extends JAXRSService {
     /**
      * Updates the role matching the provided key.
      *
-     * @param key role key to be updated
      * @param roleTO role to be stored
      */
     @PUT
     @Path("{key}")
     @Consumes({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
-    void update(@NotNull @PathParam("key") Long key, @NotNull RoleTO roleTO);
+    void update(@NotNull RoleTO roleTO);
 
     /**
      * Deletes the role matching the provided key.

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/SchemaService.java
----------------------------------------------------------------------
diff --git a/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/SchemaService.java b/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/SchemaService.java
index 352e310..68f0f43 100644
--- a/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/SchemaService.java
+++ b/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/SchemaService.java
@@ -23,6 +23,7 @@ import javax.validation.constraints.NotNull;
 import javax.ws.rs.Consumes;
 import javax.ws.rs.DELETE;
 import javax.ws.rs.GET;
+import javax.ws.rs.MatrixParam;
 import javax.ws.rs.POST;
 import javax.ws.rs.PUT;
 import javax.ws.rs.Path;
@@ -43,18 +44,18 @@ import org.apache.syncope.common.lib.types.SchemaType;
 public interface SchemaService extends JAXRSService {
 
     /**
-     * Returns schema matching the given kind, type and name.
+     * Returns schema matching the given type and key.
      *
      * @param <T> actual SchemaTO
      * @param type type for schemas to be read
-     * @param schemaKey name of schema to be read
+     * @param key name of schema to be read
      * @return schema matching the given kind, type and name
      */
     @GET
     @Path("{key}")
     @Produces({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
     <T extends AbstractSchemaTO> T read(
-            @NotNull @PathParam("type") SchemaType type, @NotNull @PathParam("key") String schemaKey);
+            @NotNull @PathParam("type") SchemaType type, @NotNull @PathParam("key") String key);
 
     /**
      * Returns a list of schemas with matching kind and type.
@@ -65,7 +66,7 @@ public interface SchemaService extends JAXRSService {
      */
     @GET
     @Produces({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
-    <T extends AbstractSchemaTO> List<T> list(@NotNull @PathParam("type") SchemaType type);
+    <T extends AbstractSchemaTO> List<T> list(@NotNull @MatrixParam("type") SchemaType type);
 
     /**
      * Creates a new schema.
@@ -80,33 +81,27 @@ public interface SchemaService extends JAXRSService {
     })
     @POST
     @Consumes({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
-    <T extends AbstractSchemaTO> Response create(
-            @NotNull @PathParam("type") SchemaType type, @NotNull T schemaTO);
+    <T extends AbstractSchemaTO> Response create(@NotNull @PathParam("type") SchemaType type, @NotNull T schemaTO);
 
     /**
-     * Updates the schema matching the given kind, type and name.
+     * Updates the schema matching the given type and key.
      *
      * @param <T> actual SchemaTO
      * @param type type for schemas to be updated
-     * @param schemaKey name of schema to be updated
      * @param schemaTO updated schema to be stored
      */
     @PUT
     @Path("{key}")
     @Consumes({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
-    <T extends AbstractSchemaTO> void update(
-            @NotNull @PathParam("type") SchemaType type,
-            @NotNull @PathParam("key") String schemaKey, @NotNull T schemaTO);
+    <T extends AbstractSchemaTO> void update(@NotNull @PathParam("type") SchemaType type, @NotNull T schemaTO);
 
     /**
-     * Deletes the schema matching the given kind, type and name.
+     * Deletes the schema matching the given type and key.
      *
      * @param type type for schema to be deleted
-     * @param schemaKey name of schema to be deleted
+     * @param key name of schema to be deleted
      */
     @DELETE
     @Path("{key}")
-    void delete(
-            @NotNull @PathParam("type") SchemaType type,
-            @NotNull @PathParam("key") String schemaKey);
+    void delete(@NotNull @PathParam("type") SchemaType type, @NotNull @PathParam("key") String key);
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/SecurityQuestionService.java
----------------------------------------------------------------------
diff --git a/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/SecurityQuestionService.java b/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/SecurityQuestionService.java
index 12a73cf..f0dcf27 100644
--- a/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/SecurityQuestionService.java
+++ b/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/SecurityQuestionService.java
@@ -51,15 +51,15 @@ public interface SecurityQuestionService extends JAXRSService {
     List<SecurityQuestionTO> list();
 
     /**
-     * Returns security question with matching id.
+     * Returns security question with matching key.
      *
-     * @param securityQuestionId security question id to be read
-     * @return security question with matching id
+     * @param key security question key to be read
+     * @return security question with matching key
      */
     @GET
-    @Path("{securityQuestionId}")
+    @Path("{key}")
     @Produces({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
-    SecurityQuestionTO read(@NotNull @PathParam("securityQuestionId") Long securityQuestionId);
+    SecurityQuestionTO read(@NotNull @PathParam("key") Long key);
 
     /**
      * Creates a new security question.
@@ -76,25 +76,23 @@ public interface SecurityQuestionService extends JAXRSService {
     Response create(@NotNull SecurityQuestionTO securityQuestionTO);
 
     /**
-     * Updates the security question matching the provided id.
+     * Updates the security question matching the provided key.
      *
-     * @param securityQuestionId security question id to be updated
      * @param securityQuestionTO security question to be stored
      */
     @PUT
-    @Path("{securityQuestionId}")
+    @Path("{key}")
     @Consumes({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
-    void update(@NotNull @PathParam("securityQuestionId") Long securityQuestionId,
-            @NotNull SecurityQuestionTO securityQuestionTO);
+    void update(@NotNull SecurityQuestionTO securityQuestionTO);
 
     /**
-     * Deletes the security question matching the provided id.
+     * Deletes the security question matching the provided key.
      *
-     * @param securityQuestionId security question id to be deleted
+     * @param key security question key to be deleted
      */
     @DELETE
-    @Path("{securityQuestionId}")
-    void delete(@NotNull @PathParam("securityQuestionId") Long securityQuestionId);
+    @Path("{key}")
+    void delete(@NotNull @PathParam("key") Long key);
 
     /**
      * Ask for security question configured for the user matching the given username, if any.

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/TaskService.java
----------------------------------------------------------------------
diff --git a/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/TaskService.java b/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/TaskService.java
index 84b7cbf..5e39b2a 100644
--- a/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/TaskService.java
+++ b/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/TaskService.java
@@ -58,14 +58,14 @@ public interface TaskService extends JAXRSService {
     /**
      * Returns the task matching the given key.
      *
-     * @param taskKey key of task to be read
+     * @param key key of task to be read
      * @param <T> type of taskTO
      * @return task with matching id
      */
     @GET
-    @Path("{taskKey}")
+    @Path("{key}")
     @Produces({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
-    <T extends AbstractTaskTO> T read(@NotNull @PathParam("taskKey") Long taskKey);
+    <T extends AbstractTaskTO> T read(@NotNull @PathParam("key") Long key);
 
     /**
      * Returns the task execution with the given id.
@@ -109,22 +109,21 @@ public interface TaskService extends JAXRSService {
     /**
      * Updates the task matching the provided key.
      *
-     * @param taskKey key of task to be updated
      * @param taskTO updated task to be stored
      */
     @PUT
-    @Path("{taskKey}")
+    @Path("{key}")
     @Consumes({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
-    void update(@NotNull @PathParam("taskKey") Long taskKey, @NotNull AbstractTaskTO taskTO);
+    void update(@NotNull AbstractTaskTO taskTO);
 
     /**
      * Deletes the task matching the provided key.
      *
-     * @param taskKey key of task to be deleted
+     * @param key key of task to be deleted
      */
     @DELETE
-    @Path("{taskKey}")
-    void delete(@NotNull @PathParam("taskKey") Long taskKey);
+    @Path("{key}")
+    void delete(@NotNull @PathParam("key") Long key);
 
     /**
      * Deletes the task execution matching the provided key.
@@ -138,14 +137,14 @@ public interface TaskService extends JAXRSService {
     /**
      * Executes the task matching the given id.
      *
-     * @param taskKey key of task to be executed
+     * @param key key of task to be executed
      * @param dryRun if true, task will only be simulated
      * @return execution report for the task matching the given id
      */
     @POST
-    @Path("{taskKey}/execute")
+    @Path("{key}/execute")
     @Produces({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
-    TaskExecTO execute(@NotNull @PathParam("taskKey") Long taskKey,
+    TaskExecTO execute(@NotNull @PathParam("key") Long key,
             @QueryParam("dryRun") @DefaultValue("false") boolean dryRun);
 
     /**
@@ -185,10 +184,10 @@ public interface TaskService extends JAXRSService {
     /**
      * Executes an action on an existing task's job.
      *
-     * @param taskKey task key
+     * @param key task key
      * @param action
      */
     @POST
-    @Path("{taskKey}")
-    void actionJob(@PathParam("taskKey") Long taskKey, @QueryParam("action") JobAction action);
+    @Path("{key}")
+    void actionJob(@PathParam("key") Long key, @QueryParam("action") JobAction action);
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/UserSelfService.java
----------------------------------------------------------------------
diff --git a/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/UserSelfService.java b/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/UserSelfService.java
index f57f2cf..dd2fe7e 100644
--- a/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/UserSelfService.java
+++ b/common/rest-api/src/main/java/org/apache/syncope/common/rest/api/service/UserSelfService.java
@@ -25,7 +25,6 @@ import javax.ws.rs.DefaultValue;
 import javax.ws.rs.GET;
 import javax.ws.rs.POST;
 import javax.ws.rs.Path;
-import javax.ws.rs.PathParam;
 import javax.ws.rs.Produces;
 import javax.ws.rs.QueryParam;
 import javax.ws.rs.core.MediaType;
@@ -74,8 +73,7 @@ public interface UserSelfService extends JAXRSService {
     /**
      * Self-updates user.
      *
-     * @param userKey id of user to be updated
-     * @param userMod modification to be applied to user matching the provided userKey
+     * @param userMod modification to be applied to user matching the provided key
      * @return <tt>Response</tt> object featuring the updated user - {@link UserTO} as <tt>Entity</tt>
      */
     @Descriptions({
@@ -83,10 +81,10 @@ public interface UserSelfService extends JAXRSService {
                 value = "Featuring the updated user - <tt>UserTO</tt> as <tt>Entity</tt>")
     })
     @POST
-    @Path("{userKey}")
+    @Path("{key}")
     @Produces({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
     @Consumes({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
-    Response update(@NotNull @PathParam("userKey") Long userKey, @NotNull UserMod userMod);
+    Response update(@NotNull UserMod userMod);
 
     /**
      * Self-deletes user.

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/AbstractAnyService.java
----------------------------------------------------------------------
diff --git a/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/AbstractAnyService.java b/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/AbstractAnyService.java
index 7cf4a08..93afe01 100644
--- a/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/AbstractAnyService.java
+++ b/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/AbstractAnyService.java
@@ -107,12 +107,11 @@ public abstract class AbstractAnyService<TO extends AnyTO, MOD extends AnyMod>
     }
 
     @Override
-    public Response update(final Long key, final MOD anyMod) {
-        TO any = getAnyLogic().read(key);
+    public Response update(final MOD anyMod) {
+        TO any = getAnyLogic().read(anyMod.getKey());
 
         checkETag(any.getETagValue());
 
-        anyMod.setKey(key);
         TO updated = getAnyLogic().update(anyMod);
         return modificationResponse(updated);
     }

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/AnyTypeClassServiceImpl.java
----------------------------------------------------------------------
diff --git a/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/AnyTypeClassServiceImpl.java b/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/AnyTypeClassServiceImpl.java
index 3683e61..54a546a 100644
--- a/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/AnyTypeClassServiceImpl.java
+++ b/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/AnyTypeClassServiceImpl.java
@@ -54,8 +54,7 @@ public class AnyTypeClassServiceImpl extends AbstractServiceImpl implements AnyT
     }
 
     @Override
-    public void update(final String key, final AnyTypeClassTO anyTypeTO) {
-        anyTypeTO.setKey(key);
+    public void update(final AnyTypeClassTO anyTypeTO) {
         logic.update(anyTypeTO);
     }
 

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/AnyTypeServiceImpl.java
----------------------------------------------------------------------
diff --git a/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/AnyTypeServiceImpl.java b/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/AnyTypeServiceImpl.java
index bb3c699..5f0e8ec 100644
--- a/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/AnyTypeServiceImpl.java
+++ b/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/AnyTypeServiceImpl.java
@@ -54,8 +54,7 @@ public class AnyTypeServiceImpl extends AbstractServiceImpl implements AnyTypeSe
     }
 
     @Override
-    public void update(final String key, final AnyTypeTO anyTypeTO) {
-        anyTypeTO.setKey(key);
+    public void update(final AnyTypeTO anyTypeTO) {
         logic.update(anyTypeTO);
     }
 

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/ConnectorServiceImpl.java
----------------------------------------------------------------------
diff --git a/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/ConnectorServiceImpl.java b/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/ConnectorServiceImpl.java
index d80caf9..6725bf9 100644
--- a/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/ConnectorServiceImpl.java
+++ b/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/ConnectorServiceImpl.java
@@ -112,8 +112,7 @@ public class ConnectorServiceImpl extends AbstractServiceImpl implements Connect
     }
 
     @Override
-    public void update(final Long key, final ConnInstanceTO connInstanceTO) {
-        connInstanceTO.setKey(key);
+    public void update(final ConnInstanceTO connInstanceTO) {
         logic.update(connInstanceTO);
     }
 

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/NotificationServiceImpl.java
----------------------------------------------------------------------
diff --git a/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/NotificationServiceImpl.java b/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/NotificationServiceImpl.java
index 017b0b3..dbd3461 100644
--- a/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/NotificationServiceImpl.java
+++ b/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/NotificationServiceImpl.java
@@ -44,8 +44,8 @@ public class NotificationServiceImpl extends AbstractServiceImpl implements Noti
     }
 
     @Override
-    public NotificationTO read(final Long notificationKey) {
-        return logic.read(notificationKey);
+    public NotificationTO read(final Long key) {
+        return logic.read(key);
     }
 
     @Override
@@ -54,13 +54,12 @@ public class NotificationServiceImpl extends AbstractServiceImpl implements Noti
     }
 
     @Override
-    public void update(final Long notificationKey, final NotificationTO notificationTO) {
-        notificationTO.setKey(notificationKey);
+    public void update(final NotificationTO notificationTO) {
         logic.update(notificationTO);
     }
 
     @Override
-    public void delete(final Long notificationKey) {
-        logic.delete(notificationKey);
+    public void delete(final Long key) {
+        logic.delete(key);
     }
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/PolicyServiceImpl.java
----------------------------------------------------------------------
diff --git a/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/PolicyServiceImpl.java b/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/PolicyServiceImpl.java
index a61e776..ecec019 100644
--- a/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/PolicyServiceImpl.java
+++ b/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/PolicyServiceImpl.java
@@ -48,8 +48,8 @@ public class PolicyServiceImpl extends AbstractServiceImpl implements PolicyServ
     }
 
     @Override
-    public void delete(final Long policyKey) {
-        logic.delete(policyKey);
+    public void delete(final Long key) {
+        logic.delete(key);
     }
 
     @Override
@@ -58,14 +58,12 @@ public class PolicyServiceImpl extends AbstractServiceImpl implements PolicyServ
     }
 
     @Override
-    public <T extends AbstractPolicyTO> T read(final Long policyKey) {
-        return logic.read(policyKey);
+    public <T extends AbstractPolicyTO> T read(final Long key) {
+        return logic.read(key);
     }
 
     @Override
-    public <T extends AbstractPolicyTO> void update(final Long policyKey, final T policyTO) {
-        policyTO.setKey(policyKey);
-
+    public <T extends AbstractPolicyTO> void update(final T policyTO) {
         switch (policyTO.getType()) {
             case ACCOUNT:
                 logic.update((AccountPolicyTO) policyTO);

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/RealmServiceImpl.java
----------------------------------------------------------------------
diff --git a/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/RealmServiceImpl.java b/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/RealmServiceImpl.java
index ecf372d..0485c1d 100644
--- a/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/RealmServiceImpl.java
+++ b/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/RealmServiceImpl.java
@@ -56,8 +56,8 @@ public class RealmServiceImpl extends AbstractServiceImpl implements RealmServic
     }
 
     @Override
-    public void update(final String fullPath, final RealmTO realmTO) {
-        realmTO.setFullPath(StringUtils.prependIfMissing(fullPath, SyncopeConstants.ROOT_REALM));
+    public void update(final RealmTO realmTO) {
+        realmTO.setFullPath(StringUtils.prependIfMissing(realmTO.getFullPath(), SyncopeConstants.ROOT_REALM));
         logic.update(realmTO);
     }
 

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/ReportServiceImpl.java
----------------------------------------------------------------------
diff --git a/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/ReportServiceImpl.java b/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/ReportServiceImpl.java
index 405e105..9fa3d99 100644
--- a/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/ReportServiceImpl.java
+++ b/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/ReportServiceImpl.java
@@ -57,8 +57,7 @@ public class ReportServiceImpl extends AbstractServiceImpl implements ReportServ
     }
 
     @Override
-    public void update(final Long reportKey, final ReportTO reportTO) {
-        reportTO.setKey(reportKey);
+    public void update(final ReportTO reportTO) {
         logic.update(reportTO);
     }
 
@@ -80,8 +79,8 @@ public class ReportServiceImpl extends AbstractServiceImpl implements ReportServ
     }
 
     @Override
-    public ReportTO read(final Long reportKey) {
-        return logic.read(reportKey);
+    public ReportTO read(final Long key) {
+        return logic.read(key);
     }
 
     @Override
@@ -108,13 +107,13 @@ public class ReportServiceImpl extends AbstractServiceImpl implements ReportServ
     }
 
     @Override
-    public ReportExecTO execute(final Long reportKey) {
-        return logic.execute(reportKey);
+    public ReportExecTO execute(final Long key) {
+        return logic.execute(key);
     }
 
     @Override
-    public void delete(final Long reportKey) {
-        logic.delete(reportKey);
+    public void delete(final Long key) {
+        logic.delete(key);
     }
 
     @Override
@@ -128,7 +127,7 @@ public class ReportServiceImpl extends AbstractServiceImpl implements ReportServ
     }
 
     @Override
-    public void actionJob(final Long reportKey, final JobAction action) {
-        logic.actionJob(reportKey, action);
+    public void actionJob(final Long key, final JobAction action) {
+        logic.actionJob(key, action);
     }
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/ResourceServiceImpl.java
----------------------------------------------------------------------
diff --git a/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/ResourceServiceImpl.java b/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/ResourceServiceImpl.java
index b6c3f50..ae7c426 100644
--- a/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/ResourceServiceImpl.java
+++ b/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/ResourceServiceImpl.java
@@ -67,8 +67,7 @@ public class ResourceServiceImpl extends AbstractServiceImpl implements Resource
     }
 
     @Override
-    public void update(final String key, final ResourceTO resourceTO) {
-        resourceTO.setKey(key);
+    public void update(final ResourceTO resourceTO) {
         logic.update(resourceTO);
     }
 

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/RoleServiceImpl.java
----------------------------------------------------------------------
diff --git a/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/RoleServiceImpl.java b/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/RoleServiceImpl.java
index d2efb3f..006767c 100644
--- a/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/RoleServiceImpl.java
+++ b/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/RoleServiceImpl.java
@@ -54,8 +54,7 @@ public class RoleServiceImpl extends AbstractServiceImpl implements RoleService
     }
 
     @Override
-    public void update(final Long roleKey, final RoleTO roleTO) {
-        roleTO.setKey(roleKey);
+    public void update(final RoleTO roleTO) {
         logic.update(roleTO);
     }
 

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/SchemaServiceImpl.java
----------------------------------------------------------------------
diff --git a/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/SchemaServiceImpl.java b/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/SchemaServiceImpl.java
index aa99255..e846a95 100644
--- a/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/SchemaServiceImpl.java
+++ b/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/SchemaServiceImpl.java
@@ -46,8 +46,8 @@ public class SchemaServiceImpl extends AbstractServiceImpl implements SchemaServ
     }
 
     @Override
-    public void delete(final SchemaType schemaType, final String schemaKey) {
-        logic.delete(schemaType, schemaKey);
+    public void delete(final SchemaType schemaType, final String key) {
+        logic.delete(schemaType, key);
     }
 
     @Override
@@ -56,15 +56,12 @@ public class SchemaServiceImpl extends AbstractServiceImpl implements SchemaServ
     }
 
     @Override
-    public <T extends AbstractSchemaTO> T read(final SchemaType schemaType, final String schemaKey) {
-        return logic.read(schemaType, schemaKey);
+    public <T extends AbstractSchemaTO> T read(final SchemaType schemaType, final String key) {
+        return logic.read(schemaType, key);
     }
 
     @Override
-    public <T extends AbstractSchemaTO> void update(
-            final SchemaType schemaType, final String schemaKey, final T schemaTO) {
-
-        schemaTO.setKey(schemaKey);
+    public <T extends AbstractSchemaTO> void update(final SchemaType schemaType, final T schemaTO) {
         logic.update(schemaType, schemaTO);
     }
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/SecurityQuestionServiceImpl.java
----------------------------------------------------------------------
diff --git a/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/SecurityQuestionServiceImpl.java b/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/SecurityQuestionServiceImpl.java
index b094adc..37cc4552 100644
--- a/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/SecurityQuestionServiceImpl.java
+++ b/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/SecurityQuestionServiceImpl.java
@@ -40,8 +40,8 @@ public class SecurityQuestionServiceImpl extends AbstractServiceImpl implements
     }
 
     @Override
-    public SecurityQuestionTO read(final Long securityQuestionId) {
-        return logic.read(securityQuestionId);
+    public SecurityQuestionTO read(final Long key) {
+        return logic.read(key);
     }
 
     @Override
@@ -55,14 +55,13 @@ public class SecurityQuestionServiceImpl extends AbstractServiceImpl implements
     }
 
     @Override
-    public void update(final Long securityQuestionId, final SecurityQuestionTO securityQuestionTO) {
-        securityQuestionTO.setKey(securityQuestionId);
+    public void update(final SecurityQuestionTO securityQuestionTO) {
         logic.update(securityQuestionTO);
     }
 
     @Override
-    public void delete(final Long securityQuestionId) {
-        logic.delete(securityQuestionId);
+    public void delete(final Long key) {
+        logic.delete(key);
     }
 
     @Override

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/TaskServiceImpl.java
----------------------------------------------------------------------
diff --git a/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/TaskServiceImpl.java b/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/TaskServiceImpl.java
index 29d4a0c..5fb19e2 100644
--- a/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/TaskServiceImpl.java
+++ b/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/TaskServiceImpl.java
@@ -64,8 +64,8 @@ public class TaskServiceImpl extends AbstractServiceImpl implements TaskService
     }
 
     @Override
-    public void delete(final Long taskKey) {
-        logic.delete(taskKey);
+    public void delete(final Long key) {
+        logic.delete(key);
     }
 
     @Override
@@ -74,8 +74,8 @@ public class TaskServiceImpl extends AbstractServiceImpl implements TaskService
     }
 
     @Override
-    public TaskExecTO execute(final Long taskKey, final boolean dryRun) {
-        return logic.execute(taskKey, dryRun);
+    public TaskExecTO execute(final Long key, final boolean dryRun) {
+        return logic.execute(key, dryRun);
     }
 
     @SuppressWarnings("unchecked")
@@ -93,8 +93,8 @@ public class TaskServiceImpl extends AbstractServiceImpl implements TaskService
     }
 
     @Override
-    public <T extends AbstractTaskTO> T read(final Long taskKey) {
-        return logic.read(taskKey);
+    public <T extends AbstractTaskTO> T read(final Long key) {
+        return logic.read(key);
     }
 
     @Override
@@ -110,8 +110,7 @@ public class TaskServiceImpl extends AbstractServiceImpl implements TaskService
     }
 
     @Override
-    public void update(final Long taskKey, final AbstractTaskTO taskTO) {
-        taskTO.setKey(taskKey);
+    public void update(final AbstractTaskTO taskTO) {
         if (taskTO instanceof SyncTaskTO) {
             logic.updateSync((SyncTaskTO) taskTO);
         } else if (taskTO instanceof SchedTaskTO) {
@@ -127,38 +126,38 @@ public class TaskServiceImpl extends AbstractServiceImpl implements TaskService
 
         switch (bulkAction.getOperation()) {
             case DELETE:
-                for (String taskKey : bulkAction.getTargets()) {
+                for (String key : bulkAction.getTargets()) {
                     try {
                         result.getResults().put(
-                                String.valueOf(logic.delete(Long.valueOf(taskKey)).getKey()),
+                                String.valueOf(logic.delete(Long.valueOf(key)).getKey()),
                                 BulkActionResult.Status.SUCCESS);
                     } catch (Exception e) {
-                        LOG.error("Error performing delete for task {}", taskKey, e);
-                        result.getResults().put(taskKey, BulkActionResult.Status.FAILURE);
+                        LOG.error("Error performing delete for task {}", key, e);
+                        result.getResults().put(key, BulkActionResult.Status.FAILURE);
                     }
                 }
                 break;
 
             case DRYRUN:
-                for (String taskKey : bulkAction.getTargets()) {
+                for (String key : bulkAction.getTargets()) {
                     try {
-                        logic.execute(Long.valueOf(taskKey), true);
-                        result.getResults().put(taskKey, BulkActionResult.Status.SUCCESS);
+                        logic.execute(Long.valueOf(key), true);
+                        result.getResults().put(key, BulkActionResult.Status.SUCCESS);
                     } catch (Exception e) {
-                        LOG.error("Error performing dryrun for task {}", taskKey, e);
-                        result.getResults().put(taskKey, BulkActionResult.Status.FAILURE);
+                        LOG.error("Error performing dryrun for task {}", key, e);
+                        result.getResults().put(key, BulkActionResult.Status.FAILURE);
                     }
                 }
                 break;
 
             case EXECUTE:
-                for (String taskKey : bulkAction.getTargets()) {
+                for (String key : bulkAction.getTargets()) {
                     try {
-                        logic.execute(Long.valueOf(taskKey), false);
-                        result.getResults().put(taskKey, BulkActionResult.Status.SUCCESS);
+                        logic.execute(Long.valueOf(key), false);
+                        result.getResults().put(key, BulkActionResult.Status.SUCCESS);
                     } catch (Exception e) {
-                        LOG.error("Error performing execute for task {}", taskKey, e);
-                        result.getResults().put(taskKey, BulkActionResult.Status.FAILURE);
+                        LOG.error("Error performing execute for task {}", key, e);
+                        result.getResults().put(key, BulkActionResult.Status.FAILURE);
                     }
                 }
                 break;
@@ -175,7 +174,7 @@ public class TaskServiceImpl extends AbstractServiceImpl implements TaskService
     }
 
     @Override
-    public void actionJob(final Long taskKey, final JobAction action) {
-        logic.actionJob(taskKey, action);
+    public void actionJob(final Long key, final JobAction action) {
+        logic.actionJob(key, action);
     }
 }

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/UserSelfServiceImpl.java
----------------------------------------------------------------------
diff --git a/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/UserSelfServiceImpl.java b/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/UserSelfServiceImpl.java
index 74d58d1..18013d2 100644
--- a/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/UserSelfServiceImpl.java
+++ b/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/UserSelfServiceImpl.java
@@ -63,8 +63,7 @@ public class UserSelfServiceImpl extends AbstractServiceImpl implements UserSelf
     }
 
     @Override
-    public Response update(final Long userKey, final UserMod userMod) {
-        userMod.setKey(userKey);
+    public Response update(final UserMod userMod) {
         UserTO updated = logic.updateSelf(userMod);
         return modificationResponse(updated);
     }

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/AbstractITCase.java
----------------------------------------------------------------------
diff --git a/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/AbstractITCase.java b/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/AbstractITCase.java
index efe1b16..77e4c50 100644
--- a/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/AbstractITCase.java
+++ b/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/AbstractITCase.java
@@ -292,7 +292,7 @@ public abstract class AbstractITCase {
     }
 
     protected UserTO updateUser(final UserMod userMod) {
-        return userService.update(userMod.getKey(), userMod).readEntity(UserTO.class);
+        return userService.update(userMod).readEntity(UserTO.class);
     }
 
     protected UserTO deleteUser(final Long key) {
@@ -342,7 +342,7 @@ public abstract class AbstractITCase {
     }
 
     protected AnyObjectTO updateAnyObject(final AnyObjectMod anyObjectMod) {
-        return anyObjectService.update(anyObjectMod.getKey(), anyObjectMod).readEntity(AnyObjectTO.class);
+        return anyObjectService.update(anyObjectMod).readEntity(AnyObjectTO.class);
     }
 
     protected AnyObjectTO deleteAnyObject(final Long key) {
@@ -361,7 +361,7 @@ public abstract class AbstractITCase {
     }
 
     protected GroupTO updateGroup(final GroupMod groupMod) {
-        return groupService.update(groupMod.getKey(), groupMod).readEntity(GroupTO.class);
+        return groupService.update(groupMod).readEntity(GroupTO.class);
     }
 
     protected GroupTO deleteGroup(final Long key) {

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/AnyTypeClassITCase.java
----------------------------------------------------------------------
diff --git a/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/AnyTypeClassITCase.java b/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/AnyTypeClassITCase.java
index 4dbb796..557f4b3 100644
--- a/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/AnyTypeClassITCase.java
+++ b/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/AnyTypeClassITCase.java
@@ -72,7 +72,7 @@ public class AnyTypeClassITCase extends AbstractITCase {
         assertTrue(newClass.getVirSchemas().isEmpty());
 
         newClass.getDerSchemas().add("cn");
-        anyTypeClassService.update(newClass.getKey(), newClass);
+        anyTypeClassService.update(newClass);
 
         newClass = anyTypeClassService.read(newClass.getKey());
         assertNotNull(newClass);

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/AnyTypeITCase.java
----------------------------------------------------------------------
diff --git a/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/AnyTypeITCase.java b/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/AnyTypeITCase.java
index 01da6f8..9fdc1e4 100644
--- a/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/AnyTypeITCase.java
+++ b/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/AnyTypeITCase.java
@@ -85,7 +85,7 @@ public class AnyTypeITCase extends AbstractITCase {
         assertTrue(newType.getClasses().contains("csv"));
 
         newType.getClasses().remove("generic membership");
-        anyTypeService.update(newType.getKey(), newType);
+        anyTypeService.update(newType);
 
         newType = anyTypeService.read(newType.getKey());
         assertNotNull(newType);
@@ -154,7 +154,7 @@ public class AnyTypeITCase extends AbstractITCase {
         assertNotNull(other);
 
         other.getClasses().add(newClass.getKey());
-        anyTypeService.update(other.getKey(), other);
+        anyTypeService.update(other);
 
         other = anyTypeService.read(other.getKey());
         assertNotNull(other);

http://git-wip-us.apache.org/repos/asf/syncope/blob/df60b3b4/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/AuthenticationITCase.java
----------------------------------------------------------------------
diff --git a/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/AuthenticationITCase.java b/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/AuthenticationITCase.java
index 5102e9b..a756401 100644
--- a/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/AuthenticationITCase.java
+++ b/fit/core-reference/src/test/java/org/apache/syncope/fit/core/reference/AuthenticationITCase.java
@@ -152,7 +152,7 @@ public class AuthenticationITCase extends AbstractITCase {
 
         // 5. update the schema create above (as user) - failure
         try {
-            schemaService2.update(SchemaType.PLAIN, schemaName, schemaTO);
+            schemaService2.update(SchemaType.PLAIN, schemaTO);
             fail("Schemaupdate as user should not work");
         } catch (AccessControlException e) {
             // CXF Service will throw this exception