我有一个场景,我需要从属性文件中获取值,而我需要获取的值将来自变量。
我的道具档案
org1 =active
org1_oracle_user = blah
org1_oracle_password = blahblah
org2 =active
org2_oracle_user = blah2
org2_oracle_password = blah2blah2
org3 = Active
org3_oracle_user = blah3
org3_oracle_password = blah3blah3
现在我通过一些输入得到了组织的价值,我能够保存到某个变量中。
<set-variable variableName="org_name" value="org1" doc:name="OrgNameVariable" />
此外,我可以通过dataweave
获取该组织的状态是否有效<set-variable variableName="orgTypeStatus" value="#[dw('p(flowVars.org_name)')]" doc:name="orgTypeStatusVariable" />
我能够将值检索为有效值
但是现在我如何将其他键值附加到流变量org_name 获得他们的用户和密码
<set-variable variableName="m_user" value="#[dw('p(flowVars.org_name.concat('_oracle_user'))')]" doc:name="user"/>
上面的代码无效,表示执行表达式失败。
我给出了一个示例示例,因为有其他基于组织名称的道具,我无法对其进行硬编码
答案 0 :(得分:1)
你可以尝试这个表达式: -
#[dw('p(flowVars.org_name ++ "_oracle_user")')]
因此,您需要在表达式中转义""
,因此XML配置中的变量将如下所示: -
<set-variable variableName="m_user" value="#[dw('p(flowVars.org_name ++ "_oracle_user")')]" doc:name="user"/>