我正在构建一个应用程序,它从jsp获取一些参数,并使用socket将这些参数发送到另一个服务器。得到回应后,我必须处于连续监听模式。如何使用响应更新jsp(来自其他服务器)。
a.jsp - >请求b.jsp。在b.jsp中,它调用初始化与另一个服务器的调用。在b.jsp函数中,它得到响应。但是如何在jsp页面上显示。
答案 0 :(得分:1)
得到回应后我必须进入 持续的聆听模式。我怎么能够 用响应更新jsp(哪个 来自另一台服务器。)
这可以完成,但很可能在某个时间点后失败,原因是客户端/浏览器断开连接,或者服务器断开连接,或者中间节点丢弃连接。这些超时的持续时间仅在一定程度上是确定性的(但通常在几秒的数量级);在可靠地预测该值之前,应该知道网络中的所有节点。
还有其他原因导致失败 - 应用程序服务器可能被配置为禁止从servlet容器连接到其他服务器,或者服务器可能只是在线程被卡住的情况下终止线程上的任何进一步处理(并且不会回应。)
如果你已经决定继续进行尽管上面的失败警告,那么实现这个的机制是在JSP页面中实现一个循环来监听你创建的这个套接字并将响应发布到客户端通常会这样做。
如果您希望以故障安全方式执行此操作,请使用AJAX,因为我怀疑您不打算刷新JSP页面。
答案 1 :(得分:0)
从jsp中创建一个HttpURLConnection,并获取HttpURLConnection的输入流。从inputream读取数据并将其写入jsp writer。 您可以编写自定义标记来执行此操作。或者,检查一个是否已存在。