SOA中的超时



我有一个应用程序部署在weblogic服务器。在该应用程序中,我通过组合中的bpel调用异步web服务。过了5分钟就超时了。我尝试在调用活动期间添加以下代码:bpelx: = " PTM20"但超时时间还是5分钟

除了添加这个,我还需要做什么吗?是否有任何全局SOA属性需要修改?

我正在通过bpel调用一个aync web服务,像这样:

< invoke name="myprocess"  inputVariable="varx"  operation="method" bpelx:for="'PTM20'" ....>

我得到的异常如下:

<bpelFault><faultType>0</faultType>
<remoteFault xmlns="http://schemas.oracle.com/bpel/extension">
<part name="summary">
<summary>oracle.fabric.common.FabricInvocationException: Unable to invoke endpoint URI "my_webservice_url" successfully due to: javax.xml.soap.SOAPException: javax.xml.soap.SOAPException: Message send failed: Read timed out</summary></part>
<part name="detail"><detail>Unable to invoke endpoint URI "my_webservice_url" successfully due to: javax.xml.soap.SOAPException: javax.xml.soap.SOAPException: Message send failed: Read timed out</detail></part>
<part name="code"><code>null</code></part>
</remoteFault></bpelFault>

在检查Audit Trail时,我可以看到调用和超时之间的时间差是5分钟。它没有像预期的那样等待20分钟。

请帮助。

谢谢。

在配置SOA/BPEL引擎超时时需要考虑以下几点:

  1. 全域JTA全局超时设置
  2. 单个BPEL引擎EJB超时

理想情况下,您永远不希望遇到这些超时,因为您将无法进行适当的错误处理。为了避免这种情况,您应该在传出引用链接上设置单独的超时,并确保它们的值小于上面提到的两个值。

关于这个主题有很多博客文章,初学者可以看看这篇

相关内容

  • 没有找到相关文章

最新更新