为什么sendText调用在使用websockets时抛出超时异常?

时间:2015-02-20 16:54:23

标签: java websocket jboss6.x

我是websocket的新手,并尝试了几个例子。我创建的应用程序可以正常运行10到15分钟,从那时起,它会在websocket会话上调用sendText方法时抛出超时异常。我将“org.apache.tomcat.websocket.BLOCKING_SEND_TIMEOUT”的值更改为-1,现在它挂起了。 你能不能帮我解决这个问题。

我编写的将数据发送到websocket的代码如下:

public void update() {
    Dashboard dashboardData = tunnelDataService.getDashboardData();
    ObjectWriter ow = new ObjectMapper().writer();
    String json = null;
    try {
        json = ow.writeValueAsString(dashboardData);
    } catch (JsonGenerationException e1) {
        // TODO Auto-generated catch block
        e1.printStackTrace();
    } catch (JsonMappingException e1) {
        // TODO Auto-generated catch block
        e1.printStackTrace();
    } catch (IOException e1) {
        // TODO Auto-generated catch block
        e1.printStackTrace();
    }
    try {
        synchronized (lock) {
            if (session.isOpen()) {
                session.getBasicRemote().sendText(json);
            }
        }
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
}

我正在JBoss EAP 6.3上部署这个应用程序。

0 个答案:

没有答案