Я создаю ответ SOAP в Dataweave. Определенные компоненты (ESBHeader) ответа повторяются в нескольких потоках. Мне также нужно установить код статуса и сообщение для каждого запроса.
Мне нужен общий / общий способ загрузки этих повторяющихся строк в общий файл dwl для оптимизации кода. Как мне это сделать?
Пример ответного сообщения1 потока1
{
ns1#ResponseMsg1: {
ns0#ESBHeader: {
ns0#InitialContext @(CreationTime: flowVars.req.ResponseMsg1.ESBHeader.InitialContext.@CreationTime, TrackingID: flowVars.req.ResponseMsg1.ESBHeader.InitialContext.@TrackingID): {
ns0#Actor @(Component: flowVars.req.ResponseMsg1.ESBHeader.InitialContext.Actor.@Component , Operation: flowVars.req.ResponseMsg1.ESBHeader.InitialContext.Actor.@Operation): null
},
ns0#MessageContext : {
ns0#Actor @(Component: flowVars.req.ResponseMsg1.ESBHeader.MessageContext.Actor.@Component , Operation: flowVars.req.ResponseMsg1.ESBHeader.MessageContext.Actor.@Operation): null
},
ns0#Status: {
ns0#Code: "Success",
ns0#Message: ""
}
},
ns1#var1: flowVars.var1
}
}
Пример ответного сообщения2 потока2
{
ns1#ResponseMsg2: {
ns0#ESBHeader: {
ns0#InitialContext @(CreationTime: flowVars.req.ResponseMsg2.ESBHeader.InitialContext.@CreationTime, TrackingID: flowVars.req.ResponseMsg2.ESBHeader.InitialContext.@TrackingID): {
ns0#Actor @(Component: flowVars.req.ResponseMsg2.ESBHeader.InitialContext.Actor.@Component , Operation: flowVars.req.ResponseMsg2.ESBHeader.InitialContext.Actor.@Operation): null
},
ns0#MessageContext : {
ns0#Actor @(Component: flowVars.req.ResponseMsg2.ESBHeader.MessageContext.Actor.@Component , Operation: flowVars.req.ResponseMsg2.ESBHeader.MessageContext.Actor.@Operation): null
},
ns0#Status: {
ns0#Code: "Failure",
ns0#Message: ""
}
},
ns1#var1: flowVars.var1,
ns1#var2: flowVars.x.var2
}
}
Любые указатели очень ценятся.
Большое спасибо.