如何保留运动衫响应以等待其他Webapp的响应,然后将响应发送到请求?

问题描述

我正在使用websocket连接将来自webapp-A的请求转发到另一个webapp-B。我正在将Jersey框架用于web应用程序,并在webapp-A的ContainerRequestFilter中转发请求。

ContainerRequestFilter:

@Override
    public void filter(ContainerRequestContext requestContext) throws IOException {
        Map<String,Session> sessionMap = WebSocketUtil.getSessionMap();
        try {
            String clusterId = "hello";
            if(sessionMap.containsKey(clusterId)) {
                Session current_Session = sessionMap.get(clusterId);
                if(current_Session.isopen()) {
                    // forwarding request
                    WebSocketRequestDto requestDto = new WebSocketRequestDto(requestContext);
                    current_Session.getBasicRemote().sendobject(requestDto);
                } else {
                    sessionMap.remove(clusterId);
                }
            }
        } catch (EncodeException e) {
            System.out.println("Error while pushing the request");
            e.printstacktrace();
        }
       }

现在问题是webapp-A正在发送请求的响应(未找到404),而没有等待从websocket获得响应。如何保留jersey响应以等待websocket响应,然后将响应发送给请求?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)