Jetty:websocket扩展自定义Servlet

时间:2012-07-31 12:15:06

标签: websocket jetty

我正在开发基于现有Jetty的WebSocket代码。

在现有代码中,在该servlet中实现了两种方法

1. public WebSocket doWebSocketConnect()
2.protected void doGet(HttpServletRequest request, HttpServletResponse response) 

因为这些是回调方法 请问任何人请让我知道首先调用哪种方法(我的意思是方法顺序)

提前致谢。

1 个答案:

答案 0 :(得分:2)

jetty-7中的WebSocketServlet和jetty-8(注意:这在jetty-9中已经改变了),对你有一些要求。

根据您在HttpServletRequest中可以找到的信息,您需要实现doWebSocketConnect(HttpServletRequest,String)来创建WebSocket对象(您的设计)。 (例如主机,路径,身份验证等......)

您可以在测试用例中看到Servlet的示例。 http://git.eclipse.org/c/jetty/org.eclipse.jetty.project.git/tree/jetty-websocket/src/test/java/org/eclipse/jetty/websocket/helper/WebSocketCaptureServlet.java

这将创建一个CaptureSocket,将其存储在Servlet实例中以进行跟踪,并将其返回。 CaptureSocket只存储传入的消息,以便测试用例可以验证期望。 这不是一个特别令人兴奋的Servlet / Socket impl。

在TestServer中也可以找到几种Echo套接字的示例(也可以在测试用例中找到)。 http://git.eclipse.org/c/jetty/org.eclipse.jetty.project.git/tree/jetty-websocket/src/test/java/org/eclipse/jetty/websocket/TestServer.java#n53