0

I'm getting an error

Element <Batch> of parameter updates is missing or invalid

when trying to delete a file in sharepoint repository. My request is:

<?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>

I'm performing this call through java code in Tibco BusinessWorks process. The response I'm getting is

The Http Server replied with a 5XX status code

from IIS so the actual error comes from IIS logs. The interesting part is that this exact call works well when performed through soapUI. The above request is also from the IIS logs just to be sure how it looks when it gets there. Of course I'm calling a proper service which is repositoryurl/sites/Repo2/_vti_bin/Lists.asmx.

Would anyone have an idea on what I'm doing wrong?

Yodan Tauber
  • 3,907
  • 2
  • 27
  • 48

2 Answers2

0

Did you try route your request through a tool like tcp gateway. It might help figure out what's the difference between the request from TIBCO BW and SOAPUI as there must be a difference ;)

Seb
  • 684
  • 4
  • 11
0

You mentioned that you are using Java code to execute the SOAP request, rather than using any of the built-in feature of BW. Please share your Java code with us. Does the Java code work correctly standalone (outside BW)? Typically I would recommend to use the BW SOAP or Service activities to issue a SOAP request. You can get the required WSDL by appending your URL with "?wsdl":

http://repositoryurl/sites/Repo2/_vti_bin/Lists.asmx?wsdl

hsiegeln
  • 116
  • 4