I would like to get the count of some particular node from input XML and use it in my match script when I am doing JMS virtualization with xml data protocol. In "Listen" step, I am trying to filter some node and get the count of that particular node- say ex:- "count(/Emp/Dept/City/Name)" and I would like to get the count of name. This complete hierarchy may come multiple times so I might have multiple "Name" to my xml.
The same activity when I try to do in http service, I am able to get this with xpath filter filtering in “lisa.vse.http.current.transaction.body” and I get the desired result. But same when I try to do in JMS virtualization, in which property or variable it stores incoming xml request which can be used here and apply xpath filter will work on that. Is there any other workaround to get the node count? Please suggest.
I tried with "lisa.vse.request" as this is the property which contains the values of operation and arguments but not getting desired result . Which property value store "request xml payload" on which I can apply filter and get the desired result.
Thanks,
Ritu
Currently, the short answer is there is no equivalent in the JMS transport protocol to lisa.vse.http.current.transaction.body.
You can do it another way with a short Java Script step:
return testExec.getStateObject("lisa.vse.request").getBodyAsString();
You can also embed this easily in other steps as a script property:
{{=testExec.getStateObject("lisa.vse.request").getBodyAsString();}}