2016-10-28 1 views
1

У меня есть приложение, развернутое на сервере weblogic. В этом приложении я вызываю async webservice через bpel в составном. Он истекает через 5 минут. Я попытался добавить следующий код во время операции invoke: bpelx: for = "'PTM20'" Но все же тайм-аут составляет 5 минут.Тайм-аут в SOA

Есть ли что-нибудь, что мне нужно сделать, кроме как добавить это? Есть ли какие-либо глобальные свойства SOA для изменения?

Я вызова в aync WebService через BPEL так:

< 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 минут, как ожидалось.

Пожалуйста, помогите.

Спасибо.

+0

Привет и добро пожаловать на сайт. Не могли бы вы добавить пример файла кода/настроек, чтобы проиллюстрировать, что именно вы делаете, какое исключение вы получаете и какие настройки вы выполняете (если необходимо)? Это поможет потенциальным ответчикам лучше понять, что происходит, и, следовательно, помочь им помочь вам. – Buurman

+0

Спасибо. Я добавил детали. –

ответ

1

Есть пара мест, которые следует учитывать при настройке SOA/BPEL двигателя таймаут: широкие глобальные настройки тайм-аута JTA

  1. домена
  2. индивидуальный EJB BPEL двигатель TimeOuts

В идеале вы никогда не хотите попасть эти таймауты, потому что вы не сможете выполнять правильную обработку ошибок. Чтобы избежать этого, вы должны установить индивидуальные тайм-ауты на исходящие ссылки ссылок и убедиться, что они имеют меньшие значения, чем два упомянутых выше.

Есть много сообщений в блоге доступны по этому вопросу, для начала посмотрим на this post

+0

Спасибо. Я прошел через почту и проверил конфигурацию на своем dev-сервере. Ни одна из этих конфигураций не установлена ​​как 5 минут. Есть ли другая конфигурация, которую я должен проверить? Кроме того, теперь используется следующая строка кода для изменения тайм-аута этого события invoke? bpelx: for = "'PTM20'" Спасибо –

+0

Я добавил свой ответ перед тем, как вы включили более подробную информацию в свой вопрос. Из того исключения, которое вы получаете, я предполагаю, что вы вызываете веб-службу на основе SOAP. Чтобы увеличить таймаут, вы должны установить свойство «HTTP Read Timeout» на ссылку ссылки. Это можно сделать во время выполнения через консоль EM. –

+0

Да. Я думаю, что это именно то свойство, которое мне нужно изменить. В справочной ссылке под консолью EM они упомянули свойства администрирования SOA -> BPEL. Мне не удалось найти свойство HTTP Read Timeout. Также я проверил SoaInfraConfig. Пожалуйста, помогите мне найти эту недвижимость в EM. Спасибо –

Смежные вопросы