Java 如何保持jersey响应以等待来自其他webapp的响应,然后发送对请求的响应?

Java 如何保持jersey响应以等待来自其他webapp的响应,然后发送对请求的响应?,java,jax-rs,jersey-2.0,java-websocket,Java,Jax Rs,Jersey 2.0,Java Websocket,我正在使用websocket连接将来自webapp-A的请求转发到另一个webapp-B。我正在webapp-A的ContainerRequestFilter中使用Jersey框架用于webapp和转发请求 ContainerRequestFilter: @Override public void filter(ContainerRequestContext requestContext) throws IOException { Map<String,Sessio

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

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();
        }
       }
@覆盖
公共无效筛选器(ContainerRequestContext requestContext)引发IOException{
Map sessionMap=WebSocketUtil.getSessionMap();
试一试{
字符串clusterId=“hello”;
if(sessionMap.containsKey(clusterId)){
会话当前会话=sessionMap.get(clusterId);
if(当前会话.isOpen()){
//转发请求
WebSocketRequestDto requestDto=新的WebSocketRequestDto(requestContext);
当前会话.getBasicRemote().sendObject(requestDto);
}否则{
sessionMap.remove(clusterId);
}
}
}捕获(编码异常){
System.out.println(“推送请求时出错”);
e、 printStackTrace();
}
}
现在的问题是webapp-A正在发送请求的响应(404未找到),而不等待从websocket获取响应。如何保持jersey响应以等待websocket响应,然后向请求发送响应