Browse Source

redis缓存修改、cms缓存修改

o2sword 5 years ago
parent
commit
eeab32c94b
88 changed files with 405 additions and 183 deletions
  1. 36 27
      o2server/x_base_core_project/src/main/java/com/x/base/core/project/cache/CacheRedisImpl.java
  2. 10 9
      o2server/x_base_core_project/src/main/java/com/x/base/core/project/cache/CacheRedisNotifyThread.java
  3. 2 1
      o2server/x_base_core_project/src/main/java/com/x/base/core/project/jaxrs/WoText.java
  4. 114 0
      o2server/x_base_core_project/src/main/java/com/x/base/core/project/tools/RedisUtil.java
  5. 2 1
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/CacheUtil.java
  6. 2 1
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/appdict/ActionUpdate.java
  7. 2 1
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/appinfo/ActionAppIconUpload.java
  8. 7 6
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/appinfo/ActionDelete.java
  9. 2 1
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/appinfo/ActionEraseDocumentWithAppInfo.java
  10. 2 1
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/appinfo/ActionListAllAppType.java
  11. 2 1
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/appinfo/ActionListAllManageableAppType.java
  12. 1 1
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/appinfo/ActionQueryGetControl.java
  13. 7 6
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/appinfo/ActionSave.java
  14. 2 1
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/appinfo/ActionSaveConfig.java
  15. 2 1
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/categoryinfo/ActionEraseDocumentWithCategory.java
  16. 3 2
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/categoryinfo/ActionSaveExtContent.java
  17. 4 3
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/categoryinfo/ActionSaveImportView.java
  18. 3 2
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/comment/ActionDelete.java
  19. 2 1
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/comment/ActionPersistCommend.java
  20. 2 1
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/comment/ActionPersistUnCommend.java
  21. 3 0
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/data/ActionCreateWithDocument.java
  22. 2 0
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/data/ActionCreateWithDocumentPath0.java
  23. 2 0
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/data/ActionCreateWithDocumentPath1.java
  24. 2 0
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/data/ActionCreateWithDocumentPath2.java
  25. 2 0
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/data/ActionCreateWithDocumentPath3.java
  26. 2 0
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/data/ActionCreateWithDocumentPath4.java
  27. 2 0
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/data/ActionCreateWithDocumentPath5.java
  28. 2 0
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/data/ActionCreateWithDocumentPath6.java
  29. 2 0
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/data/ActionCreateWithDocumentPath7.java
  30. 3 2
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/data/ActionDeleteWithDocument.java
  31. 3 2
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/data/ActionDeleteWithDocumentPath0.java
  32. 3 2
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/data/ActionDeleteWithDocumentPath1.java
  33. 3 2
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/data/ActionDeleteWithDocumentPath2.java
  34. 3 2
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/data/ActionDeleteWithDocumentPath3.java
  35. 3 2
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/data/ActionDeleteWithDocumentPath4.java
  36. 3 2
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/data/ActionDeleteWithDocumentPath5.java
  37. 3 2
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/data/ActionDeleteWithDocumentPath6.java
  38. 3 2
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/data/ActionDeleteWithDocumentPath7.java
  39. 3 2
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/data/ActionUpdateWithDocument.java
  40. 3 2
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/data/ActionUpdateWithDocumentPath0.java
  41. 3 2
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/data/ActionUpdateWithDocumentPath1.java
  42. 3 2
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/data/ActionUpdateWithDocumentPath2.java
  43. 3 2
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/data/ActionUpdateWithDocumentPath3.java
  44. 3 2
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/data/ActionUpdateWithDocumentPath4.java
  45. 3 2
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/data/ActionUpdateWithDocumentPath5.java
  46. 3 2
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/data/ActionUpdateWithDocumentPath6.java
  47. 3 2
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/data/ActionUpdateWithDocumentPath7.java
  48. 2 1
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/document/ActionPersistArchive.java
  49. 5 3
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/document/ActionPersistBatchModifyData.java
  50. 2 1
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/document/ActionPersistChangeCategory.java
  51. 2 1
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/document/ActionPersistCommend.java
  52. 5 4
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/document/ActionPersistDeleteDocument.java
  53. 2 1
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/document/ActionPersistDraftDocument.java
  54. 2 1
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/document/ActionPersistImportDataExcel.java
  55. 5 4
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/document/ActionPersistPublishByWorkFlow.java
  56. 3 2
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/document/ActionPersistPublishCancel.java
  57. 2 1
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/document/ActionPersistSaveDocument.java
  58. 2 1
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/document/ActionPersistTopDocument.java
  59. 4 2
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/document/ActionPersistUnCommend.java
  60. 2 1
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/document/ActionPersistUnTopDocument.java
  61. 2 1
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/document/ActionQueryCountWithFilter.java
  62. 1 1
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/document/ActionQueryGetControl.java
  63. 2 1
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/document/ActionQueryGetFirstPicture.java
  64. 2 1
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/document/ActionQueryListAllPictures.java
  65. 2 1
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/document/ActionQueryListDocumentFields.java
  66. 2 1
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/document/ActionQueryListUnReadDocIds.java
  67. 2 1
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/document/WrapOutDocumentList.java
  68. 2 1
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/file/ActionCopy.java
  69. 2 1
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/file/ActionCreate.java
  70. 2 1
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/file/ActionDelete.java
  71. 2 1
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/file/ActionEdit.java
  72. 2 1
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/file/ActionUpload.java
  73. 3 2
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/fileinfo/ActionFileEdit.java
  74. 3 2
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/fileinfo/ActionFileUpdateCallback.java
  75. 4 4
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/fileinfo/ActionFileUpload.java
  76. 6 5
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/form/ActionDelete.java
  77. 5 4
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/form/ActionSave.java
  78. 8 7
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/input/ActionCover.java
  79. 8 7
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/input/ActionCreate.java
  80. 2 1
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/script/ActionCreate.java
  81. 2 1
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/script/ActionDelete.java
  82. 2 1
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/script/ActionUpdate.java
  83. 5 4
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/view/ActionDelete.java
  84. 4 3
      o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/view/ActionSave.java
  85. 2 1
      o2server/x_portal_assemble_designer/src/main/java/com/x/portal/assemble/designer/jaxrs/output/BaseAction.java
  86. 4 1
      o2server/x_program_center/src/main/java/com/x/program/center/jaxrs/module/BaseAction.java
  87. 4 1
      o2server/x_program_center/src/main/java/com/x/program/center/jaxrs/output/BaseAction.java
  88. 2 1
      o2server/x_query_assemble_designer/src/main/java/com/x/query/assemble/designer/jaxrs/output/BaseAction.java

+ 36 - 27
o2server/x_base_core_project/src/main/java/com/x/base/core/project/cache/CacheRedisImpl.java

@@ -4,16 +4,15 @@ import java.io.ByteArrayInputStream;
 import java.io.ByteArrayOutputStream;
 import java.io.ObjectInputStream;
 import java.io.ObjectOutputStream;
-import java.io.Serializable;
 import java.nio.charset.StandardCharsets;
 import java.util.List;
 import java.util.Optional;
 import java.util.concurrent.LinkedBlockingQueue;
 
+import com.x.base.core.project.tools.RedisUtil;
 import org.apache.commons.lang3.StringUtils;
 
 import com.x.base.core.project.config.Cache.Redis;
-import com.x.base.core.project.gson.XGsonBuilder;
 import com.x.base.core.project.config.Config;
 import com.x.base.core.project.jaxrs.WrapClearCacheRequest;
 
