最详细的使用 soapui 消费 SAP Cloud for Customer Web service 的教程

本文就以SAP Cloud for Customer的web service消费这个需求为例,来讲解soapui这个工具的使用步骤。

使用soapui消费web service,最简单的方式是在soapui里直接导入web service的WSDL文件。

为此,我们需要先拿到SAP C4C标准web service的WSDL文件。

  1. Go to workcenter Administrator, then Input and Output management->Service Explorer, you can get a list of all standard inbound services here.

在administator工作中心的input and output management里找到想消费的web service:

clipboard1

点击超链接,把它的WSDL文件下载下来。

If you are working in 1605, you can find a list of all standard web services from SAP help:

clipboard2

Since I would like to query Opportunity data, I choose QueryOpportunityIn, and click “Show full documentation”:

clipboard3

The documentation tells me how to fill the request detail in SoapUI.

  1. Download and install SoapUI. Create a new SOAP project by loading the WSDL downloaded from previous step.

下载安装soapui,此处导入第一步下载的WSDL文件。

clipboard4

Suppose I would like to retrieve this opportunity data in my C4C system by querying its id:

clipboard5

Of source this example might not make much sense from business perspective as in real world we tend to use other criteria like customer name to query Opportunity.
Paste the following xml source code in request view to query on Opportunity 15360.

把下列的XML字符串复制到soapui面板里:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:glob="http://sap.com/xi/SAPGlobal20/Global" xmlns:zzz="http://sap.com/xi/AP/CustomerExtension/BYD/ZZZZZ">
   <soapenv:Header/>
   <soapenv:Body>
      <glob:OpportunityByElementsQuery_sync_V1>
         <!--Optional:-->
         <OpportunitySelectionByElements>
            <!--Zero or more repetitions:-->
            <SelectionByIdentifier>
               <!--Optional:-->
               <InclusionExclusionCode>I</InclusionExclusionCode>
               <IntervalBoundaryTypeCode>1</IntervalBoundaryTypeCode>
               <!--Optional:-->
               <LowerBoundaryIdentifier>15360</LowerBoundaryIdentifier>
            </SelectionByIdentifier>
         </OpportunitySelectionByElements>
      </glob:OpportunityByElementsQuery_sync_V1>
   </soapenv:Body>
</soapenv:Envelope>

复制结束之后是这样的:这段字符串是我给soapui发起的web service的请求负载:

clipboard6

Execute this request, I meet with error message: 401 Unauthorized.

执行soapui请求,遇到了401 错误,原来我忘记维护用户名和密码了。

clipboard7

Then I manually maintained my business user and password in request property view:

此处维护消费这个web service的用户名和密码:

clipboard8

You might also need to maintain proxy setting for SoapUI according to your network landscape.

如果在企业内网的防火墙里使用soapui,还需要在此处设置代理服务器:

clipboard9

Once you have finished all such settings, execute request again and now you can see response as expected:

一切就绪之后,使用soapui能看到web service执行的响应内容了:

clipboard10

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

汪子熙

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值