XPage 文件上传控件在刷新时丢失文件名

XPage file upload control loses filename on refresh

我敢肯定我一定只是遗漏了一些简单的东西,但我到处都在寻找答案,但没有找到答案。

我的 xpage 上有一个沼泽标准文件上传控件,最初显示标准 "No file chosen",我 select "Choose file" 按钮用 "No file chosen" 覆盖 selected 文件名 - 一切顺利!但是在页面的任何后续部分或完全刷新中,文件名正在消失并恢复为 "No file chosen"。如果我无论如何提交表单,文件仍会正确上传到服务器,但这显然对认为必须重新 select 文件的用户不利。

有人能告诉我我做错了什么吗??

<xp:fileUpload id="songAlbumUpload1" value="#{submitfile.File1}">
            <xp:eventHandler event="onchange" submit="true"
                refreshMode="complete" disableValidators="true">
            </xp:eventHandler>
</xp:fileUpload>

请注意,这是我使用完全刷新的最新尝试,但我也尝试了所有其他部分刷新选项。此外,我的上传控件位于 formTableRow 中,因此我尝试将其移出到主面板中,但问题仍然存在。

(我还发现了刷新最终会上传同一文件的多个实例的错误,据我所知,这是通过部分刷新包含上传控件的面板来修复的 - 但当然这是必需的无论如何刷新都会导致上述问题)!

非常感谢。

正如 Frantisek 所指出的,刷新 fileUpload returns 到 "No File Chosen" 显示表明它已准备好上传另一个文件。尝试删除事件处理程序以保留上传的文件名:

    <xp:fileUpload id="songAlbumUpload1" value="#{submitfile.File1}"></xp:fileUpload>

或者添加一个fileDownload并绑定到同一个RTF来显示上传文件的状态。

    <xp:fileDownload rows="30" id="fileDownload1" value="#{submitfile.File1}" displayLastModified="true"
        allowDelete="true" hideWhen="false" style="width:100.0%">
    </xp:fileDownload>