- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎07-31-2018 08:06 AM
Hi Community,
I have developed an outbound integration in ServiceNow. For failed transactions, i have created a retry policy and a business rule to create an incident. However while parsing xml, it is giving null value.
I want to parse the below parameter:
\
In my BR, i am using:
var payld = current.input_queue.payload;
var snowgrp = gs.getXMLText(payld,"//http_status_code");
gs.log("Value of snowgrp is"+snowgrp);
Logs:
Any help on this would be appreciated.
Solved! Go to Solution.
- Labels:
-
Integrations

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎07-31-2018 01:41 PM
Well you could either use
var xmlDoc = new XMLDocument(current.input_queue.payload,true);
inc.work_notes = "The incident failed to send notification to end user. Error code is " + xmlDoc.getAttribute("//parameter[@name=\"http_status_code\"]","value");
or
var xmlDoc = new XMLDocument(current.input_queue.payload,true);
var errorCode = xmlDoc.getAttribute("//parameter[@name=\"http_status_code\"]","value");
inc.work_notes = "The incident failed to send notification to end user. Error code is " + errorCode;
Just depends if you want to create a variable for it or just use the parsing directly

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎07-31-2018 08:09 AM
Use this
var xmldoc = new XMLDocument(current.input_queue.payload);
var str = xmldoc.getNodeText("//http_status_code");
gs.log(str);
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎07-31-2018 08:31 AM
Hi Abhinay, Still getting null value.

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎07-31-2018 09:10 AM
Try this
gs.log((/<parameter name="http_status_code" value="(\w*)"\/>/g).exec(current.input_queue.payload)[1]);
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎07-31-2018 10:42 AM
So you mean, shall i replace gs.log(str); with
gs.log((/<parameter name="http_status_code" value="(\w*)"\/>/g).exec(current.input_queue.payload)[1]);
?