Как прочитать значение из запроса Soap, используя groovy - PullRequest
0 голосов
/ 22 мая 2018

Как я могу получить ******* из идентификатора пользователя из запроса ниже, используя groovy:

soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:rol="http://www.visa.com/ROLSI">
   <soapenv:Header/>
   <soapenv:Body>
      <rol:SIGetBatchQueueRequest>
         <rol:RequestHeader>
            <rol:User id="******" type="internalId"/>
          <rol:MemberRole>A</rol:MemberRole>
         </rol:RequestHeader>
         <rol:RequestData>
            <rol:BatchQueueType>AWAITING_ACTION_BQ_PRE_FILING</rol:BatchQueueType>
            <!--Optional:-->
            <rol:PageNum>?</rol:PageNum>
         </rol:RequestData>
      </rol:SIGetBatchQueueRequest>
   </soapenv:Body>
</soapenv:Envelope>

1 Ответ

0 голосов
/ 22 мая 2018

См. документ .В любом случае на ваш вопрос будет быстрый ответ,

Попробуйте этот код:

String txt = '''<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:rol="http://www.visa.com/ROLSI">
   <soapenv:Header/>
   <soapenv:Body>
      <rol:SIGetBatchQueueRequest>
         <rol:RequestHeader>
            <rol:User id="******" type="internalId"/>
          <rol:MemberRole>A</rol:MemberRole>
         </rol:RequestHeader>
         <rol:RequestData>
            <rol:BatchQueueType>AWAITING_ACTION_BQ_PRE_FILING</rol:BatchQueueType>
            <!--Optional:-->
            <rol:PageNum>?</rol:PageNum>
         </rol:RequestData>
      </rol:SIGetBatchQueueRequest>
   </soapenv:Body>
</soapenv:Envelope>
'''
println new XmlParser().parseText(txt).'soapenv:Body'.'rol:SIGetBatchQueueRequest'.'rol:RequestHeader'.'rol:User'.'@id'
...