Forum Discussion

atlas's avatar
atlas
New Contributor
9 years ago

Property transfer - transfer only part of the response

Hi,

I am new to SoapUI webservices testing and I have problem with property transfer.

I am using http://www.webservicex.net/country.asmx?WSDL

 

I have created test case with 3 steps:

1. step is request GetCountryByCountryCode

2. step is property transfer

3. step is request: GetCurrencyByCountry

 

I want to use response of request 1 as input in request 2 (GetCurrencyByCountry) but the problem is that the response of the Req1 is the table like this:

 

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body>
<GetCountryByCountryCodeResponse xmlns="http://www.webserviceX.NET">
<GetCountryByCountryCodeResult><![CDATA[<NewDataSet>
<Table>
<countrycode>uk</countrycode>
<name>United Kingdom</name>
</Table>
<Table>
<countrycode>uk</countrycode>
<name>United Kingdom</name>
</Table>
</NewDataSet>]]></GetCountryByCountryCodeResult>
</GetCountryByCountryCodeResponse>
</soap:Body>
</soap:Envelope>

 

And I need to use/transfer only node <name>United Kingdom</name> to the second request input.

 

How can I define this in Property transfer source/target XPath?

 

Thank you.

5 Replies

  • nmrao's avatar
    nmrao
    Champion Level 3
    There are two names with United Kingdom, how do you decide which one to extract it first, later it can be transfered which is secondary.
    • atlas's avatar
      atlas
      New Contributor

      Let's say I want to trasnsfer the first node with name :United Kingdom. So how will I define this in Property trasnfer XPath?

      • nmrao's avatar
        nmrao
        Champion Level 3
        Usually, one should be able to do it using xpath.

        But your case is that data is wrapped inside CDATA which is treated as string not xml.

        To do this, first cdata has to be extracted and converted it to xml to get the name you looking for?
        By the way, do you get the same number of Table elements or there is possibility to get more or none as well in the result?