Настроих съобщение за документ, за да го използвам в операция на синхронна услуга. Публикувах тази услуга и използвам SOAPui и вградения тестер за операции на услугата, достъпен директно чрез менюто PeopleTools>Integration Broker>Service Utilities>Service Operation Tester.
Моят проблем: Когато изпратя заявка, пълна с някои стойности и след това я погледна в монитора за синхронна услуга, вече не ги виждам. В някакъв момент Integration Broker изчисти стойностите и не мога да разбера дали това е известна грешка или нещо в моята настройка, което може да е грешно.
Забележка :
- Искането и отговорът са едно и също съобщение.
- Всяко поле в документа има набор от дължина и тип.
- Няма проблем със съобщение, базирано на набор от редове
- Използвам Peopletools 8.52.14
Молбата ми е следната:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:nx="http://xmlns.oracle.com/Enterprise/Tools/schemas/NX_PAC.NX_IB_PERFS_EVENT.VERSION_2a">
<soapenv:Header/>
<soapenv:Body xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<NX_IB_PERFS_EVENT xmlns="http://xmlns.oracle.com/Enterprise/Tools/schemas/NX_PAC.NX_IB_PERFS_EVENT.VERSION_2a">
<EventName>XYZ</EventName>
<PerfsDate>2015-02-09</PerfsDate>
<AverageTiming>0.0</AverageTiming>
<NumberOfExec>0.0</NumberOfExec>
<AveragePost>0.0</AveragePost>
</NX_IB_PERFS_EVENT>
</soapenv:Body>
</soapenv:Envelope>
Входящите стойности EventName
и PerfsDate
ще изчезнат, когато гледате оригиналното входящо съобщение на монитора. Но това не е последователно, тъй като стойностите се показват след рестартиране на PIA.
Ето PeopleCode на моя манипулатор на операции на услугата:
method OnRequest
/+ &_msg as Message +/
/+ Returns Message +/
/+ Extends/implements PS_PT:Integration:IRequestHandler.OnRequest +/
&_msg.GetDocument().GetElement("PerfsDate").value = %Date;
Return &_msg;
end-method;
Изпращам обратно съобщението със заявка и просто задавам дата на етикет PerfsDate
.
В съобщението за отговор стойността на EventName
е празна.
Някакви отзиви за това?