如何使用soapUI测试MTOM Web服务?

时间:2010-01-07 19:01:29

标签: soap web-services soapui mtom

我已经构建了一个包装Apache FOP的网络服务。您发送XML,它会为您提供包含呈现的PDF的MTOM流。现在它正在运行,我想对它进行一些性能测试。 soapUI says they support MTOM,我将其用于我的所有其他Web服务性能测试,因此如果我不必编写自定义测试工具,那就太棒了。

所以这就是问题:我在soapUI中得到了回复,看起来像这样:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
   <soapenv:Body>
      <ns2:RenderDocumentResponse xmlns:ns2="http://webservices.cscinfo.com/renderService">
         <ns2:Content>
            <ns2:fileName xsi:nil="1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
            <ns2:fileType>pdf</ns2:fileType>
            <ns2:mimeType>application/pdf</ns2:mimeType>
    <ns2:binaryData>JVBERAkAAiNkRUcERRkaYIMijggKNDkbEiioUBUbHrBBlE1HFwFBuWSWStGd+8ee/Nm98f935rn73P3Wfvfda6AJD8gwXCTFgJgAyhWBTh58WIjYtnYAcBDPAAA2wA4HCzs0IW+EYCmQJ82IxsmRP4F726DiD5+yrTP4zBAP+flLlZIjEAUJiM5/L42VwZF8k4PVecJbdPyZi2NE3OMErOIlmCMlaTc</ns2:binaryData>
         </ns2:Content>
         <ns2:message>file rendered</ns2:message>
      </ns2:RenderDocumentResponse>
   </soapenv:Body>
</soapenv:Envelope>

如何让soapUI为我转储和解码二进制数据?我想确保它是一个有效的PDF和所有这些。 (我为了简洁而截断了响应中的数据,并将其用于保护内疚!所以这篇文章中不是真正的PDF数据)

更新:这是soapUI在“原始”响应标签中显示的内容:

HTTP/1.1 200 OK
Date: Wed, 13 Jan 2010 17:02:31 GMT
Transfer-Encoding: chunked
Content-Type: text/xml; charset=UTF-8
X-Powered-By: Servlet/2.5 JSP/2.1

2 个答案:

答案 0 :(得分:2)

是否使用MTOM打包返回binaryData内容,或者是否在消息中内联了二进制数据? (您可以在soapUI的原始响应查看器中看到这一点)

如果是附件,则应在响应窗口底部的响应附件选项卡中具有相应的附件。

如果这没有帮助,请在eviware.com的soapUI论坛上提出问题并附上原始回复消息的屏幕截图..

问候!

/ OLE eviware.com

答案 1 :(得分:2)

这对我有用:

  • 首先,设置您的请求属性以启用MTOM

enter image description here

  • 然后,当您收到回复时,请打开附件标签,然后点击小按钮(参见图片)以导出附件

enter image description here