java - 使用 Java 通过 Sharepoint Web 服务访问定期日历事件

标签 java web-services sharepoint

我正在为 iOS 移动应用程序开发 Web 服务(使用 Java),作为要求的一部分,需要获取 SharePoint 中所有定义的日历事件的所有重复情况。我能够为此生成所有 stub ,并使用 getListItems 方法获取日历事件列表,没有任何问题。但我无法使用此方法来获取循环数据。我尝试了许多不同的查询和查询选项参数,每次都失败并显示 javax.xml.ws.soap.SOAPFaultException。

使用 getListItems 方法,我能够像这样检索日历事件列表,但不能检索重复:

<z:row ows_Created="2012-03-30 17:07:49"
    ows_EndDate="2012-06-04 16:30:00"
    ows_EventDate="2012-04-02 14:00:00"
    ows_FSObjType="881;#0"
    ows_FileRef="881;#teamsite/SCM/Lists/CIG ISTQA Build  Deployment Calender/881_.000"
    ows_ID="881" ows_MetaInfo="881;#"
    ows_Title="IST7 (COL + nJPMOL) - September PnT PH2 Early IST "
    ows_UniqueId="881;#{3F79DE4B-7609-4559-9176-3F8598CEC45B}"
    ows__Level="1" ows__ModerationStatus="0"
    ows_fAllDayEvent="0" ows_fRecurrence="1"
    ows_owshiddenversion="2"/>

我也尝试了以下链接中的所有选项,但由于相同的异常而失败。

Expand recurring events from a Sharepoint calendar over webservices

我使用 getListItems 方法尝试了所有这些查询:

            <Where><Or><And><Geq>
            <FieldRefName='EventDate'/>
            <ValueType='DateTime'StorageTZ='TRUE'>
            <Today/></Value></Geq><Leq>
            <FieldRefName='EventDate'/>
            <ValueType='DateTime'StorageTZ='TRUE'>
            <Today/></Value></Leq></And><And><Leq>
            <FieldRefName='EventDate'/>
            <ValueType='DateTime'StorageTZ='TRUE'><Today/>
            </Value></Leq><Geq><FieldRefName='EndDate'/>
            <ValueType='DateTime'StorageTZ='TRUE'>
            <Today/></Value></Geq></And></Or></Where>";

            <Where><DateRangesOverlap>
            <FieldRef Name=\"EventDate\" />
            <FieldRef Name=\"EndDate\" />
            <FieldRef Name=\"RecurrenceID\" />
            <Value Type='DateTime'><Year/></Value>
            </DateRangesOverlap></Where>";

            <Where><DateRangesOverlap>
            <FieldRef Name=\"EventDate\" />
            <FieldRef Name=\"EndDate\" />
            <FieldRef Name=\"RecurrenceID\" />
            <Value Type=\"DateTime\"><Month />
            </Value></DateRangesOverlap></Where>";

            <Where><DateRangesOverlap>
            <FieldRef Name=\"EventDate\" />
            <FieldRef Name=\"EndDate\" />
            <FieldRef Name=\"RecurrenceID\" />
            <Value Type=\"DateTime\"><Month/>
            </Value></DateRangesOverlap>
            </Where><OrderBy><FieldRef Name='ID' /></OrderBy>";

AND 查询选项:

        <ExpandRecurrence>TRUE</ExpandRecurrence> 
        <CalendarDate>2012-05-01T00:00:00Z</CalendarDate>
       <ViewAttributes Scope=\"RecursiveAll\" />";

        <IncludeMandatoryColumns>FALSE</IncludeMandatoryColumns>
        <DateInUtc>TRUE</DateInUtc><ViewAttributes Scope=\"Recursive \"/>
        <RecurrencePatternXMLVersion>v3</RecurrencePatternXMLVersion>   
        <ExpandRecurrence>True</ExpandRecurrence>
        <CalendarDate>2011-10-16T00:00:00Z</CalendarDate>
        <RecurrenceOrderBy>TRUE</RecurrenceOrderBy>
        <ViewAttributes Scope=\"RecursiveAll\"/>";

        <ExpandRecurrence>TRUE</ExpandRecurrence>";

但是它们都不起作用,并且都失败并出现相同的 javax.xml.ws.soap.SOAPFaultException

任何人都可以帮我获取这些重复数据吗?还有其他方法吗?使用Java可以得到它吗?

最佳答案

关于java - 使用 Java 通过 Sharepoint Web 服务访问定期日历事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10434176/

相关文章:

excel - 使用 VBA 从 Excel 表中导入 Sharepoint 2010 列表数据

java - 通过 objectify 实现 Google 数据存储安全

java - 在消息资源文件中查找未使用的值

PHP Web 服务客户端 : Guzzle and xsd

Android:关于ksoap2和webservice

java - Eclipse 与 Netbeans Web 服务工具

c# - 迭代共享点列表

java - Spring Data Repositiories - 为每个查询添加特定参数

java - 当不要求输入时,键入的文本显示在控制台中,我该如何阻止这种情况?

javascript - 如何通过 Javascript 检索有关 SharePoint 中网站内容的数据?