在Json负载中,如何在元素值周围没有方括号的情况下获取元素值?
我正在工作流中使用负载中介来更新我的JSON负载。我已经成功地用传入的请求值更新了负载,并仅以JSON返回输出。但是在我的JSON响应有效负载后的有效负载中介中,我得到了JSON元素的[Value],我更新了该元素的值 我不希望我的JSON元素值包含在[]大括号内。我想要一个简单的输出,比如元素:“Value” 下面是我在使用负载中介后收到的JSON响应。请指导我如何实现所需的输出在Json负载中,如何在元素值周围没有方括号的情况下获取元素值?,json,xml,wso2,wso2ei,Json,Xml,Wso2,Wso2ei,我正在工作流中使用负载中介来更新我的JSON负载。我已经成功地用传入的请求值更新了负载,并仅以JSON返回输出。但是在我的JSON响应有效负载后的有效负载中介中,我得到了JSON元素的[Value],我更新了该元素的值 我不希望我的JSON元素值包含在[]大括号内。我想要一个简单的输出,比如元素:“Value” 下面是我在使用负载中介后收到的JSON响应。请指导我如何实现所需的输出 { "FIXML": { "Header": { "RequestHeader
{
"FIXML": {
"Header": {
"RequestHeader": {
"MessageKey": {
"RequestUUID": [
"FEBA_1553756445880"
],
"ServiceRequestId": "executeFinacleScript",
"ServiceRequestVersion": "10.2",
"ChannelId": "COR"
},
"RequestMessageInfo": {
"BankId": [
"04"
],
"TimeZone": "GMT+05:00",
"EntityId": "",
"EntityType": "",
"ArmCorrelationId": "",
"MessageDateTime": 2020-03-03T16: 59: 10.000
},
"Security": {
"Token": {
"PasswordToken": {
"UserId": "11111",
"Password": ""
}
},
"FICertToken": "",
"RealUserLoginSessionId": "",
"RealUser": "",
"RealUserPwd": "",
"SSOTransferToken": ""
}
}
},
"Body": {
"executeFinacleScriptRequest": {
"ExecuteFinacleScriptInputVO": {
"requestId": [
"validateAcct.scr"
]
},
"executeFinacleScript_CustomData": {
"ACCT_NUM": [
"01122507578"
],
"PHONE_NUM": [
"59887834"
],
"NIC": [
"G2105493001653"
]
}
}
}
}
}
将上述JSON转换为XML,如下所示。
<?xml version="1.0" encoding="UTF-8"?>
<FIXML>
<Body>
<executeFinacleScriptRequest>
<ExecuteFinacleScriptInputVO>
<requestId>
<element>validateAcct.scr</element>
</requestId>
</ExecuteFinacleScriptInputVO>
<executeFinacleScript_CustomData>
<ACCT_NUM>
<element>01122507578</element>
</ACCT_NUM>
<NIC>
<element>G2105493001653</element>
</NIC>
<PHONE_NUM>
<element>59887834</element>
</PHONE_NUM>
</executeFinacleScript_CustomData>
</executeFinacleScriptRequest>
</Body>
<Header>
<RequestHeader>
<MessageKey>
<ChannelId>COR</ChannelId>
<RequestUUID>
<element>FEBA_1553756445880</element>
</RequestUUID>
<ServiceRequestId>executeFinacleScript</ServiceRequestId>
<ServiceRequestVersion>10.2</ServiceRequestVersion>
</MessageKey>
<RequestMessageInfo>
<ArmCorrelationId />
<BankId>
<element>04</element>
</BankId>
<EntityId />
<EntityType />
<MessageDateTime>2020-03-03T18:31:48.000</MessageDateTime>
<TimeZone>GMT+05:00</TimeZone>
</RequestMessageInfo>
<Security>
<FICertToken />
<RealUser />
<RealUserLoginSessionId />
<RealUserPwd />
<SSOTransferToken />
<Token>
<PasswordToken>
<Password />
<UserId>11111</UserId>
</PasswordToken>
</Token>
</Security>
</RequestHeader>
</Header>
</FIXML>
<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<FIXML>
<Body>
<executeFinacleScriptRequest>
<ExecuteFinacleScriptInputVO>
<requestId>
<element />
</requestId>
</ExecuteFinacleScriptInputVO>
<executeFinacleScript_CustomData>
<ACCT_NUM>
<element />
</ACCT_NUM>
<NIC>
<element />
</NIC>
<PHONE_NUM>
<element />
</PHONE_NUM>
</executeFinacleScript_CustomData>
</executeFinacleScriptRequest>
</Body>
<Header>
<RequestHeader>
<MessageKey>
<ChannelId />
<RequestUUID>
<element />
</RequestUUID>
<ServiceRequestId />
<ServiceRequestVersion />
</MessageKey>
<RequestMessageInfo>
<ArmCorrelationId />
<BankId>
<element />
</BankId>
<EntityId />
<EntityType />
<MessageDateTime />
<TimeZone />
</RequestMessageInfo>
<Security>
<FICertToken />
<RealUser />
<RealUserLoginSessionId />
<RealUserPwd />
<SSOTransferToken />
<Token>
<PasswordToken>
<Password />
<UserId />
</PasswordToken>
</Token>
</Security>
</RequestHeader>
</Header>
</FIXML>
</soapenv:Body>
</soapenv:Envelope>
validateact.scr
01122507578
G2105493001653
59887834
COR
费巴乌1553756445880
executeFinacleScript
10.2
04
2020-03-03T18:31:48.000
格林尼治时间+05:00
11111
JSON和XML文件都用作数据映射器的输入和输出。但当我记录消息时,在数据之后,我得到了空XML,如下所示。
<?xml version="1.0" encoding="UTF-8"?>
<FIXML>
<Body>
<executeFinacleScriptRequest>
<ExecuteFinacleScriptInputVO>
<requestId>
<element>validateAcct.scr</element>
</requestId>
</ExecuteFinacleScriptInputVO>
<executeFinacleScript_CustomData>
<ACCT_NUM>
<element>01122507578</element>
</ACCT_NUM>
<NIC>
<element>G2105493001653</element>
</NIC>
<PHONE_NUM>
<element>59887834</element>
</PHONE_NUM>
</executeFinacleScript_CustomData>
</executeFinacleScriptRequest>
</Body>
<Header>
<RequestHeader>
<MessageKey>
<ChannelId>COR</ChannelId>
<RequestUUID>
<element>FEBA_1553756445880</element>
</RequestUUID>
<ServiceRequestId>executeFinacleScript</ServiceRequestId>
<ServiceRequestVersion>10.2</ServiceRequestVersion>
</MessageKey>
<RequestMessageInfo>
<ArmCorrelationId />
<BankId>
<element>04</element>
</BankId>
<EntityId />
<EntityType />
<MessageDateTime>2020-03-03T18:31:48.000</MessageDateTime>
<TimeZone>GMT+05:00</TimeZone>
</RequestMessageInfo>
<Security>
<FICertToken />
<RealUser />
<RealUserLoginSessionId />
<RealUserPwd />
<SSOTransferToken />
<Token>
<PasswordToken>
<Password />
<UserId>11111</UserId>
</PasswordToken>
</Token>
</Security>
</RequestHeader>
</Header>
</FIXML>
<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<FIXML>
<Body>
<executeFinacleScriptRequest>
<ExecuteFinacleScriptInputVO>
<requestId>
<element />
</requestId>
</ExecuteFinacleScriptInputVO>
<executeFinacleScript_CustomData>
<ACCT_NUM>
<element />
</ACCT_NUM>
<NIC>
<element />
</NIC>
<PHONE_NUM>
<element />
</PHONE_NUM>
</executeFinacleScript_CustomData>
</executeFinacleScriptRequest>
</Body>
<Header>
<RequestHeader>
<MessageKey>
<ChannelId />
<RequestUUID>
<element />
</RequestUUID>
<ServiceRequestId />
<ServiceRequestVersion />
</MessageKey>
<RequestMessageInfo>
<ArmCorrelationId />
<BankId>
<element />
</BankId>
<EntityId />
<EntityType />
<MessageDateTime />
<TimeZone />
</RequestMessageInfo>
<Security>
<FICertToken />
<RealUser />
<RealUserLoginSessionId />
<RealUserPwd />
<SSOTransferToken />
<Token>
<PasswordToken>
<Password />
<UserId />
</PasswordToken>
</Token>
</Security>
</RequestHeader>
</Header>
</FIXML>
</soapenv:Body>
</soapenv:Envelope>
请带我到这里。如何正确完成此转换。您用于获取值的JSONPath或XPATH是什么?json eval($…body.AccountNumber)@arunasugunakumar..方括号即将出现,因此我无法验证实际值。我的表达式{$…DrAcct.AcctId}MyOutPut:-[“01022509732”]
<?xml version="1.0" encoding="UTF-8"?>
<FIXML>
<Body>
<executeFinacleScriptRequest>
<ExecuteFinacleScriptInputVO>
<requestId>
<element>validateAcct.scr</element>
</requestId>
</ExecuteFinacleScriptInputVO>
<executeFinacleScript_CustomData>
<ACCT_NUM>
<element>01122507578</element>
</ACCT_NUM>
<NIC>
<element>G2105493001653</element>
</NIC>
<PHONE_NUM>
<element>59887834</element>
</PHONE_NUM>
</executeFinacleScript_CustomData>
</executeFinacleScriptRequest>
</Body>
<Header>
<RequestHeader>
<MessageKey>
<ChannelId>COR</ChannelId>
<RequestUUID>
<element>FEBA_1553756445880</element>
</RequestUUID>
<ServiceRequestId>executeFinacleScript</ServiceRequestId>
<ServiceRequestVersion>10.2</ServiceRequestVersion>
</MessageKey>
<RequestMessageInfo>
<ArmCorrelationId />
<BankId>
<element>04</element>
</BankId>
<EntityId />
<EntityType />
<MessageDateTime>2020-03-03T18:31:48.000</MessageDateTime>
<TimeZone>GMT+05:00</TimeZone>
</RequestMessageInfo>
<Security>
<FICertToken />
<RealUser />
<RealUserLoginSessionId />
<RealUserPwd />
<SSOTransferToken />
<Token>
<PasswordToken>
<Password />
<UserId>11111</UserId>
</PasswordToken>
</Token>
</Security>
</RequestHeader>
</Header>
</FIXML>
<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<FIXML>
<Body>
<executeFinacleScriptRequest>
<ExecuteFinacleScriptInputVO>
<requestId>
<element />
</requestId>
</ExecuteFinacleScriptInputVO>
<executeFinacleScript_CustomData>
<ACCT_NUM>
<element />
</ACCT_NUM>
<NIC>
<element />
</NIC>
<PHONE_NUM>
<element />
</PHONE_NUM>
</executeFinacleScript_CustomData>
</executeFinacleScriptRequest>
</Body>
<Header>
<RequestHeader>
<MessageKey>
<ChannelId />
<RequestUUID>
<element />
</RequestUUID>
<ServiceRequestId />
<ServiceRequestVersion />
</MessageKey>
<RequestMessageInfo>
<ArmCorrelationId />
<BankId>
<element />
</BankId>
<EntityId />
<EntityType />
<MessageDateTime />
<TimeZone />
</RequestMessageInfo>
<Security>
<FICertToken />
<RealUser />
<RealUserLoginSessionId />
<RealUserPwd />
<SSOTransferToken />
<Token>
<PasswordToken>
<Password />
<UserId />
</PasswordToken>
</Token>
</Security>
</RequestHeader>
</Header>
</FIXML>
</soapenv:Body>
</soapenv:Envelope>