SOAP信封到sharepoint Web服务以管理上载文件

时间:2013-09-19 14:21:10

标签: xml web-services sharepoint soap

我必须将SOAP信封发送到sharepoint webservice以管理将文件上传到sharepoint。但我不想使用C#代码。

我使用网络服务副本(_vti_bin / copy.aspx)。

我使用标题SOAPAction http://schemas.microsoft.com/sharepoint/soap/CopyIntoItems

发送信封

以下是我发送的SOAP信封示例:

<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <CopyIntoItems xmlns="http://schemas.microsoft.com/sharepoint/soap/">
        <SourceUrl>test.txt</SourceUrl>
        <DestinationUrls>
            <string>[URLsite]/Files/test.txt</string>
        </DestinationUrls>
        <Stream>[stream of file]</Stream>
        </CopyIntoItems>
    </soap12:Body>
</soap12:Envelope>

在源代码中,我输入了文件名。 对于目的地,我把网站的网址放在应该上传文件的文件名中(并且没有文件名进行测试) 对于流文件,它在base 64中编码为测试文件:

dGVzdHR0dHR0dHR0dA==

它不起作用,所以我收到此错误:

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <soap:Body>
        <CopyIntoItemsResponse xmlns="http://schemas.microsoft.com/sharepoint/soap/">  
            <CopyIntoItemsResult>0</CopyIntoItemsResult>
            <Results>
                <CopyResult ErrorCode="Unknown" ErrorMessage="Object reference not set to an instance of an object." DestinationUrl="[URLsite]/Files/test.txt" />
            </Results>
        </CopyIntoItemsResponse>
    </soap:Body>
</soap:Envelope>

我还测试了DestinationUrl =“[URLute] / Files” - &gt;我有同样的错误。 如果你看到可能阻塞的东西......那将是完美的。

此外,我并不真正理解可以在信封中使用的FieldInformation,并且可能应该用于设置保存文件的属性。一个小例子对我很有帮助。

顺便说一句,我非常有兴趣获得激活Sharepoint批准电路的示例以及Workflow.asmx webservice的几个示例。 顺便说一句,如果您有一个使用Web服务Workflow.asmx激活Sharepoint批准电路的示例,我很感兴趣。

非常感谢,

0 个答案:

没有答案