我得到一个错误
参数更新的元素
<Batch>
缺失或无效
试图删除sharepoint存储库中的文件。我的请求是:
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<ns0:UpdateListItems xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns0="http://schemas.microsoft.com/sharepoint/soap/">
<ns0:listName>1e473281-959d-4a7f-952f-08aaccc3470e</ns0:listName>
<ns0:updates>
<ns0:Batch OnError="Continue">
<ns0:Method ID="1" Cmd="Delete">
<ns0:Field Name="ID">1</ns0:Field>
<ns0:Field Name="FileRef">repisitoryurl/sites/Repo2/Repository/filename.docx</ns0:Field>
</ns0:Method>
</ns0:Batch>
</ns0:updates>
</ns0:UpdateListItems>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
我在Tibco BusinessWorks过程中通过java代码执行此调用。我得到的响应是
Http服务器返回5XX状态码
来自IIS,所以实际的错误来自IIS日志。有趣的是,这个调用在通过soapUI执行时工作得很好。上面的请求也是来自IIS日志,只是为了确定它到达时的样子。当然,我正在调用一个适当的服务,这是repositoryurl/sites/Repo2/_vti_bin/Lists.asmx.
有谁知道我做错了什么吗?您是否尝试通过tcp网关等工具路由您的请求?它可能有助于找出来自TIBCO BW和SOAPUI的请求之间的差异,因为必须有差异;)
您提到您正在使用Java代码来执行SOAP请求,而不是使用BW的任何内置特性。请与我们分享您的Java代码。Java代码独立运行(在BW之外)是否正确?通常我建议使用BW SOAP或Service活动来发出SOAP请求。您可以通过在URL后面附加"?"来获得所需的WSDL。wsdl":http://repositoryurl/sites/Repo2/_vti_bin/Lists.asmx?wsdl