From 714b18856093672535e16eae96d448ceaecd1b19 Mon Sep 17 00:00:00 2001 From: Redkale <8730487+redkale@users.noreply.github.com> Date: Fri, 17 Jul 2020 18:21:09 +0800 Subject: [PATCH] --- src/org/redkale/boot/NodeServer.java | 2 +- src/org/redkale/net/sncp/SncpServer.java | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/src/org/redkale/boot/NodeServer.java b/src/org/redkale/boot/NodeServer.java index 1b401746a..0dfeceacf 100644 --- a/src/org/redkale/boot/NodeServer.java +++ b/src/org/redkale/boot/NodeServer.java @@ -353,7 +353,7 @@ public abstract class NodeServer { final Class sourceType = sourceType0; Object source = null; if (CacheSource.class.isAssignableFrom(sourceType)) { // CacheSource - source = (CacheSource) Sncp.createLocalService(serverClassLoader, resourceName, sourceType, client == null ? null : client.getMessageAgent(), appResFactory, appSncpTranFactory, sncpAddr, null, Sncp.getConf(srcService)); + source = Modifier.isFinal(sourceType.getModifiers()) ? sourceType.getConstructor().newInstance() : (CacheSource) Sncp.createLocalService(serverClassLoader, resourceName, sourceType, client == null ? null : client.getMessageAgent(), appResFactory, appSncpTranFactory, sncpAddr, null, Sncp.getConf(srcService)); Type genericType = field.getGenericType(); ParameterizedType pt = (genericType instanceof ParameterizedType) ? (ParameterizedType) genericType : null; Type valType = pt == null ? null : pt.getActualTypeArguments()[0]; diff --git a/src/org/redkale/net/sncp/SncpServer.java b/src/org/redkale/net/sncp/SncpServer.java index 547a1b5ae..4afe29e25 100644 --- a/src/org/redkale/net/sncp/SncpServer.java +++ b/src/org/redkale/net/sncp/SncpServer.java @@ -98,6 +98,7 @@ public class SncpServer extends Server