Data retrieval from REST web service take a long time. Alternatives?

Currently I am retrieving data from Rest web service in XML format. I am using this data in form drop downs:
1. Calculate count of records in XML
2. Parsing with XPATH XML for every count and populate Text variables for display labels and values.
The problem is, it takes a long time for data processing and variables population. What is a better approach to do the same.

OriginalPostID-148309

OriginalPostID-148309

  Discussion posts and replies are publicly visible

Parents
  • Thanks for your respond. I am already using function xpathsnippet.
    My XML:
    <orgUnitDataCollection>
              <orgUnitData>
                        <orgUnit>FC3/BU3/C3</orgUnit>
                        <orgUnitId>8ac498cd2c9d0cb3012ca33fc47a03c5</orgUnitId>
              </orgUnitData>
              <orgUnitData>
                        <orgUnit>FC4/BU4/C3</orgUnit>
                        <orgUnitId>8ae0a12c4938893d014939145936000f</orgUnitId>
              </orgUnitData>
    </orgUnitDataCollection>
    I've created rule for XML parsing:
    XPATH_getValueAtIndexforOrgunitData
    =xpathsnippet(ri!xmlMessageToParse, "string((//orgUnitData)["& ri!index &"]/"& ri!tagName &")")

    I am using this rule for parsing:
    values -- > rule!XPATH_getValueAtIndexforOrgunit ( pv!xmlOrgUnitData , "orgUnitId" , tp!instanceindex )
    display labels -- > rule!XPATH_getValueAtIndexforOrgunit ( pv!xmlOrgUnitData , "orgUnit" , tp!instanceindex )
    The problem is, when I have a lot of nodes in Xml (50-100) It takes 5-10 minutes for data parsing.
Reply
  • Thanks for your respond. I am already using function xpathsnippet.
    My XML:
    <orgUnitDataCollection>
              <orgUnitData>
                        <orgUnit>FC3/BU3/C3</orgUnit>
                        <orgUnitId>8ac498cd2c9d0cb3012ca33fc47a03c5</orgUnitId>
              </orgUnitData>
              <orgUnitData>
                        <orgUnit>FC4/BU4/C3</orgUnit>
                        <orgUnitId>8ae0a12c4938893d014939145936000f</orgUnitId>
              </orgUnitData>
    </orgUnitDataCollection>
    I've created rule for XML parsing:
    XPATH_getValueAtIndexforOrgunitData
    =xpathsnippet(ri!xmlMessageToParse, "string((//orgUnitData)["& ri!index &"]/"& ri!tagName &")")

    I am using this rule for parsing:
    values -- > rule!XPATH_getValueAtIndexforOrgunit ( pv!xmlOrgUnitData , "orgUnitId" , tp!instanceindex )
    display labels -- > rule!XPATH_getValueAtIndexforOrgunit ( pv!xmlOrgUnitData , "orgUnit" , tp!instanceindex )
    The problem is, when I have a lot of nodes in Xml (50-100) It takes 5-10 minutes for data parsing.
Children
No Data