我的代理配置和响应如下:
<?xml version="1.0" encoding="UTF-8"?>
<proxy xmlns="http://ws.apache.org/ns/synapse"
name="xxxProxy"
startOnLoad="true"
statistics="disable"
trace="disable"
transports="http,https">
<target>
<inSequence>
<property name="FORCE_HTTP_1.0" scope="axis2" value="true"/>
<salesforce.init>
<username>xxx</username>
<password>xxxx</password>
<loginUrl>https://test.salesforce.com/services/Soap/u/43.0</loginUrl>
</salesforce.init>
<salesforce.query>
<batchSize>200</batchSize>
<queryString>select Name, Formula, Account from uxxx_xxxxxx__xxxxx_c</queryString>
</salesforce.query>
<iterate xmlns:sfdc="http://wso2.org/salesforce/adaptor"
continueParent="true"
expression="//sfdc:iterator">
<target>
<sequence>
<salesforce.queryMore>
<batchSize>200</batchSize>
</salesforce.queryMore>
</sequence>
</target>
</iterate>
<log level="full"/>
<respond/>
</inSequence>
</target>
<description/>
</proxy>
<?xml version='1.0' encoding='utf-8'?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns="urn:partner.soap.sforce.com" xmlns:sf="urn:sobject.partner.soap.sforce.com" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Header>
...
</soapenv:Header>
<soapenv:Body>
<queryResponse>
<result xsi:type="QueryResult">
<done>false</done>
<queryLocator>01g3D00000JFeG9QAL-200</queryLocator>
<records xsi:type="sf:sObject">
...
</records>
...
<size>12806</size>
</result>
<sfdc:iterators xmlns:sfdc="http://wso2.org/salesforce/adaptor">
<sfdc:iterator>Page2</sfdc:iterator>
<sfdc:iterator>Page3</sfdc:iterator>
<sfdc:iterator>Page4</sfdc:iterator>
<sfdc:iterator>Page5</sfdc:iterator>
</sfdc:iterators>
</queryResponse>
</soapenv:Body>
</soapenv:Envelope>
在我的回复中,我只能看到前200行,仅使用“ queryMore”选项,我得到的回复就在下面。 我们如何获得200多个行,迭代方法似乎对我不起作用,或者我丢失了一些东西。