File XPages:文件下载控制链接url

File XPages:文件下载控制链接url,file,xpages,lotus-domino,File,Xpages,Lotus Domino,我有一个文件下载控件,它列出了数据库中某些文档的附件。 我想在每一行旁边显示一个图标,并使其成为指向该行附件的链接 如果不确定如何为每一行执行此操作,那么让我们假设只有一行。如何获取附件的链接,以便在链接控件中将其声明为href?正如我在评论中提到的,如果您使用的是,则可以在设置displayType=“true”时添加一个图标,因为您没有在问题中添加代码,我猜您的代码可能如下所示: //..your code <xp:panel id="row">

我有一个文件下载控件,它列出了数据库中某些文档的附件。 我想在每一行旁边显示一个图标,并使其成为指向该行附件的链接


如果不确定如何为每一行执行此操作,那么让我们假设只有一行。如何获取附件的链接,以便在链接控件中将其声明为href?

正如我在评论中提到的,如果您使用的是
,则可以在设置
displayType=“true”
时添加一个图标,因为您没有在问题中添加代码,我猜您的代码可能如下所示:

//..your code
                <xp:panel id="row">
                    <xp:this.data>
                        <xp:dominoDocument
                            var="document1"
                            action="openDocument"
                            documentId="#{javascript://example... viewEntry.getDocument().getUniversalId()}">
                        </xp:dominoDocument>
                    </xp:this.data>
                    <xp:fileDownload
                        rows="30"
                        id="fileDownload1"
                        displayLastModified="false"
                        value="#{document1.Body}"
                        displayType="true">
                    </xp:fileDownload>
                </xp:panel>
//..your code
//... your code
            <xp:panel id="row">
            <xp:repeat
                id="repeat1"
                rows="30"
                value="#{javascript:@AttachmentNames()}"
                indexVar="attachmentIndex"
                var="attachment">
                <xp:link
                    escape="true"
                    text="#{javascript:attachment;}"
                    id="link1"
                    target="_blank">
                    <xp:this.value><![CDATA[#{javascript:
                        var url = facesContext.getExternalContext().getRequest().getContextPath() + "/0/" +  
            /*in my case: viewEntry.getDocument().getUniversalID()*/ 
            + "/$File/"+ AttachmentName;        
                        return url;}]]></xp:this.value>
                    <xp:image id="image1">
                        <xp:this.url><![CDATA[#{javascript://
                            var pdfImage = 'pdf.gif';
                            if(attachment.indexOf("pdf")> 0)
                                return pdfImage;
                            }]]></xp:this.url>
                    </xp:image>&#160;
                </xp:link>
                <br></br>
            </xp:repeat>
        </xp:panel>//...your code
/…您的代码
//…你的代码
或者,如果您不使用
,并且可能只显示带有附件名称的行,您可以使用如下内容:

//..your code
                <xp:panel id="row">
                    <xp:this.data>
                        <xp:dominoDocument
                            var="document1"
                            action="openDocument"
                            documentId="#{javascript://example... viewEntry.getDocument().getUniversalId()}">
                        </xp:dominoDocument>
                    </xp:this.data>
                    <xp:fileDownload
                        rows="30"
                        id="fileDownload1"
                        displayLastModified="false"
                        value="#{document1.Body}"
                        displayType="true">
                    </xp:fileDownload>
                </xp:panel>
//..your code
//... your code
            <xp:panel id="row">
            <xp:repeat
                id="repeat1"
                rows="30"
                value="#{javascript:@AttachmentNames()}"
                indexVar="attachmentIndex"
                var="attachment">
                <xp:link
                    escape="true"
                    text="#{javascript:attachment;}"
                    id="link1"
                    target="_blank">
                    <xp:this.value><![CDATA[#{javascript:
                        var url = facesContext.getExternalContext().getRequest().getContextPath() + "/0/" +  
            /*in my case: viewEntry.getDocument().getUniversalID()*/ 
            + "/$File/"+ AttachmentName;        
                        return url;}]]></xp:this.value>
                    <xp:image id="image1">
                        <xp:this.url><![CDATA[#{javascript://
                            var pdfImage = 'pdf.gif';
                            if(attachment.indexOf("pdf")> 0)
                                return pdfImage;
                            }]]></xp:this.url>
                    </xp:image>&#160;
                </xp:link>
                <br></br>
            </xp:repeat>
        </xp:panel>//...your code
/。。。你的代码
0)
返回pdfImage;
}]]>
 


//…您的代码

行中的
将为文档中的每个附件创建一个链接。如果每个文档只有一个附件,则可以将其删除。

是否使用xp:download控件?如果是,则应显示pdf、图像等的图标。。。如果启用“显示类型”。或者,如果不是这样,这可能会帮助您: