有人可以帮我学习如何使用javascript连接代码吗?

时间:2015-02-25 19:25:25

标签: xpages ibm-connections

我正在尝试从Connections访问数据。我需要使用一些javascript api代码:https://greenhouse.lotus.com/sbt/SBTPlayground.nsf/JavaScriptSnippets.xsp#snippet=Social_Files_Get_My_Files

但我不知道如何使用xPages构建应用程序。我尝试了一个新的xPage并将代码粘贴到一个脚本块中,但是我遇到了编译错误。

有人可以告诉我如何使用操场上的Javascript样本吗?

1 个答案:

答案 0 :(得分:2)

保罗建议使用openntf票务跟踪非常棒!这是最终有效的代码。再次感谢Paul!

<?xml version="1.0" encoding="UTF-8"?>
<xp:view xmlns:xp="http://www.ibm.com/xsp/core" xmlns:xe="http://www.ibm.com/xsp/coreex">

    <xe:dataView id="myFilesDataView" var="file" rows="110"
        columnTitles="true" styleClass="filesDataView">
        <xe:this.extraColumns>
            <xe:viewExtraColumn columnTitle="Filetype">
            </xe:viewExtraColumn>
            <xe:viewExtraColumn columnTitle="Size">
            </xe:viewExtraColumn>
        </xe:this.extraColumns>
        <xe:this.summaryColumn>
            <xe:viewSummaryColumn columnTitle="Filename">
            </xe:viewSummaryColumn>
        </xe:this.summaryColumn>
        <xp:this.value>
            <![CDATA[#{javascript:
                try{
                    var filesService = new com.ibm.sbt.services.client.connections.files.FileService( "connectionsSSO" ); 
                    //  ps:100 is page size of 100 files
                    var myFiles = filesService.getMyFiles({ps:100});
                    viewScope.myFilesAvailable = true;
                    return myFiles;
                }catch(exception){
                    println("getFiles value error: " + exception);
                    viewScope.myFilesAvailable = false;
                    return null;
                }}]]>
        </xp:this.value>
        <xp:this.facets>
            <xp:panel xp:key="noRows" id="emptyMyFilesPanel">
                <xp:div styleClass="lotusWidgetBody">
                    <xp:text>
                        <xp:this.value>
                            <![CDATA[#{javascript:
                                return (viewScope.myFilesAvailable ? "No  files found." : "Files unavailable.");
                            }]]>
                        </xp:this.value>
                    </xp:text>
                </xp:div>
            </xp:panel>
            <xp:panel id="summaryPanel" xp:key="summary" style="white-space:nowrap;">
                <xp:link escape="true" id="link7" target="_blank"
                    text="#{javascript:return file.getTitle();}" styleClass="dataViewLink">
                    <xp:this.value><![CDATA[#{javascript:return file.getContentUrl();}]]>
                    </xp:this.value>
                </xp:link>
            </xp:panel>
            <xp:panel id="typePanel" xp:key="extra0"
                style="width: 20%;white-space:nowrap;">
                <xp:text>
                    <xp:this.value><![CDATA[#{javascript:return file.getType();}]]></xp:this.value>
                </xp:text>
            </xp:panel>
            <xp:panel id="sizePanel" xp:key="extra1"
                style="width: 15%;white-space:nowrap;">
                <xp:text>
                    <xp:this.value><![CDATA[#{javascript:
                        var size = file.getSize();
                        var kilobyte = 1024;
                        var megabyte = kilobyte *1024;
                        if(size < kilobyte) {
                            return (size + " B");
                        }else if(size < megabyte) {
                            return (Math.round(size/kilobyte) + " KB");
                        }else {
                            return (Math.round(size/megabyte) + " MB");
                        }}]]>
                    </xp:this.value>
                </xp:text>
            </xp:panel>
        </xp:this.facets>
    </xe:dataView>
</xp:view>