Reputation: 993
I have a http-protocol web service test that returns this soap response when put in a parameter:
"\n--uuid:cabe2125-cdda-4cf4-9678-b364921dc1d8\r\nContent-Type: application/xop+xml; charset=UTF-8; type="text/xml";\r\nContent-Transfer-Encoding: binary\r\nContent-ID: <[email protected]>\r\n\r\n<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:Body><ns2:hentDokumentForventningerResponse xmlns:ns2="http://some.com/service/virksomhet/henvendelsesbehandling/v1" xmlns:ns3="http://some.com/service/virksomhet/henvendelse/v1/informasjon"><dokumentForventning><id>400541</id><kodeverkId>2</kodeverkId><innsendingsValg>IKKE_VALGT</innsendingsValg><hovedskjema>false</hovedskjema></dokumentForventning><dokumentForventning><id>400542</id><kodeverkId>ja</kodeverkId><innsendingsValg>IKKE_VALGT</innsendingsValg><hovedskjema>true</hovedskjema></dokumentForventning><dokumentForventning><id>400540</id><kodeverkId>3</kodeverkId><innsendingsValg>IKKE_VALGT</innsendingsValg><hovedskjema>false</hovedskjema></dokumentForventning></ns2:hentDokumentForventningerResponse></soap:Body></soap:Envelope>\r\n--uuid:cabe2125-cdda-4cf4-9678-b364921dc1d8--"
I want to extract the value 400541 first appearing after:
xmlns:ns3="http://some.com/service/virksomhet/henvendelse/v1/informasjon"><dokumentForventning><id>
above. Looking at the response in soapui I see the structure:
soap:Envelope/soap:Body/ns2:hentDokumentForventningerResponse/dokumentForventning/id
and then I am using:
lr_xml_extract("XML={hentDokumentSoapRespons}",
"XMLFragmentParam=OutputParameter",
"Query=/soap:Envelope/soap:Body/ns2:hentDokumentForventningerResponse/dokumentForventning/id", LAST);
But I get the error (did not find any matches):
HentDokumentforventing.c(66): Warning: "lr_xml_extract" did not find any matches
HentDokumentforventing.c(70): Notify: Parameter Substitution: parameter "OutputParameter" = ""
Looking at the response I put in a parameter (the log pasted in above) and wanting to get the value 400541, how could I grab it using lr_xml_extract() and more importantly, which xpath/path would be suggested given the log pasted above?
Upvotes: 1
Views: 3694
Reputation: 1085
Try using the query
/Envelope/Body/hentDokumentForventningerResponse/dokumentForventning[1]/id
Upvotes: 1