(no commit message)
[utils] / support / general / src / main / java / org / wamblee / persistence / PersistentFactory.java
index dd0d1839756bb1bb21ecc7c4824e492e2491ba6b..2ad1526599adf13e29df8a6afe21b9671b02e948 100644 (file)
@@ -16,6 +16,7 @@
 package org.wamblee.persistence;
 
 import java.io.Serializable;
+import java.util.List;
 import java.util.Map;
 import java.util.concurrent.ConcurrentHashMap;
 
@@ -128,8 +129,17 @@ public class PersistentFactory {
     }
 
     private static EntityAccessor analyse(Class aClass) {
-        Accessor<Serializable> pk = AnnotationUtils.analyse(aClass, Id.class);
-        Accessor<Integer> version = AnnotationUtils.analyse(aClass, Version.class);
+        List<Accessor> pkAccessors = AnnotationUtils.analyse(aClass, Id.class);
+        List<Accessor> versionAccessors = AnnotationUtils.analyse(aClass,
+            Version.class);
+        Accessor<Serializable> pk = null;
+        if (pkAccessors.size() > 0) {
+            pk = pkAccessors.get(0);
+        }
+        Accessor<Integer> version = null;
+        if (versionAccessors.size() > 0) {
+            version = versionAccessors.get(0);
+        }
         if (pk != null || version != null) {
             return new EntityAccessor(pk, version);
         }