Jakarta ee 为什么我能';是否从WSO2 ESB API检索本地注册表项值?

Jakarta ee 为什么我能';是否从WSO2 ESB API检索本地注册表项值?,jakarta-ee,wso2,wso2esb,esb,wso2ei,Jakarta Ee,Wso2,Wso2esb,Esb,Wso2ei,我正在尝试将WSO2本地注册表用于ESB项目 因此,在我的EI项目中,我已将此env.xml文件添加到本地条目文件夹中(然后我将其添加到Maven以包含在项目中): 试验 因此,理论上,我将本地输入定义为key=“env”和文本输入测试作为值 现在,我正在尝试将其检索到一个ESBrestapi中,遵循官方文档()我正在尝试使用get属性(prop name)函数(其中prop name应该是定义的键:env) 在我的API代码中,我有以下内容: <inSequence>

我正在尝试将WSO2本地注册表用于ESB项目

因此,在我的EI项目中,我已将此env.xml文件添加到本地条目文件夹中(然后我将其添加到Maven以包含在项目中):


试验
因此,理论上,我将本地输入定义为key=“env”和文本输入测试作为值

现在,我正在尝试将其检索到一个ESBrestapi中,遵循官方文档()我正在尝试使用get属性(prop name)函数(其中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}
TID:[-1234][[2018-07-05 12:36:44055]信息{org.apache.synapse.mediators.builtin.LogMediator}-
国家ID=1,
Lang ID=1,
env={org.apache.synapse.mediators.builtin.LogMediator}

为什么??怎么了?我错过了什么?如何解决此问题

在本地条目中,您可以提到两种类型

1. Inline Text

2. Inline XML.
正如我看到的,您使用的是内联XML,因为它以.XML结尾(创建XML时不需要指定扩展名
.XML
,因为您已经在选择
内联XML
),如果是这种情况,请使用下面的属性

 <property
        expression="get-property('env')"
        name="Indexing" scope="default" type="OM" xmlns:ns="http://org.apache.synapse/xsd"/>.
因此,您的本地条目应该如下所示

<ROOT_ELEMENT>
Test
</ROOT_ELEMENT>

试验
在此之后,在序列中为属性使用日志中介
$ctx:indexing

<ROOT_ELEMENT>
Test
</ROOT_ELEMENT>