diff --git a/src/main/java/org/redkale/net/http/Rest.java b/src/main/java/org/redkale/net/http/Rest.java index 5dffbebb1..36737f711 100644 --- a/src/main/java/org/redkale/net/http/Rest.java +++ b/src/main/java/org/redkale/net/http/Rest.java @@ -616,7 +616,7 @@ public final class Rest { "createWebSocket", "()" + wsDesc, "()L" - + WebSocket.class.getName().replace('.', '/') + ";", + + WebSocket.class.getName().replace('.', '/') + ";", null)); mv.visitTypeInsn(NEW, newDynName + "$" + newDynWebSokcetSimpleName); mv.visitInsn(DUP); diff --git a/src/main/java/org/redkale/net/http/WebSocket.java b/src/main/java/org/redkale/net/http/WebSocket.java index 38ec4f50a..a4efb5760 100644 --- a/src/main/java/org/redkale/net/http/WebSocket.java +++ b/src/main/java/org/redkale/net/http/WebSocket.java @@ -46,10 +46,9 @@ import org.redkale.util.ByteArray; *

详情见: https://redkale.org * * @author zhangjx - * @param Groupid的泛型 - * @param Message的泛型 + * @param userid的泛型 */ -public abstract class WebSocket { +public abstract class WebSocket { // --------------------------- CLOSECODE ------------------------------- @Comment("服务器主动关闭") @@ -835,14 +834,6 @@ public abstract class WebSocket { messageEvent.run(); } - /** - * 接收到消息的回调方法 - * - * @param message 消息 - * @param last 是否最后一条 - */ - public void onMessage(T message, boolean last) {} - /** * 接收到文本消息的回调方法 * diff --git a/src/main/java/org/redkale/net/http/WebSocketServlet.java b/src/main/java/org/redkale/net/http/WebSocketServlet.java index afab47214..28b078400 100644 --- a/src/main/java/org/redkale/net/http/WebSocketServlet.java +++ b/src/main/java/org/redkale/net/http/WebSocketServlet.java @@ -477,7 +477,7 @@ public abstract class WebSocketServlet extends HttpServlet implements Resourcabl }); } - protected abstract WebSocket createWebSocket(); + protected abstract WebSocket createWebSocket(); protected WebSocketNode createWebSocketNode() { return null; diff --git a/src/test/java/org/redkale/test/websocket/ChatWebSocketServlet.java b/src/test/java/org/redkale/test/websocket/ChatWebSocketServlet.java index 0cdbb66f3..3eb2207dc 100644 --- a/src/test/java/org/redkale/test/websocket/ChatWebSocketServlet.java +++ b/src/test/java/org/redkale/test/websocket/ChatWebSocketServlet.java @@ -29,13 +29,12 @@ public class ChatWebSocketServlet extends WebSocketServlet { } @Override - protected WebSocket createWebSocket() { + protected WebSocket createWebSocket() { - return new WebSocket() { + return new WebSocket() { private UserInfo user; - @Override public void onMessage( ChatMessage message, boolean last) { // text 接收的格式: {"receiveid":200000001, "content":"Hi Redkale!"} diff --git a/src/test/java/org/redkale/test/websocket/VideoWebSocketServlet.java b/src/test/java/org/redkale/test/websocket/VideoWebSocketServlet.java index f664d6cd0..d3efdf995 100644 --- a/src/test/java/org/redkale/test/websocket/VideoWebSocketServlet.java +++ b/src/test/java/org/redkale/test/websocket/VideoWebSocketServlet.java @@ -86,7 +86,6 @@ public class VideoWebSocketServlet extends WebSocketServlet { return null; } - @Override public void onMessage(Object text, boolean last) { // System.out.println("接收到消息: " + text); super.broadcastMessage(text, last); diff --git a/src/test/java/org/redkale/test/websocket/dyn/GameWebSocket.java b/src/test/java/org/redkale/test/websocket/dyn/GameWebSocket.java index 9709f7d76..291a067ba 100644 --- a/src/test/java/org/redkale/test/websocket/dyn/GameWebSocket.java +++ b/src/test/java/org/redkale/test/websocket/dyn/GameWebSocket.java @@ -15,7 +15,7 @@ import org.redkale.net.http.WebSocket; * @author zhangjx */ @RestWebSocket(name = "wstest", catalog = "ws", wsmaxconns = 100, comment = "WebSocket服务", repair = false) -public class GameWebSocket extends WebSocket { +public class GameWebSocket extends WebSocket { @Override protected CompletableFuture onOpen(final HttpRequest request) { diff --git a/src/test/java/org/redkale/test/ws/ChatWebSocket.java b/src/test/java/org/redkale/test/ws/ChatWebSocket.java index 5ddc28bad..f77818172 100644 --- a/src/test/java/org/redkale/test/ws/ChatWebSocket.java +++ b/src/test/java/org/redkale/test/ws/ChatWebSocket.java @@ -15,7 +15,7 @@ import org.redkale.test.rest.*; /** @author zhangjx */ // anyuser = true 表示WebSocket.createUserid返回的值不表示用户登录态 @RestWebSocket(name = "chat", catalog = "ws", comment = "文字聊天", anyuser = true) -public class ChatWebSocket extends WebSocket { +public class ChatWebSocket extends WebSocket { // @Resource标记的Field只能被修饰为public或protected @Resource diff --git a/src/test/java/org/redkale/test/ws/WebSocketTest.java b/src/test/java/org/redkale/test/ws/WebSocketTest.java new file mode 100644 index 000000000..ec20fc9e2 --- /dev/null +++ b/src/test/java/org/redkale/test/ws/WebSocketTest.java @@ -0,0 +1,29 @@ +/* + * Copyright (c) 2016-2116 Redkale + * All rights reserved. + */ +package org.redkale.test.ws; + +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; +import org.redkale.net.http.Rest; +import org.redkale.net.http.WebSocketServlet; +import org.redkale.util.RedkaleClassLoader; + +/** + * + * @author zhangjx + */ +public class WebSocketTest { + public static void main(String[] args) throws Throwable { + WebSocketTest test = new WebSocketTest(); + test.run1(); + } + + @Test + public void run1() throws Exception { + RedkaleClassLoader classLoader = RedkaleClassLoader.currentClassLoader(); + WebSocketServlet ws = Rest.createRestWebSocketServlet(classLoader, ChatWebSocket.class, null); + Assertions.assertTrue(ws != null); + } +} diff --git a/src/test/java/org/redkale/test/wsdync/_DyncChatWebSocketServlet.java b/src/test/java/org/redkale/test/wsdync/_DyncChatWebSocketServlet.java index df68e540a..5d10ecb3b 100644 --- a/src/test/java/org/redkale/test/wsdync/_DyncChatWebSocketServlet.java +++ b/src/test/java/org/redkale/test/wsdync/_DyncChatWebSocketServlet.java @@ -36,7 +36,7 @@ public final class _DyncChatWebSocketServlet extends WebSocketServlet { } @Override - protected WebSocket createWebSocket() { + protected WebSocket createWebSocket() { return (WebSocket) new _DyncChatWebSocket(_redkale_resource_0, _redkale_resource_1); }