diff --git a/src/com/wentch/redkale/boot/Application.java b/src/com/wentch/redkale/boot/Application.java index 42c36f154..c7e37e479 100644 --- a/src/com/wentch/redkale/boot/Application.java +++ b/src/com/wentch/redkale/boot/Application.java @@ -57,7 +57,7 @@ public final class Application { //当前SNCP Server所属的组 类型: String public static final String RESNAME_SNCP_GROUP = "SNCP_GROUP"; - //当前SNCP Server的IP地址+端口 类型: SocketAddress、InetSocketAddress + //当前SNCP Server的IP地址+端口 类型: SocketAddress、InetSocketAddress、String public static final String RESNAME_SNCP_ADDR = "SNCP_ADDR"; //当前SNCP Server的IP地址+端口集合 类型: Map、HashMap diff --git a/src/com/wentch/redkale/boot/NodeSncpServer.java b/src/com/wentch/redkale/boot/NodeSncpServer.java index 473208447..6d8ead1f8 100644 --- a/src/com/wentch/redkale/boot/NodeSncpServer.java +++ b/src/com/wentch/redkale/boot/NodeSncpServer.java @@ -31,8 +31,11 @@ public final class NodeSncpServer extends NodeServer { this.servaddr = addr; this.nodeGroup = application.addrGroups.getOrDefault(addr, ""); this.consumer = server == null ? null : x -> server.addService(x); - this.factory.register(RESNAME_SNCP_ADDR, SocketAddress.class, this.servaddr); - this.factory.register(RESNAME_SNCP_ADDR, InetSocketAddress.class, this.servaddr); + if (this.servaddr != null) { + this.factory.register(RESNAME_SNCP_ADDR, SocketAddress.class, this.servaddr); + this.factory.register(RESNAME_SNCP_ADDR, InetSocketAddress.class, this.servaddr); + this.factory.register(RESNAME_SNCP_ADDR, String.class, this.servaddr.getAddress().getHostAddress()); + } this.factory.register(RESNAME_SNCP_GROUP, this.nodeGroup); }