Forum Discussion

opferlamm's avatar
opferlamm
New Member
10 years ago

XMl Parse Problems

Hello,

 

im a Bloody Rookie with Soap and XML and i  try to get some values out of an XML request using Groovy Script. Sadly it doesnt work the way i want.

 

Here is my Response:

 

<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
   <S:Body>
      <ns4:customerSnapshotResponse xmlns:ns4="http://webservice.coraltreesystems.com" xmlns:ns3="http://pojo.macroProcessor.zentive.com" xmlns:ns2="http://pojo.ssi.zentive.com" xmlns="com.zentive.webservice">
         <ns4:out>
            <ns4:equipSnapshotList>
               <ns4:dataPairs>
                  <entry>
                     <key xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">ITEM_NUMBER</key>
                     <value xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">4366666</value>
                  </entry>
                  <entry>
                     <key xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">SERIAL_NUMBER</key>
                     <value xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">11965066209921</value>
                  </entry>
                  <entry>
                     <key xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">MAC_ADDRESS</key>
                     <value xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">11965066209921</value>
                  </entry>
                  <entry>
                     <key xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">TX</key>
                     <value xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">0,000000000</value>
                  </entry>
                  <entry>
                     <key xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">RX</key>
                     <value xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">0,000000000</value>
                  </entry>
                  <entry>
                     <key xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">SNR</key>
                     <value xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">0,000000000</value>
                  </entry>
               </ns4:dataPairs>
            </ns4:equipSnapshotList>
            <ns4:equipSnapshotList>
               <ns4:dataPairs>
                  <entry>
                     <key xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">ITEM_NUMBER</key>
                     <value xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">1888999</value>
                  </entry>
                  <entry>
                     <key xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">SERIAL_NUMBER</key>
                     <value xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">UAAP43513996</value>
                  </entry>
                  <entry>
                     <key xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">MAC_ADDRESS</key>
                     <value xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">647C349A5C9F</value>
                  </entry>
                  <entry>
                     <key xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">TX</key>
                     <value xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">42,800000000</value>
                  </entry>
                  <entry>
                     <key xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">RX</key>
                     <value xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">6,300000000</value>
                  </entry>
                  <entry>
                     <key xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">SNR</key>
                     <value xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">36,600000000</value>
                  </entry>
               </ns4:dataPairs>
            </ns4:equipSnapshotList>
            <ns4:success>true</ns4:success>
            <ns4:errors/>
            <ns4:transactionReference>?</ns4:transactionReference>
            <ns4:moreItems>false</ns4:moreItems>
         </ns4:out>
      </ns4:customerSnapshotResponse>
   </S:Body>
</S:Envelope>

 

 

and this is the Script i got so far

 

def response = context.expand( '${Snapshot#Response#declare namespace ns4=\'http://webservice.coraltreesystems.com\'; //ns4:customerSnapshotResponse[1]}' )
def groovyUtils = new com.eviware.soapui.support.GroovyUtils( context )
def holder = groovyUtils.getXmlHolder("response")
log.info holder['//S:Envelope/S:Body/ns4:customerSnapshotResponse/ns4:out/ns4:equipSnapshotList/ns4:dataPairs/entry/key']
log.info holder['//S:Envelope/S:Body/ns4:customerSnapshotResponse/ns4:out/ns4:equipSnapshotList/ns4:dataPairs/entry/value']

 

Here ist the Result of my Script

 

Wed Apr 15 16:24:52 CEST 2015:INFO:[Ljava.lang.String;@29ec2f6c
Wed Apr 15 16:24:52 CEST 2015:INFO:[Ljava.lang.String;@511d70f4

 

It would be Kind if anyone could help me and Excuse my Bad English

No RepliesBe the first to reply