Текущее время: Пн, июн 22 2026, 14:50

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 3 ] 
Автор Сообщение
 Заголовок сообщения: Как-нибудь можно обработать ошибку SOAP-адаптера?
СообщениеДобавлено: Вт, фев 21 2012, 10:25 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Пн, авг 29 2011, 08:54
Сообщения: 318
Откуда: Владивосток, Россия
Пол: Мужской
Добрый день!

Натолкнулся на проблему: при синхронном запросе Web-сервиса смоделировал ошибку связи. Выяснил, что при этом возникает System exception и в качестве ответа возвращается:

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
- <!-- Inbound Message
-->
- <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="1">
<SAP:Category>XIAdapterFramework</SAP:Category>
<SAP:Code area="MESSAGE">GENERAL</SAP:Code>
<SAP:P1 />
<SAP:P2 />
<SAP:P3 />
<SAP:P4 />
<SAP:AdditionalText>com.sap.engine.interfaces.messaging.api.exception.MessagingException: java.net.ConnectException: Connection refused</SAP:AdditionalText>
<SAP:Stack />
<SAP:Retry>M</SAP:Retry>
</SAP:Error>

Сначала вставал колом интеграционный процесс. После того, как настроил для шага Send обработку System Exception, процесс нормально продолжается. Но хотелось бы что-нибудь выдернуть из возвращаемого сообщения, чтобы передать отправителю информацию об ошибке.
Может кто знает, существует ли способ это сделать в данном случае? Пробовал покопаться с Fault Message, но оно используется в случае Proxy или RFC, для SOAP - никак.

_________________
У меня два правила:
1. Не говорить всего, что знаю.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Как-нибудь можно обработать ошибку SOAP-адаптера?
СообщениеДобавлено: Вт, фев 21 2012, 14:27 
Директор
Директор

Зарегистрирован:
Вт, июл 18 2006, 17:44
Сообщения: 1001
Откуда: что и все
Пол: Мужской
да, это известное неудобство.
Не знаю, разрулили ли в 7.3, но ещё в прошлом году советовали либо включить уровень трассировки и копаться в логах либо вызвать с теми же параметрами через какой-нибудь soapUI либо настроить работу через прокси (если SOAP без Axis то он это поддерживает, если с Axis то все axis-вызовы идут через прокси в джава-свойствах) и ловить ошибку там. У меня была мысль написать локальный прокси в иксае, делать вызовы через него и ловить ошибку самому, пробрасывая её обратно.

В общем, красивого готового решения я не знаю.

_________________
Telegram-chat: PO, CPI-PI, java, groovy


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как-нибудь можно обработать ошибку SOAP-адаптера?
СообщениеДобавлено: Ср, фев 22 2012, 19:20 
Ассистент
Ассистент
Аватара пользователя

Зарегистрирован:
Вт, сен 25 2007, 13:27
Сообщения: 45
Откуда: Москва, АНТ-Информ (Газпром)
Пол: Мужской
Чисто теоретически думаю, что можно через адаптер модуль разрулить, т.е. попытаться поменять статус сообщения с Fault на нормальный. Хотя на сколько помню, в 7.0 этого API не позволяла, а в 7.1 и 7.3 пока мало опыта с апишкой для адаптер модуля.

_________________
Ерин Саня: А я напишу свой SAP ...с блэкджеком и шлюх*ми


Принять этот ответ
Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 3 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: Google [Bot]


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB