я получил следующий сценарий:XQuery Обработка ошибок
XQUERY:
declare namespace xs = "http://www.w3.org/2001/XMLSchema";
declare variable $udgHeader external;
let $msg-name := upper-case($udgHeader/msg-name/text())
let $recipient := upper-case($udgHeader/recipient/text())
return
<recipients>
<recipient>
<dest>
{
if (($msg-name = "ARS_ISTP") and ($recipient = "ISTP")) then
'IstpArs'
else if (($msg-name = "ARS_ESM") and ($recipient = "ESM")) then
'EsmArs'
else
error(xs:QName('fase'), concat("Unknown msg-name/recipient combination ['", $msg-name,"'/'", $recipient, "']! Please check fase recipient list."))
}
</dest>
</recipient>
</recipients>
Мой входящий XML выбросит ошибку.
Эта ошибка Я хочу сравнить с файлом (ожидаемый результат) с Java (отрицательный тест).
ожидается содержание Результат:
Unknown msg-name/recipient combination ['ARS_XYZ'/'ARS']! Please check fase recipient list.
Моя проблема в том, что я получаю эту ошибку:
org.apache.xmlbeans.XmlRuntimeException: weblogic.xml.query.exceptions.XQueryUserException: line 29, column 5: fase: Unknown msg-name/recipient combination ['ARS_XYZ'/'ESM']! Please check fase recipient list.
Как я могу справиться с этой ошибкой, чтобы соответствовать моим ожидаемый результат?