@@ -24,8 +23,6 @@ public class CacheRedisImpl implements Cache {
 
 	private LinkedBlockingQueue<WrapClearCacheRequest> notifyQueue;
 
-	private Jedis jedis;
-
 	private String application;
 
 	private SetParams setParams;
@@ -33,52 +30,52 @@ public class CacheRedisImpl implements Cache {
 	private CacheRedisNotifyThread notifyThread;
 
 	public CacheRedisImpl(String application) throws Exception {
-		Redis redis = Config.cache().getRedis();
-		this.jedis = new Jedis(redis.getHost(), redis.getPort(), redis.getConnectionTimeout(), redis.getSocketTimeout(),
-				redis.getSslEnable());
-		if (StringUtils.isNotBlank(redis.getUser()) && StringUtils.isNotBlank(redis.getPassword())) {
-			this.jedis.auth(redis.getUser(), redis.getPassword());
-		} else if (StringUtils.isNotBlank(redis.getPassword())) {
-			this.jedis.auth(redis.getPassword());
-		}
-		jedis.select(redis.getIndex());
 		this.notifyQueue = new LinkedBlockingQueue<>();
 		this.application = application;
 		this.setParams = new SetParams();
 		this.setParams.px(1000 * 60 * 60);
-		this.notifyThread = new CacheRedisNotifyThread(jedis, notifyQueue);
+		this.notifyThread = new CacheRedisNotifyThread(notifyQueue);
 		this.notifyThread.start();
 	}
 
 	@Override
 	public void put(CacheCategory category, CacheKey key, Object o) throws Exception {
+
 		if (null != o) {
-			try (ByteArrayOutputStream baos = new ByteArrayOutputStream();
-					ObjectOutputStream oos = new ObjectOutputStream(baos)) {
-				oos.writeObject(o);
-				byte[] bytes = baos.toByteArray();
-				jedis.set(concrete(category, key).getBytes(StandardCharsets.UTF_8), bytes, setParams);
+			Jedis jedis = RedisUtil.getJedis();
+			if(jedis != null) {
+				try (ByteArrayOutputStream baos = new ByteArrayOutputStream();
+					 ObjectOutputStream oos = new ObjectOutputStream(baos)) {
+					oos.writeObject(o);
+					byte[] bytes = baos.toByteArray();
+					jedis.set(concrete(category, key).getBytes(StandardCharsets.UTF_8), bytes, setParams);
+				}
+				RedisUtil.closeJedis(jedis);
 			}
 		}
+
 	}
 
 	@Override
 	public Optional<Object> get(CacheCategory category, CacheKey key) throws Exception {
-		byte[] bytes = jedis.get(concrete(category, key).getBytes(StandardCharsets.UTF_8));
-		if ((null != bytes) && bytes.length > 0) {
-			try (ByteArrayInputStream bais = new ByteArrayInputStream(bytes);
-					ObjectInputStream ois = new ObjectInputStream(bais)) {
-				return Optional.ofNullable(ois.readObject());
+		Jedis jedis = RedisUtil.getJedis();
+		if(jedis != null) {
+			byte[] bytes = jedis.get(concrete(category, key).getBytes(StandardCharsets.UTF_8));
+			RedisUtil.closeJedis(jedis);
+			if ((null != bytes) && bytes.length > 0) {
+				try (ByteArrayInputStream bais = new ByteArrayInputStream(bytes);
+					 ObjectInputStream ois = new ObjectInputStream(bais)) {
+					return Optional.ofNullable(ois.readObject());
+				}
 			}
-		} else {
-			return Optional.empty();
 		}
+		return Optional.empty();
 	}
 
 	@Override
 	public void shutdown() {
 		this.notifyThread.interrupt();
-		this.jedis.close();
+		RedisUtil.closePool();
 	}
 
 	@Override
@@ -94,6 +91,18 @@ public class CacheRedisImpl implements Cache {
 		this.notifyQueue.put(wi);
 	}
 
+	/*private Jedis getJedis() throws Exception{
+		Redis redis = Config.cache().getRedis();
+		Jedis jedis = new Jedis(redis.getHost(), redis.getPort(), redis.getConnectionTimeout(), redis.getSocketTimeout(), redis.getSslEnable());
+		if (StringUtils.isNotBlank(redis.getUser()) && StringUtils.isNotBlank(redis.getPassword())) {
+			jedis.auth(redis.getUser(), redis.getPassword());
+		} else if (StringUtils.isNotBlank(redis.getPassword())) {
+			jedis.auth(redis.getPassword());
+		}
+		jedis.select(redis.getIndex());
+		return jedis;
+	}*/
+
 	private String concrete(CacheCategory category, CacheKey key) {
 		return this.application + "&" + category.toString() + "&" + key.toString();
 	}

+ 10 - 9
o2server/x_base_core_project/src/main/java/com/x/base/core/project/cache/CacheRedisNotifyThread.java

@@ -5,20 +5,17 @@ import java.util.concurrent.LinkedBlockingQueue;
 
 import com.x.base.core.project.cache.Cache.CacheCategory;
 import com.x.base.core.project.cache.Cache.CacheKey;
-import com.x.base.core.project.gson.XGsonBuilder;
 import com.x.base.core.project.jaxrs.WrapClearCacheRequest;
 
+import com.x.base.core.project.tools.RedisUtil;
 import redis.clients.jedis.Jedis;
 
 public class CacheRedisNotifyThread extends Thread {
 
-	public CacheRedisNotifyThread(Jedis jedis, LinkedBlockingQueue<WrapClearCacheRequest> queue) {
-		this.jedis = jedis;
+	public CacheRedisNotifyThread(LinkedBlockingQueue<WrapClearCacheRequest> queue) {
 		this.queue = queue;
 	}
 
-	private Jedis jedis;
-
 	private LinkedBlockingQueue<WrapClearCacheRequest> queue;
 
 	@Override
@@ -31,10 +28,14 @@ public class CacheRedisNotifyThread extends Thread {
 //						+ "([\\s\\S]*)$))";
 				String match = "*&*" + new CacheCategory(wi.getClassName()).toString() + "*&*"
 						+ new CacheKey(wi.getKeys()).toString() + "*";
-				Set<String> keys = jedis.keys(match);
-				if (!keys.isEmpty()) {
-					jedis.del(keys.toArray(new String[] {}));
-					jedis.flushDB();
+				Jedis jedis = RedisUtil.getJedis();
+				if(jedis != null) {
+					Set<String> keys = jedis.keys(match);
+					if (!keys.isEmpty()) {
+						jedis.del(keys.toArray(new String[]{}));
+						jedis.flushDB();
+					}
+					RedisUtil.closeJedis(jedis);
 				}
 			} catch (InterruptedException ie) {
 				break;

+ 2 - 1
o2server/x_base_core_project/src/main/java/com/x/base/core/project/jaxrs/WoText.java

@@ -1,8 +1,9 @@
 package com.x.base.core.project.jaxrs;
 
 import com.x.base.core.project.annotation.FieldDescribe;
+import com.x.base.core.project.gson.GsonPropertyObject;
 
-public class WoText {
+public class WoText  extends GsonPropertyObject {
 
 	public WoText() {
 	}

+ 114 - 0
o2server/x_base_core_project/src/main/java/com/x/base/core/project/tools/RedisUtil.java

@@ -0,0 +1,114 @@
+package com.x.base.core.project.tools;
+
+import java.util.concurrent.locks.ReentrantLock;
+
+import com.x.base.core.project.config.Cache.Redis;
+import com.x.base.core.project.config.Config;
+
+import com.x.base.core.project.logger.Logger;
+import com.x.base.core.project.logger.LoggerFactory;
+import org.apache.commons.lang3.StringUtils;
+import redis.clients.jedis.Jedis;
+import redis.clients.jedis.JedisPool;
+import redis.clients.jedis.JedisPoolConfig;
+
+public class RedisUtil {
+    private static final Logger log = LoggerFactory.getLogger(RedisUtil.class);
+    private static ReentrantLock lockPool = new ReentrantLock();
+
+    private static RedisUtil instance;
+
+    private static JedisPool jedisPool;
+
+    private static ReentrantLock lock = new ReentrantLock();
+
+    private RedisUtil() {
+    }
+
+    public static RedisUtil getInstance() {
+        if (instance == null) {
+            lock.lock();
+            if (instance == null) {
+                instance = new RedisUtil();
+            }
+            lock.unlock();
+        }
+        return instance;
+    }
+
+    /**
+     * 初始化JedisPool
+     */
+    private static void initJedisPool() throws Exception{
+        JedisPoolConfig jedisPoolConfig = new JedisPoolConfig();
+        //设置最大实例总数
+        jedisPoolConfig.setMaxTotal(300);
+        //控制一个pool最多有多少个状态为idle(空闲的)的jedis实例。
+        jedisPoolConfig.setMaxIdle(5);
+        jedisPoolConfig.setMinIdle(5);
+        //表示当borrow(引入)一个jedis实例时,最大的等待时间,如果超过等待时间,则直接抛出JedisConnectionException;
+        jedisPoolConfig.setMaxWaitMillis(3 * 1000);
+        // 在borrow一个jedis实例时,是否提前进行alidate操作;如果为true,则得到的jedis实例均是可用的;
+        jedisPoolConfig.setTestOnBorrow(true);
+        // 在还会给pool时,是否提前进行validate操作
+        jedisPoolConfig.setTestOnReturn(true);
+        jedisPoolConfig.setTestWhileIdle(true);
+        jedisPoolConfig.setMinEvictableIdleTimeMillis(500);
+        jedisPoolConfig.setSoftMinEvictableIdleTimeMillis(1000);
+        jedisPoolConfig.setTimeBetweenEvictionRunsMillis(1000);
+        jedisPoolConfig.setNumTestsPerEvictionRun(100);
+        Redis redis = Config.cache().getRedis();
+        String user = redis.getUser();
+        String password = redis.getPassword();
+        if(StringUtils.isBlank(redis.getUser())){
+            user = null;
+        }
+        if(StringUtils.isBlank(redis.getPassword())){
+            password = null;
+        }
+        jedisPool = new JedisPool(jedisPoolConfig, redis.getHost(), redis.getPort(), redis.getSocketTimeout(), user, password, redis.getIndex(), redis.getSslEnable());
+    }
+
+
+    /**
+     * 通用方法:从JedisPool中获取Jedis
+     *
+     * @return
+     */
+    public static Jedis getJedis() {
+        Jedis resource = null;
+        lockPool.lock();
+        try {
+            if (jedisPool == null) {
+                initJedisPool();
+                log.debug("JedisPool init success!");
+                resource = jedisPool.getResource();
+            }
+        } catch (Exception e) {
+            log.warn("JedisPool init error: {}", e.getMessage());
+        }
+        lockPool.unlock();
+        return resource;
+    }
+
+    /**
+     * 通用方法:释放Jedis
+     *
+     * @param jedis
+     */
+    public static void closeJedis(Jedis jedis) {
+        try {
+            if(jedis!=null) {
+                jedis.close();
+            }
+        } catch (Exception e) {
+        }
+    }
+
+    public static void closePool() {
+        jedisPool.destroy();
+    }
+
+}
+
+

+ 2 - 1
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/CacheUtil.java

@@ -2,6 +2,7 @@ package com.x.cms.assemble.control;
 
 import com.x.base.core.entity.JpaObject;
 import com.x.base.core.project.cache.ApplicationCache;
+import com.x.base.core.project.cache.CacheManager;
 
 /**
  * 缓存管理帮助类
@@ -10,7 +11,7 @@ import com.x.base.core.project.cache.ApplicationCache;
 public class CacheUtil {
 	
 	public static <T extends JpaObject> void notify( Class<T> clz ) throws Exception {
-		ApplicationCache.notify( clz );
+		CacheManager.notify( clz );
 	}
 	
 }

+ 2 - 1
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/appdict/ActionUpdate.java

@@ -1,5 +1,6 @@
 package com.x.cms.assemble.control.jaxrs.appdict;
 
+import com.x.base.core.project.cache.CacheManager;
 import org.apache.commons.lang3.StringUtils;
 
 import com.x.base.core.container.EntityManagerContainer;
@@ -36,7 +37,7 @@ class ActionUpdate extends BaseAction {
 			this.update(business, dict, wrapIn.getData());
 			emc.commit();
 			/* 这个Action是更新AppDict需要刷新缓存 */
-			ApplicationCache.notify(AppDict.class);
+			CacheManager.notify(AppDict.class);
 			WrapOutId wrap = new WrapOutId(dict.getId());
 			result.setData(wrap);
 			return result;

+ 2 - 1
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/appinfo/ActionAppIconUpload.java

@@ -2,6 +2,7 @@ package com.x.cms.assemble.control.jaxrs.appinfo;
 
 import com.x.base.core.project.annotation.AuditLog;
 import com.x.base.core.project.cache.ApplicationCache;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.http.WrapOutId;
@@ -109,7 +110,7 @@ public class ActionAppIconUpload extends BaseAction {
 		if( check ){
 			try {
 				appInfoServiceAdv.saveAppInfoIcon( appId, base64, iconMainColor );
-				ApplicationCache.notify( AppInfo.class );
+				CacheManager.notify( AppInfo.class );
 			} catch (Exception e) {
 				check = false;
 				result.error( e );

+ 7 - 6
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/appinfo/ActionDelete.java

@@ -2,6 +2,7 @@ package com.x.cms.assemble.control.jaxrs.appinfo;
 
 import com.x.base.core.project.annotation.AuditLog;
 import com.x.base.core.project.cache.ApplicationCache;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.jaxrs.WoId;
@@ -76,12 +77,12 @@ public class ActionDelete extends BaseAction {
 						CmsBatchOperationProcessService.OPT_TYPE_DELETE, id, id, "删除栏目:ID=" + id );
 				
 				//更新缓存
-				ApplicationCache.notify( AppInfo.class );
-				ApplicationCache.notify( AppDict.class );
-				ApplicationCache.notify( AppDictItem.class );
-				ApplicationCache.notify( View.class );
-				ApplicationCache.notify( ViewCategory.class );
-				ApplicationCache.notify( ViewFieldConfig.class );
+				CacheManager.notify( AppInfo.class );
+				CacheManager.notify( AppDict.class );
+				CacheManager.notify( AppDictItem.class );
+				CacheManager.notify( View.class );
+				CacheManager.notify( ViewCategory.class );
+				CacheManager.notify( ViewFieldConfig.class );
 				
 				Wo wo = new Wo();
 				wo.setId( appInfo.getId() );

+ 2 - 1
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/appinfo/ActionEraseDocumentWithAppInfo.java

@@ -5,6 +5,7 @@ import com.x.base.core.container.factory.EntityManagerContainerFactory;
 import com.x.base.core.entity.annotation.CheckRemoveType;
 import com.x.base.core.project.annotation.AuditLog;
 import com.x.base.core.project.cache.ApplicationCache;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.config.StorageMapping;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
@@ -138,7 +139,7 @@ public class ActionEraseDocumentWithAppInfo extends BaseAction {
 									e.printStackTrace();
 								}
 							}
-							ApplicationCache.notify( Document.class );
+							CacheManager.notify( Document.class );
 						}
 
 						count = documentServiceAdv.countByAppId( id );

+ 2 - 1
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/appinfo/ActionListAllAppType.java

@@ -10,6 +10,7 @@ import com.x.base.core.project.annotation.FieldDescribe;
 import com.x.base.core.project.cache.ApplicationCache;
 import com.x.base.core.project.cache.Cache;
 import com.x.base.core.project.cache.CacheManager;
+import com.x.base.core.project.gson.GsonPropertyObject;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.logger.Logger;
@@ -98,7 +99,7 @@ public class ActionListAllAppType extends BaseAction {
 		return result;
 	}
 	
-	public static class Wo {
+	public static class Wo extends GsonPropertyObject {
 		@FieldDescribe("栏目类别名称")
 		private String appType;
 		

+ 2 - 1
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/appinfo/ActionListAllManageableAppType.java

@@ -10,6 +10,7 @@ import com.x.base.core.project.annotation.FieldDescribe;
 import com.x.base.core.project.cache.ApplicationCache;
 import com.x.base.core.project.cache.Cache;
 import com.x.base.core.project.cache.CacheManager;
+import com.x.base.core.project.gson.GsonPropertyObject;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.logger.Logger;
@@ -100,7 +101,7 @@ public class ActionListAllManageableAppType extends BaseAction {
 		return result;
 	}
 	
-	public static class Wo {
+	public static class Wo extends GsonPropertyObject {
 		@FieldDescribe("栏目类别名称")
 		private String appType;
 		

+ 1 - 1
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/appinfo/ActionQueryGetControl.java

@@ -151,7 +151,7 @@ public class ActionQueryGetControl extends BaseAction {
 	}
 	
 
-	public static class Wo {
+	public static class Wo extends GsonPropertyObject {
 
 		public static WrapCopier<Document, Wo> copier = WrapCopierFactory.wo(Document.class, Wo.class, null, JpaObject.FieldsInvisible);
 

+ 7 - 6
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/appinfo/ActionSave.java

@@ -6,6 +6,7 @@ import com.x.base.core.project.annotation.FieldDescribe;
 import com.x.base.core.project.bean.WrapCopier;
 import com.x.base.core.project.bean.WrapCopierFactory;
 import com.x.base.core.project.cache.ApplicationCache;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.jaxrs.WoId;
@@ -173,12 +174,12 @@ public class ActionSave extends BaseAction {
 				}
 				
 				// 更新缓存
-				ApplicationCache.notify(AppInfo.class);
-				ApplicationCache.notify(AppDict.class);
-				ApplicationCache.notify(AppDictItem.class);
-				ApplicationCache.notify(View.class);
-				ApplicationCache.notify(ViewCategory.class);
-				ApplicationCache.notify(ViewFieldConfig.class);
+				CacheManager.notify(AppInfo.class);
+				CacheManager.notify(AppDict.class);
+				CacheManager.notify(AppDictItem.class);
+				CacheManager.notify(View.class);
+				CacheManager.notify(ViewCategory.class);
+				CacheManager.notify(ViewFieldConfig.class);
 			} catch (Exception e) {
 				check = false;
 				Exception exception = new ExceptionAppInfoProcess(e, "应用栏目信息保存时发生异常。");

+ 2 - 1
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/appinfo/ActionSaveConfig.java

@@ -3,6 +3,7 @@ package com.x.cms.assemble.control.jaxrs.appinfo;
 import com.google.gson.JsonElement;
 import com.x.base.core.project.annotation.AuditLog;
 import com.x.base.core.project.cache.ApplicationCache;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.jaxrs.WoId;
@@ -44,7 +45,7 @@ public class ActionSaveConfig extends BaseAction {
 				result.setData( wo );
 				
 				// 更新缓存
-				ApplicationCache.notify( AppInfo.class );
+				CacheManager.notify( AppInfo.class );
 
 			} catch (Exception e) {
 				check = false;

+ 2 - 1
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/categoryinfo/ActionEraseDocumentWithCategory.java

@@ -5,6 +5,7 @@ import com.x.base.core.container.factory.EntityManagerContainerFactory;
 import com.x.base.core.entity.annotation.CheckRemoveType;
 import com.x.base.core.project.annotation.AuditLog;
 import com.x.base.core.project.cache.ApplicationCache;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.config.StorageMapping;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
@@ -115,7 +116,7 @@ public class ActionEraseDocumentWithCategory extends BaseAction {
 								}
 							}
 							emc.commit();
-							ApplicationCache.notify( Document.class );
+							CacheManager.notify( Document.class );
 						}
 						count = documentServiceAdv.countByCategoryId( id );
 						logger.info(">>>>已经删除"+queryMaxCount+"个文档,还剩下"+count+"个文档需要删除。");

+ 3 - 2
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/categoryinfo/ActionSaveExtContent.java

@@ -4,6 +4,7 @@ import com.google.gson.JsonElement;
 import com.x.base.core.entity.JpaObject;
 import com.x.base.core.project.annotation.AuditLog;
 import com.x.base.core.project.cache.ApplicationCache;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.jaxrs.WoId;
@@ -68,8 +69,8 @@ public class ActionSaveExtContent extends BaseAction {
 		
 		if( check ){
 			categoryExt = categoryInfoServiceAdv.saveExtContent( wi.getId(), wi.getContent(), effectivePerson );
-			
-			ApplicationCache.notify(CategoryInfo.class);
+
+			CacheManager.notify(CategoryInfo.class);
 
 			new LogService().log(null, effectivePerson.getDistinguishedName(),
 					categoryInfo.getAppName() + "-" + categoryInfo.getCategoryName(), categoryInfo.getId(), "", "",

+ 4 - 3
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/categoryinfo/ActionSaveImportView.java

@@ -4,6 +4,7 @@ import com.google.gson.JsonElement;
 import com.x.base.core.project.annotation.AuditLog;
 import com.x.base.core.project.annotation.FieldDescribe;
 import com.x.base.core.project.cache.ApplicationCache;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.jaxrs.WoId;
@@ -97,9 +98,9 @@ public class ActionSaveImportView extends BaseAction {
 		if( check ){
 			try {
 				categoryInfoServiceAdv.bindImportViewId( categoryInfo, view, wi.getViewAppId() );
-				
-				ApplicationCache.notify(AppInfo.class);
-				ApplicationCache.notify(CategoryInfo.class);
+
+				CacheManager.notify(AppInfo.class);
+				CacheManager.notify(CategoryInfo.class);
 				
 				Wo wo = new Wo();
 				wo.setId(categoryId);

+ 3 - 2
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/comment/ActionDelete.java

@@ -2,6 +2,7 @@ package com.x.cms.assemble.control.jaxrs.comment;
 
 import javax.servlet.http.HttpServletRequest;
 
+import com.x.base.core.project.cache.CacheManager;
 import org.apache.commons.lang3.StringUtils;
 
 import com.x.base.core.project.cache.ApplicationCache;
@@ -48,8 +49,8 @@ public class ActionDelete extends BaseAction {
 			try {
 				documentCommentInfoPersistService.delete(flag, effectivePerson );				
 				// 更新缓存
-				ApplicationCache.notify( Document.class );
-				ApplicationCache.notify( DocumentCommentInfo.class );
+				CacheManager.notify( Document.class );
+				CacheManager.notify( DocumentCommentInfo.class );
 				
 				Wo wo = new Wo();
 				wo.setId( documentCommentInfo.getId() );

+ 2 - 1
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/comment/ActionPersistCommend.java

@@ -3,6 +3,7 @@ package com.x.cms.assemble.control.jaxrs.comment;
 import javax.servlet.http.HttpServletRequest;
 
 import com.x.base.core.project.cache.ApplicationCache;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.jaxrs.WoId;
@@ -52,7 +53,7 @@ public class ActionPersistCommend extends BaseAction {
 			}
 		}
 
-		ApplicationCache.notify( Document.class );
+		CacheManager.notify( Document.class );
 
 		return result;
 	}

+ 2 - 1
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/comment/ActionPersistUnCommend.java

@@ -5,6 +5,7 @@ import java.util.List;
 import javax.servlet.http.HttpServletRequest;
 
 import com.x.base.core.project.cache.ApplicationCache;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.logger.Logger;
@@ -33,7 +34,7 @@ public class ActionPersistUnCommend extends BaseAction {
 			}
 		}
 
-		ApplicationCache.notify( Document.class );		
+		CacheManager.notify( Document.class );
 		
 		return result;
 	}

+ 3 - 0
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/data/ActionCreateWithDocument.java

@@ -3,6 +3,7 @@ package com.x.cms.assemble.control.jaxrs.data;
 import com.google.gson.JsonElement;
 import com.x.base.core.container.EntityManagerContainer;
 import com.x.base.core.container.factory.EntityManagerContainerFactory;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.jaxrs.WoId;
@@ -30,6 +31,8 @@ class ActionCreateWithDocument extends BaseAction {
 			Wo wo = new Wo();
 			wo.setId(document.getId());
 			result.setData(wo);
+
+			CacheManager.notify( Document.class );
 			return result;
 		}
 	}

+ 2 - 0
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/data/ActionCreateWithDocumentPath0.java

@@ -3,6 +3,7 @@ package com.x.cms.assemble.control.jaxrs.data;
 import com.google.gson.JsonElement;
 import com.x.base.core.container.EntityManagerContainer;
 import com.x.base.core.container.factory.EntityManagerContainerFactory;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.jaxrs.WoId;
@@ -25,6 +26,7 @@ class ActionCreateWithDocumentPath0 extends BaseAction {
 			Wo wo = new Wo();
 			wo.setId(document.getId());
 			result.setData(wo);
+			CacheManager.notify( Document.class );
 			return result;
 		}
 	}

+ 2 - 0
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/data/ActionCreateWithDocumentPath1.java

@@ -3,6 +3,7 @@ package com.x.cms.assemble.control.jaxrs.data;
 import com.google.gson.JsonElement;
 import com.x.base.core.container.EntityManagerContainer;
 import com.x.base.core.container.factory.EntityManagerContainerFactory;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.jaxrs.WoId;
@@ -25,6 +26,7 @@ class ActionCreateWithDocumentPath1 extends BaseAction {
 			Wo wo = new Wo();
 			wo.setId(document.getId());
 			result.setData(wo);
+			CacheManager.notify( Document.class );
 			return result;
 		}
 	}

+ 2 - 0
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/data/ActionCreateWithDocumentPath2.java

@@ -3,6 +3,7 @@ package com.x.cms.assemble.control.jaxrs.data;
 import com.google.gson.JsonElement;
 import com.x.base.core.container.EntityManagerContainer;
 import com.x.base.core.container.factory.EntityManagerContainerFactory;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.jaxrs.WoId;
@@ -25,6 +26,7 @@ class ActionCreateWithDocumentPath2 extends BaseAction {
 			Wo wo = new Wo();
 			wo.setId(document.getId());
 			result.setData(wo);
+			CacheManager.notify( Document.class );
 			return result;
 		}
 	}

+ 2 - 0
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/data/ActionCreateWithDocumentPath3.java

@@ -3,6 +3,7 @@ package com.x.cms.assemble.control.jaxrs.data;
 import com.google.gson.JsonElement;
 import com.x.base.core.container.EntityManagerContainer;
 import com.x.base.core.container.factory.EntityManagerContainerFactory;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.jaxrs.WoId;
@@ -25,6 +26,7 @@ class ActionCreateWithDocumentPath3 extends BaseAction {
 			Wo wo = new Wo();
 			wo.setId(document.getId());
 			result.setData(wo);
+			CacheManager.notify( Document.class );
 			return result;
 		}
 	}

+ 2 - 0
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/data/ActionCreateWithDocumentPath4.java

@@ -3,6 +3,7 @@ package com.x.cms.assemble.control.jaxrs.data;
 import com.google.gson.JsonElement;
 import com.x.base.core.container.EntityManagerContainer;
 import com.x.base.core.container.factory.EntityManagerContainerFactory;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.jaxrs.WoId;
@@ -25,6 +26,7 @@ class ActionCreateWithDocumentPath4 extends BaseAction {
 			Wo wo = new Wo();
 			wo.setId(document.getId());
 			result.setData(wo);
+			CacheManager.notify( Document.class );
 			return result;
 		}
 	}

+ 2 - 0
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/data/ActionCreateWithDocumentPath5.java

@@ -3,6 +3,7 @@ package com.x.cms.assemble.control.jaxrs.data;
 import com.google.gson.JsonElement;
 import com.x.base.core.container.EntityManagerContainer;
 import com.x.base.core.container.factory.EntityManagerContainerFactory;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.jaxrs.WoId;
@@ -25,6 +26,7 @@ class ActionCreateWithDocumentPath5 extends BaseAction {
 			Wo wo = new Wo();
 			wo.setId(document.getId());
 			result.setData(wo);
+			CacheManager.notify( Document.class );
 			return result;
 		}
 	}

+ 2 - 0
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/data/ActionCreateWithDocumentPath6.java

@@ -3,6 +3,7 @@ package com.x.cms.assemble.control.jaxrs.data;
 import com.google.gson.JsonElement;
 import com.x.base.core.container.EntityManagerContainer;
 import com.x.base.core.container.factory.EntityManagerContainerFactory;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.jaxrs.WoId;
@@ -26,6 +27,7 @@ class ActionCreateWithDocumentPath6 extends BaseAction {
 			Wo wo = new Wo();
 			wo.setId(document.getId());
 			result.setData(wo);
+			CacheManager.notify( Document.class );
 			return result;
 		}
 	}

+ 2 - 0
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/data/ActionCreateWithDocumentPath7.java

@@ -3,6 +3,7 @@ package com.x.cms.assemble.control.jaxrs.data;
 import com.google.gson.JsonElement;
 import com.x.base.core.container.EntityManagerContainer;
 import com.x.base.core.container.factory.EntityManagerContainerFactory;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.jaxrs.WoId;
@@ -26,6 +27,7 @@ class ActionCreateWithDocumentPath7 extends BaseAction {
 			Wo wo = new Wo();
 			wo.setId(document.getId());
 			result.setData(wo);
+			CacheManager.notify( Document.class );
 			return result;
 		}
 	}

+ 3 - 2
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/data/ActionDeleteWithDocument.java

@@ -3,6 +3,7 @@ package com.x.cms.assemble.control.jaxrs.data;
 import com.x.base.core.container.EntityManagerContainer;
 import com.x.base.core.container.factory.EntityManagerContainerFactory;
 import com.x.base.core.project.cache.ApplicationCache;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.jaxrs.WoId;
@@ -24,8 +25,8 @@ class ActionDeleteWithDocument extends BaseAction {
 			Wo wo = new Wo();
 			wo.setId(document.getId());
 			result.setData(wo);
-			
-			ApplicationCache.notify( Document.class );
+
+			CacheManager.notify( Document.class );
 			
 			return result;
 		}

+ 3 - 2
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/data/ActionDeleteWithDocumentPath0.java

@@ -3,6 +3,7 @@ package com.x.cms.assemble.control.jaxrs.data;
 import com.x.base.core.container.EntityManagerContainer;
 import com.x.base.core.container.factory.EntityManagerContainerFactory;
 import com.x.base.core.project.cache.ApplicationCache;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.jaxrs.WoId;
@@ -24,8 +25,8 @@ class ActionDeleteWithDocumentPath0 extends BaseAction {
 			Wo wo = new Wo();
 			wo.setId(document.getId());
 			result.setData(wo);
-			
-			ApplicationCache.notify( Document.class );
+
+			CacheManager.notify( Document.class );
 			
 			return result;
 		}

+ 3 - 2
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/data/ActionDeleteWithDocumentPath1.java

@@ -3,6 +3,7 @@ package com.x.cms.assemble.control.jaxrs.data;
 import com.x.base.core.container.EntityManagerContainer;
 import com.x.base.core.container.factory.EntityManagerContainerFactory;
 import com.x.base.core.project.cache.ApplicationCache;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.jaxrs.WoId;
@@ -25,8 +26,8 @@ class ActionDeleteWithDocumentPath1 extends BaseAction {
 			Wo wo = new Wo();
 			wo.setId(document.getId());
 			result.setData(wo);
-			
-			ApplicationCache.notify( Document.class );
+
+			CacheManager.notify( Document.class );
 			
 			return result;
 		}

+ 3 - 2
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/data/ActionDeleteWithDocumentPath2.java

@@ -3,6 +3,7 @@ package com.x.cms.assemble.control.jaxrs.data;
 import com.x.base.core.container.EntityManagerContainer;
 import com.x.base.core.container.factory.EntityManagerContainerFactory;
 import com.x.base.core.project.cache.ApplicationCache;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.jaxrs.WoId;
@@ -25,8 +26,8 @@ class ActionDeleteWithDocumentPath2 extends BaseAction {
 			Wo wo = new Wo();
 			wo.setId(document.getId());
 			result.setData(wo);
-			
-			ApplicationCache.notify( Document.class );
+
+			CacheManager.notify( Document.class );
 			
 			return result;
 		}

+ 3 - 2
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/data/ActionDeleteWithDocumentPath3.java

@@ -3,6 +3,7 @@ package com.x.cms.assemble.control.jaxrs.data;
 import com.x.base.core.container.EntityManagerContainer;
 import com.x.base.core.container.factory.EntityManagerContainerFactory;
 import com.x.base.core.project.cache.ApplicationCache;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.jaxrs.WoId;
@@ -25,8 +26,8 @@ class ActionDeleteWithDocumentPath3 extends BaseAction {
 			Wo wo = new Wo();
 			wo.setId(document.getId());
 			result.setData(wo);
-			
-			ApplicationCache.notify( Document.class );
+
+			CacheManager.notify( Document.class );
 			
 			return result;
 		}

+ 3 - 2
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/data/ActionDeleteWithDocumentPath4.java

@@ -3,6 +3,7 @@ package com.x.cms.assemble.control.jaxrs.data;
 import com.x.base.core.container.EntityManagerContainer;
 import com.x.base.core.container.factory.EntityManagerContainerFactory;
 import com.x.base.core.project.cache.ApplicationCache;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.jaxrs.WoId;
@@ -25,8 +26,8 @@ class ActionDeleteWithDocumentPath4 extends BaseAction {
 			Wo wo = new Wo();
 			wo.setId(document.getId());
 			result.setData(wo);
-			
-			ApplicationCache.notify( Document.class );
+
+			CacheManager.notify( Document.class );
 			
 			return result;
 		}

+ 3 - 2
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/data/ActionDeleteWithDocumentPath5.java

@@ -3,6 +3,7 @@ package com.x.cms.assemble.control.jaxrs.data;
 import com.x.base.core.container.EntityManagerContainer;
 import com.x.base.core.container.factory.EntityManagerContainerFactory;
 import com.x.base.core.project.cache.ApplicationCache;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.jaxrs.WoId;
@@ -25,8 +26,8 @@ class ActionDeleteWithDocumentPath5 extends BaseAction {
 			Wo wo = new Wo();
 			wo.setId(document.getId());
 			result.setData(wo);
-			
-			ApplicationCache.notify( Document.class );
+
+			CacheManager.notify( Document.class );
 			
 			return result;
 		}

+ 3 - 2
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/data/ActionDeleteWithDocumentPath6.java

@@ -3,6 +3,7 @@ package com.x.cms.assemble.control.jaxrs.data;
 import com.x.base.core.container.EntityManagerContainer;
 import com.x.base.core.container.factory.EntityManagerContainerFactory;
 import com.x.base.core.project.cache.ApplicationCache;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.jaxrs.WoId;
@@ -25,8 +26,8 @@ class ActionDeleteWithDocumentPath6 extends BaseAction {
 			Wo wo = new Wo();
 			wo.setId(document.getId());
 			result.setData(wo);
-			
-			ApplicationCache.notify( Document.class );
+
+			CacheManager.notify( Document.class );
 			
 			return result;
 		}

+ 3 - 2
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/data/ActionDeleteWithDocumentPath7.java

@@ -3,6 +3,7 @@ package com.x.cms.assemble.control.jaxrs.data;
 import com.x.base.core.container.EntityManagerContainer;
 import com.x.base.core.container.factory.EntityManagerContainerFactory;
 import com.x.base.core.project.cache.ApplicationCache;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.jaxrs.WoId;
@@ -25,8 +26,8 @@ class ActionDeleteWithDocumentPath7 extends BaseAction {
 			Wo wo = new Wo();
 			wo.setId(document.getId());
 			result.setData(wo);
-			
-			ApplicationCache.notify( Document.class );
+
+			CacheManager.notify( Document.class );
 			
 			return result;
 		}

+ 3 - 2
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/data/ActionUpdateWithDocument.java

@@ -4,6 +4,7 @@ import com.google.gson.JsonElement;
 import com.x.base.core.container.EntityManagerContainer;
 import com.x.base.core.container.factory.EntityManagerContainerFactory;
 import com.x.base.core.project.cache.ApplicationCache;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.jaxrs.WoId;
@@ -41,8 +42,8 @@ class ActionUpdateWithDocument extends BaseAction {
 			Wo wo = new Wo();
 			wo.setId(document.getId());
 			result.setData(wo);
-			
-			ApplicationCache.notify( Document.class );
+
+			CacheManager.notify( Document.class );
 			
 			return result;
 		}

+ 3 - 2
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/data/ActionUpdateWithDocumentPath0.java

@@ -4,6 +4,7 @@ import com.google.gson.JsonElement;
 import com.x.base.core.container.EntityManagerContainer;
 import com.x.base.core.container.factory.EntityManagerContainerFactory;
 import com.x.base.core.project.cache.ApplicationCache;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.jaxrs.WoId;
@@ -29,8 +30,8 @@ class ActionUpdateWithDocumentPath0 extends BaseAction {
 			Wo wo = new Wo();
 			wo.setId(document.getId());
 			result.setData(wo);
-			
-			ApplicationCache.notify( Document.class );
+
+			CacheManager.notify( Document.class );
 			
 			return result;
 		}

+ 3 - 2
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/data/ActionUpdateWithDocumentPath1.java

@@ -4,6 +4,7 @@ import com.google.gson.JsonElement;
 import com.x.base.core.container.EntityManagerContainer;
 import com.x.base.core.container.factory.EntityManagerContainerFactory;
 import com.x.base.core.project.cache.ApplicationCache;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.jaxrs.WoId;
@@ -29,8 +30,8 @@ class ActionUpdateWithDocumentPath1 extends BaseAction {
 			Wo wo = new Wo();
 			wo.setId(document.getId());
 			result.setData(wo);
-			
-			ApplicationCache.notify( Document.class );
+
+			CacheManager.notify( Document.class );
 			
 			return result;
 		}

+ 3 - 2
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/data/ActionUpdateWithDocumentPath2.java

@@ -4,6 +4,7 @@ import com.google.gson.JsonElement;
 import com.x.base.core.container.EntityManagerContainer;
 import com.x.base.core.container.factory.EntityManagerContainerFactory;
 import com.x.base.core.project.cache.ApplicationCache;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.jaxrs.WoId;
@@ -29,8 +30,8 @@ class ActionUpdateWithDocumentPath2 extends BaseAction {
 			Wo wo = new Wo();
 			wo.setId(document.getId());
 			result.setData(wo);
-			
-			ApplicationCache.notify( Document.class );
+
+			CacheManager.notify( Document.class );
 			
 			return result;
 		}

+ 3 - 2
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/data/ActionUpdateWithDocumentPath3.java

@@ -4,6 +4,7 @@ import com.google.gson.JsonElement;
 import com.x.base.core.container.EntityManagerContainer;
 import com.x.base.core.container.factory.EntityManagerContainerFactory;
 import com.x.base.core.project.cache.ApplicationCache;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.jaxrs.WoId;
@@ -29,8 +30,8 @@ class ActionUpdateWithDocumentPath3 extends BaseAction {
 			Wo wo = new Wo();
 			wo.setId(document.getId());
 			result.setData(wo);
-			
-			ApplicationCache.notify( Document.class );
+
+			CacheManager.notify( Document.class );
 			
 			return result;
 		}

+ 3 - 2
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/data/ActionUpdateWithDocumentPath4.java

@@ -4,6 +4,7 @@ import com.google.gson.JsonElement;
 import com.x.base.core.container.EntityManagerContainer;
 import com.x.base.core.container.factory.EntityManagerContainerFactory;
 import com.x.base.core.project.cache.ApplicationCache;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.jaxrs.WoId;
@@ -29,8 +30,8 @@ class ActionUpdateWithDocumentPath4 extends BaseAction {
 			Wo wo = new Wo();
 			wo.setId(document.getId());
 			result.setData(wo);
-			
-			ApplicationCache.notify( Document.class );
+
+			CacheManager.notify( Document.class );
 			
 			return result;
 		}

+ 3 - 2
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/data/ActionUpdateWithDocumentPath5.java

@@ -4,6 +4,7 @@ import com.google.gson.JsonElement;
 import com.x.base.core.container.EntityManagerContainer;
 import com.x.base.core.container.factory.EntityManagerContainerFactory;
 import com.x.base.core.project.cache.ApplicationCache;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.jaxrs.WoId;
@@ -29,8 +30,8 @@ class ActionUpdateWithDocumentPath5 extends BaseAction {
 			Wo wo = new Wo();
 			wo.setId(document.getId());
 			result.setData(wo);
-			
-			ApplicationCache.notify( Document.class );
+
+			CacheManager.notify( Document.class );
 			
 			return result;
 		}

+ 3 - 2
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/data/ActionUpdateWithDocumentPath6.java

@@ -4,6 +4,7 @@ import com.google.gson.JsonElement;
 import com.x.base.core.container.EntityManagerContainer;
 import com.x.base.core.container.factory.EntityManagerContainerFactory;
 import com.x.base.core.project.cache.ApplicationCache;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.jaxrs.WoId;
@@ -30,8 +31,8 @@ class ActionUpdateWithDocumentPath6 extends BaseAction {
 			Wo wo = new Wo();
 			wo.setId(document.getId());
 			result.setData(wo);
-			
-			ApplicationCache.notify( Document.class );
+
+			CacheManager.notify( Document.class );
 			
 			return result;
 		}

+ 3 - 2
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/data/ActionUpdateWithDocumentPath7.java

@@ -4,6 +4,7 @@ import com.google.gson.JsonElement;
 import com.x.base.core.container.EntityManagerContainer;
 import com.x.base.core.container.factory.EntityManagerContainerFactory;
 import com.x.base.core.project.cache.ApplicationCache;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.jaxrs.WoId;
@@ -30,8 +31,8 @@ class ActionUpdateWithDocumentPath7 extends BaseAction {
 			Wo wo = new Wo();
 			wo.setId(document.getId());
 			result.setData(wo);
-			
-			ApplicationCache.notify( Document.class );
+
+			CacheManager.notify( Document.class );
 			
 			return result;
 		}

+ 2 - 1
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/document/ActionPersistArchive.java

@@ -4,6 +4,7 @@ import com.x.base.core.container.EntityManagerContainer;
 import com.x.base.core.container.factory.EntityManagerContainerFactory;
 import com.x.base.core.project.annotation.AuditLog;
 import com.x.base.core.project.cache.ApplicationCache;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.jaxrs.WoId;
@@ -32,7 +33,7 @@ public class ActionPersistArchive extends BaseAction {
 			try {
 				modifyDocStatus( id, "archived", effectivePerson.getDistinguishedName() );
 				document.setDocStatus( "archived" );
-				ApplicationCache.notify( Document.class );
+				CacheManager.notify( Document.class );
 			} catch (Exception e) {
 				Exception exception = new ExceptionDocumentInfoProcess( e, "系统将文档状态修改为归档状态时发生异常。Id:" + id );
 				result.error( exception );

+ 5 - 3
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/document/ActionPersistBatchModifyData.java

@@ -4,6 +4,8 @@ import com.google.gson.JsonElement;
 import com.x.base.core.project.annotation.AuditLog;
 import com.x.base.core.project.annotation.FieldDescribe;
 import com.x.base.core.project.cache.ApplicationCache;
+import com.x.base.core.project.cache.CacheManager;
+import com.x.base.core.project.gson.GsonPropertyObject;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.logger.Logger;
@@ -37,8 +39,8 @@ public class ActionPersistBatchModifyData extends BaseAction {
 		if (check) {
 			try {
 				wo = documentPersistService.changeData( wi.getDocIds(), wi.getDataChanges() );
-				
-				ApplicationCache.notify(Document.class);
+
+				CacheManager.notify(Document.class);
 			} catch (Exception e) {
 				check = false;
 				Exception exception = new ExceptionDocumentInfoProcess(e, "系统在根据ID批量修改数据时发生异常!");
@@ -144,7 +146,7 @@ public class ActionPersistBatchModifyData extends BaseAction {
 		}	
 	}
 
-	public static class Wo {
+	public static class Wo extends GsonPropertyObject {
 		private List<String> errors = null;
 		private Integer total = 0;
 		private Integer error_count = 0;

+ 2 - 1
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/document/ActionPersistChangeCategory.java

@@ -4,6 +4,7 @@ import com.google.gson.JsonElement;
 import com.x.base.core.project.annotation.AuditLog;
 import com.x.base.core.project.annotation.FieldDescribe;
 import com.x.base.core.project.cache.ApplicationCache;
+import com.x.base.core.project.gson.GsonPropertyObject;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.logger.Logger;
@@ -155,7 +156,7 @@ public class ActionPersistChangeCategory extends BaseAction {
 		}
 	}
 
-	public static class Wo {
+	public static class Wo extends GsonPropertyObject {
 		
 		@FieldDescribe( "需要调整分类的文档ID总数量." )
 		private Integer total =0;

+ 2 - 1
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/document/ActionPersistCommend.java

@@ -2,6 +2,7 @@ package com.x.cms.assemble.control.jaxrs.document;
 
 import com.x.base.core.project.annotation.AuditLog;
 import com.x.base.core.project.cache.ApplicationCache;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.jaxrs.WoId;
@@ -53,7 +54,7 @@ public class ActionPersistCommend extends BaseAction {
 			}
 		}
 
-		ApplicationCache.notify( Document.class );
+		CacheManager.notify( Document.class );
 
 		return result;
 	}

+ 5 - 4
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/document/ActionPersistDeleteDocument.java

@@ -5,6 +5,7 @@ import com.x.base.core.container.factory.EntityManagerContainerFactory;
 import com.x.base.core.entity.annotation.CheckRemoveType;
 import com.x.base.core.project.annotation.AuditLog;
 import com.x.base.core.project.cache.ApplicationCache;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.config.StorageMapping;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
@@ -78,11 +79,11 @@ public class ActionPersistDeleteDocument extends BaseAction {
 			//删除文档信息
 			emc.remove( document, CheckRemoveType.all );
 			emc.commit();
-			
-			ApplicationCache.notify( Document.class );
-			ApplicationCache.notify( DocumentCommentInfo.class );
+
+			CacheManager.notify( Document.class );
+			CacheManager.notify( DocumentCommentInfo.class );
 			String cacheKey = ApplicationCache.concreteCacheKey( id );
-			ApplicationCache.notify( Item.class, cacheKey );
+			CacheManager.notify( Item.class, cacheKey );
 			
 			new CmsBatchOperationPersistService().addOperation( 
 					CmsBatchOperationProcessService.OPT_OBJ_DOCUMENT, 

+ 2 - 1
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/document/ActionPersistDraftDocument.java

@@ -3,6 +3,7 @@ package com.x.cms.assemble.control.jaxrs.document;
 import com.x.base.core.container.EntityManagerContainer;
 import com.x.base.core.container.factory.EntityManagerContainerFactory;
 import com.x.base.core.project.cache.ApplicationCache;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.jaxrs.WoId;
@@ -33,7 +34,7 @@ public class ActionPersistDraftDocument extends BaseAction {
 			try {
 				modifyDocStatus( id, "draft", effectivePerson.getDistinguishedName() );
 				document.setDocStatus( "draft" );
-				ApplicationCache.notify( Document.class );
+				CacheManager.notify( Document.class );
 			} catch ( Exception e ) {
 				Exception exception = new ExceptionDocumentInfoProcess( e, "系统将文档状态修改为草稿状态时发生异常。Id:" + id );
 				result.error( exception );

+ 2 - 1
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/document/ActionPersistImportDataExcel.java

@@ -3,6 +3,7 @@ package com.x.cms.assemble.control.jaxrs.document;
 import com.google.gson.Gson;
 import com.x.base.core.project.annotation.AuditLog;
 import com.x.base.core.project.annotation.FieldDescribe;
+import com.x.base.core.project.gson.GsonPropertyObject;
 import com.x.base.core.project.gson.XGsonBuilder;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
@@ -391,7 +392,7 @@ public class ActionPersistImportDataExcel extends BaseAction {
 		}
 	}
 
-	public static class Wo {
+	public static class Wo extends GsonPropertyObject {
 		private List<List<String>> errors = null;
 		private Integer total = 0;
 		private Integer error_count = 0;

+ 5 - 4
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/document/ActionPersistPublishByWorkFlow.java

@@ -10,6 +10,7 @@ import com.x.base.core.project.annotation.FieldDescribe;
 import com.x.base.core.project.bean.WrapCopier;
 import com.x.base.core.project.bean.WrapCopierFactory;
 import com.x.base.core.project.cache.ApplicationCache;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.config.StorageMapping;
 import com.x.base.core.project.exception.ExceptionWhen;
 import com.x.base.core.project.gson.XGsonBuilder;
@@ -261,8 +262,8 @@ public class ActionPersistPublishByWorkFlow extends BaseAction {
 						}
 					}
 				}
-				ApplicationCache.notify(FileInfo.class);
-				ApplicationCache.notify(Document.class);
+				CacheManager.notify(FileInfo.class);
+				CacheManager.notify(Document.class);
 			}
 		}
 
@@ -398,8 +399,8 @@ public class ActionPersistPublishByWorkFlow extends BaseAction {
 				logger.error( e, effectivePerson, request, null);
 			}
 		}
-				
-		ApplicationCache.notify(Document.class);
+
+		CacheManager.notify(Document.class);
 		return result;
 	}
 

+ 3 - 2
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/document/ActionPersistPublishCancel.java

@@ -4,6 +4,7 @@ import com.x.base.core.container.EntityManagerContainer;
 import com.x.base.core.container.factory.EntityManagerContainerFactory;
 import com.x.base.core.project.annotation.AuditLog;
 import com.x.base.core.project.cache.ApplicationCache;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.jaxrs.WoId;
@@ -46,8 +47,8 @@ public class ActionPersistPublishCancel extends BaseAction {
 				document.setDocStatus("draft");
 				document.setPublishTime(new Date());
 				document = documentPersistService.refreshDocInfoData( document );
-				
-				ApplicationCache.notify(Document.class);
+
+				CacheManager.notify(Document.class);
 
 				Wo wo = new Wo();
 				wo.setId( document.getId() );

+ 2 - 1
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/document/ActionPersistSaveDocument.java

@@ -9,6 +9,7 @@ import com.x.base.core.project.annotation.FieldDescribe;
 import com.x.base.core.project.bean.WrapCopier;
 import com.x.base.core.project.bean.WrapCopierFactory;
 import com.x.base.core.project.cache.ApplicationCache;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.gson.XGsonBuilder;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
@@ -271,7 +272,7 @@ public class ActionPersistSaveDocument extends BaseAction {
 					dataJson = XGsonBuilder.instance().toJsonTree( wi.getDocData() );
 				}
 				document = documentPersistService.save( document, dataJson );
-				ApplicationCache.notify(Document.class);
+				CacheManager.notify(Document.class);
 
 				Wo wo = new Wo();
 				wo.setId( document.getId() );

+ 2 - 1
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/document/ActionPersistTopDocument.java

@@ -2,6 +2,7 @@ package com.x.cms.assemble.control.jaxrs.document;
 
 import com.x.base.core.project.annotation.AuditLog;
 import com.x.base.core.project.cache.ApplicationCache;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.jaxrs.WoId;
@@ -61,7 +62,7 @@ public class ActionPersistTopDocument extends BaseAction {
 					CmsBatchOperationProcessService.OPT_TYPE_PERMISSION,  document.getId(),  document.getId(), "刷新文档权限:ID=" +  document.getId() );
 		}
 
-		ApplicationCache.notify( Document.class );
+		CacheManager.notify( Document.class );
 
 		return result;
 	}

+ 4 - 2
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/document/ActionPersistUnCommend.java

@@ -2,6 +2,8 @@ package com.x.cms.assemble.control.jaxrs.document;
 
 import com.x.base.core.project.annotation.AuditLog;
 import com.x.base.core.project.cache.ApplicationCache;
+import com.x.base.core.project.cache.CacheManager;
+import com.x.base.core.project.gson.GsonPropertyObject;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.logger.Logger;
@@ -34,12 +36,12 @@ public class ActionPersistUnCommend extends BaseAction {
 			}
 		}
 
-		ApplicationCache.notify( Document.class );		
+		CacheManager.notify( Document.class );
 		
 		return result;
 	}
 	
-	public static class Wo {
+	public static class Wo extends GsonPropertyObject {
 		
 		private List<String> ids = null;
 

+ 2 - 1
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/document/ActionPersistUnTopDocument.java

@@ -2,6 +2,7 @@ package com.x.cms.assemble.control.jaxrs.document;
 
 import com.x.base.core.project.annotation.AuditLog;
 import com.x.base.core.project.cache.ApplicationCache;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.jaxrs.WoId;
@@ -58,7 +59,7 @@ public class ActionPersistUnTopDocument extends BaseAction {
 					CmsBatchOperationProcessService.OPT_OBJ_DOCUMENT, 
 					CmsBatchOperationProcessService.OPT_TYPE_PERMISSION,  document.getId(),  document.getId(), "刷新文档权限:ID=" +  document.getId() );
 		}
-		ApplicationCache.notify( Document.class );
+		CacheManager.notify( Document.class );
 
 		return result;
 	}

+ 2 - 1
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/document/ActionQueryCountWithFilter.java

@@ -2,6 +2,7 @@ package com.x.cms.assemble.control.jaxrs.document;
 
 import com.google.gson.JsonElement;
 import com.x.base.core.project.annotation.FieldDescribe;
+import com.x.base.core.project.gson.GsonPropertyObject;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.logger.Logger;
@@ -116,7 +117,7 @@ public class ActionQueryCountWithFilter extends BaseAction {
 		
 	}
 
-	public static class Wo {
+	public static class Wo extends GsonPropertyObject {
 		
 		@FieldDescribe( "查询到的文档数量" )
 		Long docCount = 0L;

+ 1 - 1
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/document/ActionQueryGetControl.java

@@ -250,7 +250,7 @@ public class ActionQueryGetControl extends BaseAction {
 	}
 	
 
-	public static class Wo {
+	public static class Wo extends GsonPropertyObject {
 
 		public static WrapCopier<Document, Wo> copier = WrapCopierFactory.wo(Document.class, Wo.class, null, JpaObject.FieldsInvisible);
 

+ 2 - 1
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/document/ActionQueryGetFirstPicture.java

@@ -7,6 +7,7 @@ import javax.servlet.http.HttpServletRequest;
 
 import com.x.base.core.project.cache.Cache;
 import com.x.base.core.project.cache.CacheManager;
+import com.x.base.core.project.gson.GsonPropertyObject;
 import org.apache.commons.lang3.StringUtils;
 
 import com.x.base.core.project.annotation.FieldDescribe;
@@ -82,7 +83,7 @@ public class ActionQueryGetFirstPicture extends BaseAction {
 		return cacheKey;
 	}
 	
-	public static class Wo{
+	public static class Wo extends GsonPropertyObject {
 		
 		@FieldDescribe("ID")
 		private String id;

+ 2 - 1
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/document/ActionQueryListAllPictures.java

@@ -8,6 +8,7 @@ import javax.servlet.http.HttpServletRequest;
 
 import com.x.base.core.project.cache.Cache;
 import com.x.base.core.project.cache.CacheManager;
+import com.x.base.core.project.gson.GsonPropertyObject;
 import org.apache.commons.lang3.StringUtils;
 
 import com.x.base.core.project.annotation.FieldDescribe;
@@ -85,7 +86,7 @@ public class ActionQueryListAllPictures extends BaseAction {
 		return cacheKey;
 	}
 	
-	public static class Wo{
+	public static class Wo extends GsonPropertyObject {
 		
 		@FieldDescribe("ID")
 		private String id;

+ 2 - 1
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/document/ActionQueryListDocumentFields.java

@@ -6,6 +6,7 @@ import java.util.List;
 import javax.servlet.http.HttpServletRequest;
 
 import com.x.base.core.project.annotation.FieldDescribe;
+import com.x.base.core.project.gson.GsonPropertyObject;
 import com.x.base.core.project.http.ActionResult;
 import com.x.cms.core.entity.Document;
 
@@ -33,7 +34,7 @@ public class ActionQueryListDocumentFields extends BaseAction {
 		}
 	}
 
-	public static class Wo {
+	public static class Wo extends GsonPropertyObject {
 
 		@FieldDescribe( "文档对象可供列表使用的列名." )
 		private List<String> fieldNames = null;

+ 2 - 1
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/document/ActionQueryListUnReadDocIds.java

@@ -6,6 +6,7 @@ import javax.servlet.http.HttpServletRequest;
 
 import com.google.gson.JsonElement;
 import com.x.base.core.project.annotation.FieldDescribe;
+import com.x.base.core.project.gson.GsonPropertyObject;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.logger.Logger;
@@ -73,7 +74,7 @@ public class ActionQueryListUnReadDocIds extends BaseAction {
 		}
 	}
 
-	public static class Wo {
+	public static class Wo extends GsonPropertyObject {
 
 		@FieldDescribe( "未读文档ID列表." )
 		private List<String> unReadDocIds = null;

+ 2 - 1
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/document/WrapOutDocumentList.java

@@ -5,9 +5,10 @@ import java.util.List;
 import java.util.Map;
 
 import com.x.base.core.project.annotation.FieldDescribe;
+import com.x.base.core.project.gson.GsonPropertyObject;
 import com.x.cms.core.entity.Document;
 
-public class WrapOutDocumentList {
+public class WrapOutDocumentList extends GsonPropertyObject {
 	
 	@FieldDescribe( "sequence." )
 	private String sequence;

+ 2 - 1
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/file/ActionCopy.java

@@ -12,6 +12,7 @@ import com.x.base.core.container.EntityManagerContainer;
 import com.x.base.core.container.factory.EntityManagerContainerFactory;
 import com.x.base.core.entity.annotation.CheckPersistType;
 import com.x.base.core.project.cache.ApplicationCache;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.exception.ExceptionAccessDenied;
 import com.x.base.core.project.exception.ExceptionEntityNotExist;
 import com.x.base.core.project.http.ActionResult;
@@ -57,7 +58,7 @@ class ActionCopy extends BaseAction {
 			emc.beginTransaction(File.class);
 			emc.persist(toFile, CheckPersistType.all);
 			emc.commit();
-			ApplicationCache.notify(File.class);
+			CacheManager.notify(File.class);
 			Wo wo = new Wo();
 			wo.setId(toFile.getId());
 			result.setData(wo);

+ 2 - 1
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/file/ActionCreate.java

@@ -1,5 +1,6 @@
 package com.x.cms.assemble.control.jaxrs.file;
 
+import com.x.base.core.project.cache.CacheManager;
 import org.apache.commons.lang3.StringUtils;
 
 import com.google.gson.JsonElement;
@@ -56,7 +57,7 @@ class ActionCreate extends BaseAction {
 			}
 			emc.persist(file, CheckPersistType.all);
 			emc.commit();
-			ApplicationCache.notify(File.class);
+			CacheManager.notify(File.class);
 			Wo wo = new Wo();
 			wo.setId(file.getId());
 			result.setData(wo);

+ 2 - 1
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/file/ActionDelete.java

@@ -4,6 +4,7 @@ import com.x.base.core.container.EntityManagerContainer;
 import com.x.base.core.container.factory.EntityManagerContainerFactory;
 import com.x.base.core.entity.annotation.CheckRemoveType;
 import com.x.base.core.project.cache.ApplicationCache;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.exception.ExceptionAccessDenied;
 import com.x.base.core.project.exception.ExceptionEntityNotExist;
 import com.x.base.core.project.http.ActionResult;
@@ -32,7 +33,7 @@ class ActionDelete extends BaseAction {
 			emc.beginTransaction(File.class);
 			emc.remove(file, CheckRemoveType.all);
 			emc.commit();
-			ApplicationCache.notify(File.class);
+			CacheManager.notify(File.class);
 			Wo wo = new Wo();
 			wo.setId(file.getId());
 			result.setData(wo);

+ 2 - 1
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/file/ActionEdit.java

@@ -1,5 +1,6 @@
 package com.x.cms.assemble.control.jaxrs.file;
 
+import com.x.base.core.project.cache.CacheManager;
 import org.apache.commons.lang3.StringUtils;
 
 import com.google.gson.JsonElement;
@@ -57,7 +58,7 @@ class ActionEdit extends BaseAction {
 			}
 			emc.check(file, CheckPersistType.all);
 			emc.commit();
-			ApplicationCache.notify(File.class);
+			CacheManager.notify(File.class);
 			Wo wo = new Wo();
 			wo.setId(file.getId());
 			result.setData(wo);

+ 2 - 1
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/file/ActionUpload.java

@@ -1,5 +1,6 @@
 package com.x.cms.assemble.control.jaxrs.file;
 
+import com.x.base.core.project.cache.CacheManager;
 import org.apache.commons.codec.binary.Base64;
 import org.apache.commons.lang3.StringUtils;
 import org.glassfish.jersey.media.multipart.FormDataContentDisposition;
@@ -43,7 +44,7 @@ class ActionUpload extends BaseAction {
 				file.setFileName(fileName);
 			}
 			emc.commit();
-			ApplicationCache.notify(File.class);
+			CacheManager.notify(File.class);
 			Wo wo = new Wo();
 			wo.setValue(true);
 			result.setData(wo);

+ 3 - 2
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/fileinfo/ActionFileEdit.java

@@ -5,6 +5,7 @@ import com.x.base.core.project.annotation.AuditLog;
 import com.x.base.core.project.bean.WrapCopier;
 import com.x.base.core.project.bean.WrapCopierFactory;
 import com.x.base.core.project.cache.ApplicationCache;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.jaxrs.WoId;
@@ -117,8 +118,8 @@ class ActionFileEdit extends BaseAction {
 				wo.setId(file.getId());
 				result.setData(wo);
 
-				ApplicationCache.notify( FileInfo.class );
-				ApplicationCache.notify( Document.class );
+				CacheManager.notify( FileInfo.class );
+				CacheManager.notify( Document.class );
 			} catch (Exception e) {
 				check = false;
 				Exception exception = new ExceptionFileInfoProcess(e, "系统在更新文档附件信息时发生异常!ID:" + wi.getId() );

+ 3 - 2
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/fileinfo/ActionFileUpdateCallback.java

@@ -5,6 +5,7 @@ import java.util.UUID;
 
 import javax.servlet.http.HttpServletRequest;
 
+import com.x.base.core.project.cache.CacheManager;
 import org.apache.commons.io.FilenameUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.tika.Tika;
@@ -137,8 +138,8 @@ public class ActionFileUpdateCallback extends BaseAction {
 //				keys.add( ApplicationCache.concreteCacheKey( document.getId(), "get", isManager )  ); //清除文档信息获取缓存
 //				ApplicationCache.notify( Document.class, keys );			
 //				
-				ApplicationCache.notify( FileInfo.class );
-				ApplicationCache.notify( Document.class );		
+				CacheManager.notify( FileInfo.class );
+				CacheManager.notify( Document.class );
 				
 				WoObject woObject = new WoObject();
 				woObject.setId(attachment.getId());

+ 4 - 4
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/fileinfo/ActionFileUpload.java

@@ -5,13 +5,13 @@ import java.util.UUID;
 
 import javax.servlet.http.HttpServletRequest;
 
+import com.x.base.core.project.cache.CacheManager;
 import org.apache.commons.io.FilenameUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.tika.Tika;
 import org.glassfish.jersey.media.multipart.FormDataContentDisposition;
 
 import com.x.base.core.project.annotation.AuditLog;
-import com.x.base.core.project.cache.ApplicationCache;
 import com.x.base.core.project.config.Config;
 import com.x.base.core.project.config.StorageMapping;
 import com.x.base.core.project.http.ActionResult;
@@ -127,9 +127,9 @@ public class ActionFileUpload extends BaseAction {
 //				keys.add(  ApplicationCache.concreteCacheKey( document.getId(), "view", isAnonymous, isManager ) ); //清除文档阅读缓存
 //				keys.add( ApplicationCache.concreteCacheKey( document.getId(), "get", isManager )  ); //清除文档信息获取缓存
 //				ApplicationCache.notify( Document.class, keys );
-				
-				ApplicationCache.notify( FileInfo.class );
-				ApplicationCache.notify( Document.class );	
+
+				CacheManager.notify( FileInfo.class );
+				CacheManager.notify( Document.class );
 				
 				Wo wo = new Wo();
 				wo.setId( attachment.getId() );

+ 6 - 5
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/form/ActionDelete.java

@@ -5,6 +5,7 @@ import com.x.base.core.container.factory.EntityManagerContainerFactory;
 import com.x.base.core.entity.annotation.CheckRemoveType;
 import com.x.base.core.project.annotation.AuditLog;
 import com.x.base.core.project.cache.ApplicationCache;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.http.WrapOutId;
@@ -72,11 +73,11 @@ public class ActionDelete extends BaseAction {
 				logService.log( emc, effectivePerson.getDistinguishedName(), form.getName(), form.getAppId(), "", "", form.getId(), "FORM", "删除");
 			}			
 			wrap = new WrapOutId( form.getId() );
-			
-			ApplicationCache.notify( Form.class );
-			ApplicationCache.notify( View.class );
-			ApplicationCache.notify( ViewFieldConfig.class );
-			ApplicationCache.notify( ViewCategory.class );
+
+			CacheManager.notify( Form.class );
+			CacheManager.notify( View.class );
+			CacheManager.notify( ViewFieldConfig.class );
+			CacheManager.notify( ViewCategory.class );
 			
 			result.setData(wrap);
 		} catch (Throwable th) {

+ 5 - 4
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/form/ActionSave.java

@@ -9,6 +9,7 @@ import com.x.base.core.project.annotation.AuditLog;
 import com.x.base.core.project.bean.WrapCopier;
 import com.x.base.core.project.bean.WrapCopierFactory;
 import com.x.base.core.project.cache.ApplicationCache;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.jaxrs.WoId;
@@ -85,10 +86,10 @@ public class ActionSave extends BaseAction {
 					wo.setId(form.getId());
 					result.setData(wo);
 				}
-				ApplicationCache.notify(Form.class);
-				ApplicationCache.notify(View.class);
-				ApplicationCache.notify(ViewFieldConfig.class);
-				ApplicationCache.notify(ViewCategory.class);
+				CacheManager.notify(Form.class);
+				CacheManager.notify(View.class);
+				CacheManager.notify(ViewFieldConfig.class);
+				CacheManager.notify(ViewCategory.class);
 			} catch (Throwable th) {
 				th.printStackTrace();
 				result.error(th);

+ 8 - 7
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/input/ActionCover.java

@@ -7,6 +7,7 @@ import com.x.base.core.entity.JpaObject;
 import com.x.base.core.entity.annotation.CheckPersistType;
 import com.x.base.core.entity.dataitem.DataItemConverter;
 import com.x.base.core.project.cache.ApplicationCache;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.jaxrs.WoId;
@@ -218,14 +219,14 @@ class ActionCover extends BaseAction {
 		
 		business.entityManagerContainer().commit();
 
-		ApplicationCache.notify(CategoryInfo.class);
-		ApplicationCache.notify(AppDictItem.class);
-		ApplicationCache.notify(AppDict.class);
-		ApplicationCache.notify(Form.class);
-		ApplicationCache.notify(Script.class);
-		ApplicationCache.notify(AppInfo.class);
+		CacheManager.notify(CategoryInfo.class);
+		CacheManager.notify(AppDictItem.class);
+		CacheManager.notify(AppDict.class);
+		CacheManager.notify(Form.class);
+		CacheManager.notify(Script.class);
+		CacheManager.notify(AppInfo.class);
 		//2020年1月16日 O2LEE 保存栏目信息对应的配置支持信息JSON ---->start
-		ApplicationCache.notify(AppInfoConfig.class);
+		CacheManager.notify(AppInfoConfig.class);
 		//2020年1月16日 O2LEE 保存栏目信息对应的配置支持信息JSON ---->end
 
 		return appInfo;

+ 8 - 7
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/input/ActionCreate.java

@@ -6,6 +6,7 @@ import com.x.base.core.container.factory.EntityManagerContainerFactory;
 import com.x.base.core.entity.JpaObject;
 import com.x.base.core.entity.dataitem.DataItemConverter;
 import com.x.base.core.project.cache.ApplicationCache;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.jaxrs.WoId;
@@ -155,13 +156,13 @@ class ActionCreate extends BaseAction {
 		business.entityManagerContainer().commit();
 
 		//2020年1月16日 O2LEE 保存栏目信息对应的配置支持信息JSON ---->start
-		ApplicationCache.notify(CategoryInfo.class);
-		ApplicationCache.notify(AppDictItem.class);
-		ApplicationCache.notify(AppDict.class);
-		ApplicationCache.notify(Form.class);
-		ApplicationCache.notify(Script.class);
-		ApplicationCache.notify(AppInfo.class);
-		ApplicationCache.notify(AppInfoConfig.class);
+		CacheManager.notify(CategoryInfo.class);
+		CacheManager.notify(AppDictItem.class);
+		CacheManager.notify(AppDict.class);
+		CacheManager.notify(Form.class);
+		CacheManager.notify(Script.class);
+		CacheManager.notify(AppInfo.class);
+		CacheManager.notify(AppInfoConfig.class);
 		//2020年1月16日 O2LEE 保存栏目信息对应的配置支持信息JSON ---->end
 
 		return appInfo;

+ 2 - 1
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/script/ActionCreate.java

@@ -11,6 +11,7 @@ import com.x.base.core.container.factory.EntityManagerContainerFactory;
 import com.x.base.core.entity.annotation.CheckPersistType;
 import com.x.base.core.project.annotation.FieldDescribe;
 import com.x.base.core.project.cache.ApplicationCache;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.gson.GsonPropertyObject;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
@@ -52,7 +53,7 @@ class ActionCreate extends BaseAction {
 				emc.persist(script, CheckPersistType.all);
 				emc.commit();
 				// 清除所有的Script缓存
-				ApplicationCache.notify(Script.class);
+				CacheManager.notify(Script.class);
 
 				// 记录日志
 				emc.beginTransaction(Log.class);

+ 2 - 1
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/script/ActionDelete.java

@@ -4,6 +4,7 @@ import com.x.base.core.container.EntityManagerContainer;
 import com.x.base.core.container.factory.EntityManagerContainerFactory;
 import com.x.base.core.entity.annotation.CheckRemoveType;
 import com.x.base.core.project.cache.ApplicationCache;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.jaxrs.WoId;
@@ -23,7 +24,7 @@ class ActionDelete extends BaseAction {
 			emc.remove(script, CheckRemoveType.all);
 			emc.commit();
 			// 清除所有的Script缓存
-			ApplicationCache.notify(Script.class);
+			CacheManager.notify(Script.class);
 
 			// 记录日志
 			emc.beginTransaction(Log.class);

+ 2 - 1
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/script/ActionUpdate.java

@@ -9,6 +9,7 @@ import com.x.base.core.container.factory.EntityManagerContainerFactory;
 import com.x.base.core.entity.JpaObject;
 import com.x.base.core.project.annotation.FieldDescribe;
 import com.x.base.core.project.cache.ApplicationCache;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.gson.GsonPropertyObject;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
@@ -44,7 +45,7 @@ class ActionUpdate extends BaseAction {
 				script.setLastUpdateTime(new Date());
 				emc.commit();
 				// 清除所有的Script缓存
-				ApplicationCache.notify(Script.class);
+				CacheManager.notify(Script.class);
 
 				// 记录日志
 				emc.beginTransaction(Log.class);

+ 5 - 4
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/view/ActionDelete.java

@@ -8,6 +8,7 @@ import com.x.base.core.container.EntityManagerContainer;
 import com.x.base.core.container.factory.EntityManagerContainerFactory;
 import com.x.base.core.entity.annotation.CheckRemoveType;
 import com.x.base.core.project.cache.ApplicationCache;
+import com.x.base.core.project.cache.CacheManager;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.jaxrs.WoId;
@@ -63,10 +64,10 @@ public class ActionDelete extends BaseAction {
 			Wo wo = new Wo();
 			wo.setId( view.getId() );
 			result.setData( wo );
-			
-			ApplicationCache.notify( View.class );
-			ApplicationCache.notify( ViewFieldConfig.class );
-			ApplicationCache.notify( ViewCategory.class );
+
+			CacheManager.notify( View.class );
+			CacheManager.notify( ViewFieldConfig.class );
+			CacheManager.notify( ViewCategory.class );
 		} catch (Throwable th) {
 			th.printStackTrace();
 			result.error(th);

+ 4 - 3
o2server/x_cms_assemble_control/src/main/java/com/x/cms/assemble/control/jaxrs/view/ActionSave.java

@@ -5,6 +5,7 @@ import java.util.List;
 
 import javax.servlet.http.HttpServletRequest;
 
+import com.x.base.core.project.cache.CacheManager;
 import org.apache.commons.lang3.StringUtils;
 
 import com.google.gson.JsonElement;
@@ -63,9 +64,9 @@ public class ActionSave extends BaseAction {
 				new LogService().log(null, effectivePerson.getDistinguishedName(), view.getName(), view.getAppId(), "",
 						"", view.getId(), "VIEW", "保存");
 
-				ApplicationCache.notify(View.class);
-				ApplicationCache.notify(ViewFieldConfig.class);
-				ApplicationCache.notify(ViewCategory.class);
+				CacheManager.notify(View.class);
+				CacheManager.notify(ViewFieldConfig.class);
+				CacheManager.notify(ViewCategory.class);
 
 				Wo wo = new Wo();
 				wo.setId(view.getId());

+ 2 - 1
o2server/x_portal_assemble_designer/src/main/java/com/x/portal/assemble/designer/jaxrs/output/BaseAction.java

@@ -9,6 +9,7 @@ import javax.persistence.criteria.Predicate;
 import javax.persistence.criteria.Root;
 
 import com.x.base.core.entity.JpaObject;
+import com.x.base.core.project.gson.GsonPropertyObject;
 import com.x.base.core.project.jaxrs.StandardJaxrsAction;
 import com.x.portal.assemble.designer.Business;
 import com.x.portal.core.entity.Portal;
@@ -30,7 +31,7 @@ abstract class BaseAction extends StandardJaxrsAction {
 		return em.createQuery(cq).getResultList();
 	}
 
-	public static class CacheObject {
+	public static class CacheObject extends GsonPropertyObject {
 
 		private String name;
 		private WrapPortal portal;

+ 4 - 1
o2server/x_program_center/src/main/java/com/x/program/center/jaxrs/module/BaseAction.java

@@ -1,11 +1,14 @@
 package com.x.program.center.jaxrs.module;
 
+import com.x.base.core.project.gson.GsonPropertyObject;
 import com.x.base.core.project.jaxrs.StandardJaxrsAction;
 import com.x.program.center.WrapModule;
 
 abstract class BaseAction extends StandardJaxrsAction {
 
-	public static class CacheObject {
+	public static class CacheObject extends GsonPropertyObject {
+
+		private static final long serialVersionUID = -670193466778959483L;
 
 		private WrapModule module;
 

+ 4 - 1
o2server/x_program_center/src/main/java/com/x/program/center/jaxrs/output/BaseAction.java

@@ -1,11 +1,14 @@
 package com.x.program.center.jaxrs.output;
 
+import com.x.base.core.project.gson.GsonPropertyObject;
 import com.x.base.core.project.jaxrs.StandardJaxrsAction;
 import com.x.program.center.core.entity.wrap.WrapServiceModule;
 
 abstract class BaseAction extends StandardJaxrsAction {
 
-    public static class CacheObject {
+    public static class CacheObject extends GsonPropertyObject {
+
+        private static final long serialVersionUID = 594807992442100468L;
 
         private WrapServiceModule module;
 

+ 2 - 1
o2server/x_query_assemble_designer/src/main/java/com/x/query/assemble/designer/jaxrs/output/BaseAction.java

@@ -1,5 +1,6 @@
 package com.x.query.assemble.designer.jaxrs.output;
 
+import com.x.base.core.project.gson.GsonPropertyObject;
 import com.x.base.core.project.jaxrs.StandardJaxrsAction;
 import com.x.query.core.entity.wrap.WrapQuery;
 import com.x.base.core.project.cache.Cache.CacheCategory;
@@ -8,7 +9,7 @@ abstract class BaseAction extends StandardJaxrsAction {
 
 	protected CacheCategory cache = new CacheCategory(CacheObject.class);
 
-	public static class CacheObject {
+	public static class CacheObject extends GsonPropertyObject {
 
 		private String name;