2017-01-27 8 views
0

Я создаю прокси в Oracle Service Bus 11G для веб-службы. После получения запроса и ответа 200, все в порядке, OSB возвращает тот же код 200.return oracle служебная шина код ошибки

Теперь в моем WebService я поднимаю ошибку 400, 406, 403 и т.д. в зависимости от некоторой логической обработки, но ОРБ всегда поднимает ошибку 500.

Там в способе сделать ОСБ вперед простой ответ, включая ошибки код?

спасибо.

ответ

3

Добавить обработчик ошибок в бизнес-службе

Извлечение переменных из data($fault//*:http-response-code) и data($fault//*:reason) (или что-то подобное

Вставка:

<http:http-response-code>$response_code_variable</http:http-response-code>
, как последний ребенок
./ctx:transport/ctx:response
В переменной - $inbound

Вставка:

<tp:response-message>$response_reason_variable</tp:response-message>
после ./ctx:transport/ctx:response/ctx:response-code
В Variable - $inbound

+1

работал! Спасибо! –

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