Я пытаюсь использовать WSO2 Local Registry в проекте ESB.
Итак, в своем проекте EI я добавил этот файл env.xml в папку local-records (а затем я добавил его в Maven для включения в проект) :
<?xml version="1.0" encoding="UTF-8"?>
<localEntry key="env" xmlns="http://ws.apache.org/ns/synapse">TEST</localEntry>
Таким образом, в теории я определяю locaEntry , имеющий key = "env" и текстовую строку TEST в качестве значения.
Теперь я пытаюсь получить его в ESB REST API, следуя официальной документации (https://docs.wso2.com/display/ESB481/Local+Registry+Entries) Я пытаюсь получить его с помощью get-property (prop- name) function (где prop-name должно быть определенным ключом: env в моем случае).
В моем коде API у меня есть это:
<inSequence>
<log level="full"/>
<property expression="get-property('uri.var.countryId')" name="countryId" scope="default" type="STRING"/>
<property expression="get-property('uri.var.lang_id')" name="lang_id" scope="default" type="STRING"/>
<log level="custom">
<property expression="$ctx:countryId" name="Country ID"/>
<property expression="$ctx:lang_id" name="Lang ID"/>
<property expression="$ctx:env" name="env"/>
</log>
.........................................................................
.........................................................................
.........................................................................
Как вы можете видеть, я пытаюсь получить и записать содержимое моей env локальной записи, но это то, что я получаю в журнал WSO2:
TID: [-1234] [] [2018-07-05 12:36:44,055] INFO {org.apache.synapse.mediators.builtin.LogMediator} -
Country ID = 1,
Lang ID = 1,
env = <?xml version='1.0' encoding='utf-8'?><soapenv:Envelope xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope"><soapenv:Body/></soapenv:Envelope> {org.apache.synapse.mediators.builtin.LogMediator}
Почему? Что случилось? Чего мне не хватает? Как я могу исправить эту проблему?