【问题标题】:How to Delegate the Session from One service to another Service如何将会话从一个服务委托给另一个服务
【发布时间】:2013-11-19 06:38:17
【问题描述】:

我是服务新手,java.i 将解释我的工作流程。

客户端将调用一个同步服务到服务 1。服务 1 执行一些操作并将会话委托给服务 2。然后服务 1 变得空闲并准备做其他一些工作。服务 2 执行一些操作并响应回客户端.这是否可能像将工作委托给其他服务并回复客户一样。下图让你更清楚。

在 servlet 中,我们可以将响应 (response.sendredirect(url)) 重定向到一些 url,如服务或 html 页面。但我认为响应只是重定向到一些不同的 url,而不是会话正确。所以我想知道上述工作流程是否可行?如果可能,请提供一些代码或参考链接。

【问题讨论】:

    标签: java web-services session servlets


    【解决方案1】:

    您可以使用 RequestDispatcher 类将请求转发到服务 2;
    RequestDispatcher rd = context_object.getRequestDispatcher('url to service 2');
    rd.forward(request, response);

    在服务2里面,你可以使用

    request_object.getSession();
    获取原始会话对象

    【讨论】:

    • 抱歉回复晚了。从哪里得到contex_object。 ServletContext contex_object=request.getServletContext(); 像这样。我使用的是休息服务而不是 servlet。上面的代码给出了空异常。我尝试使用 request.getRequestDispatcher("url2")。但这也在 RequestDispatcher 中给出了空异常。你能提供更多的想法吗..
    猜你喜欢
    • 1970-01-01
    • 2013-12-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-04
    • 2023-03-11
    相关资源
    最近更新 更多