我有一个@WebService
类。如果我与客户建立连接,有时任务可能会持续几分钟。首先,如果此任务完成,soap 应该返回响应。
这意味着客户端和网络服务器之间的单个请求的连接在这个较长的请求期间不应超时。
如何配置此过程的超时?如果它是可配置的,是在客户端还是服务器端完成?
谢谢
最佳答案
服务器端
我会按照您的任何其他请求来配置它。对于服务器来说,它是网页还是 XML SOAP 消息(Web 服务)并不重要。在 apache tomcat 中,您可以在应用程序的 Web.xml 文件中配置服务器 session 超时持续时间。 JBoss 和其他应用服务器应该是一样的。下面的示例将 session 超时设置为 30 分钟。
<session-config>
<session-timeout>30</session-timeout>
</session-config>
客户端
大多数 SOAP 客户端使用
Connection: Keep-Alive
在请求的 HTTP header 中,因此这不应该是问题。
关于java - 单个请求的 SOAP Web 服务保持 Activity 状态?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12121711/