jfinal-undertow配置websocket

把原来的启动方式 

UndertowServer.start(JfinalConfig.class);

换成  

UndertowServer.create(new UndertowConfig(JfinalConfig.class)).addWebSocketEndpoint(TestWebSocket.class).start();
然后TestWebSocket里面加上@ServerEndpoint注解

需要一个Handler拦截websocket请求

WebSocketHandler Handler {
    Pattern ;
    WebSocketHandler(String filterUrlRegx) {
        (StrKit.(filterUrlRegx))
            IllegalArgumentException();
        = Pattern.(filterUrlRegx);
    }
    handle(String s, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, [] booleans) {
        (.matcher(s).find()){
            ;
        }{
            .handle(s, httpServletRequest, httpServletResponse, booleans);
        }
    }
}

最后在JfinalConfig里面加上

configHandler(Handlers me) {
   me.add(WebSocketHandler());
}


大功告成

评论区

JFinal

2018-12-04 21:53

jfinal 1.2 这几天正在最后打磨,功能更全面, 代码量更少, 配置更方便,有关 web 组件的配置统一在 configWeb 中来做了,注意升级时 addWebSocketEndpoint 稍改一下:
UndertowServer.create(...).configWeb( builder -》 {
builder.addWebSocketEndpoint(...);
}).start();

方法名都没变,配置的方式稍微变了一下

热门分享

扫码入社