上传超过一定字符数的文件名,保存时会出错

An error occurs on save if a filename of more than a certain number of characters is uploaded

当我尝试上传文件名超过 186 个字符长度的文件时,我有一个奇怪的行为。

我在 NotesXSPDocument.save() 上收到以下错误:


并且使用简单操作保存时出现以下错误:


源代码:

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

    <xp:this.data>
        <xp:dominoDocument var="document1" computeWithForm="onsave" formName="Files"></xp:dominoDocument>
    </xp:this.data>

    <xp:fileUpload id="fileUpload" value="#{document1.Body}">
        <xp:eventHandler event="onchange" submit="true" refreshMode="complete" disableValidators="true">
            <xp:this.action><![CDATA[#{javascript:// kick off round-trip...}]]></xp:this.action>
        </xp:eventHandler>
    </xp:fileUpload>

    <xp:fileDownload rows="30" id="fileDownload1" displayLastModified="false" value="#{document1.Body}"></xp:fileDownload>

    <xp:button value="Save Document SimpleAction" id="btnSaveDocumentSimpleAction">
        <xp:eventHandler event="onclick" submit="true" refreshMode="complete">
            <xp:this.action>
                <xp:saveDocument var="document1"></xp:saveDocument>
            </xp:this.action>
        </xp:eventHandler>
    </xp:button>

    <xp:button value="Save Document NotesXSPDocument" id="btnSaveDocumentNotesXSPDocument">
        <xp:eventHandler event="onclick" submit="true" refreshMode="complete">
            <xp:this.action><![CDATA[#{javascript:document1.save();}]]></xp:this.action>
        </xp:eventHandler>
    </xp:button>

</xp:view>

提示:我正在使用 Domino 服务器 8.5.3 FP6

提前感谢您的回答。


更新:

在 domino 服务器上我可以找到(复制、重命名等)上传的文件,所以我无法理解以下错误消息:

保存文档时出错 无法保存文档 NEW_c0 NotesException:文件 C:\TEMP\SYSTEM\notesC78121\xsppers3\E9DMAJ1VVQ\DominoDoc-231-Body\BCXXXXXXXxXXXXXXXXXXXXXXXXXXXXXXXXXCCCCCCCCCCCCXXXXXXXXXXCxxXXXXXXXXAXXXXXXXXXXBCCCCCCCCCCCCCCCCCCCCXXCCCCCCCXCCXCCCCCCCCCXXXXXXXXXXXCDDABCCCCCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCDX.jpg 未找到

您正在达到 Windows 256 个字符的文件路径长度限制:https://msdn.microsoft.com/en-us/library/windows/desktop/aa365247(v=vs.85).aspx#maxpath

如果您需要上传具有如此长文件名的文件,您应该 运行 您的 Domino 服务器位于 Linux。

Windows 上,文件名的各个组成部分(路径中的目录和最终文件名)限制为 255 个字符。我已经超过了这个限制。

以下文件路径的长度为256个字符:

C:\TEMP\SYSTEM\notesC78121\xsppers3\E9DMAJ1VVQ\DominoDoc-231-Body\BCXXXXXXXxXXXXXXXXXXXXXXXXXXXXXXXXXCCCCCCCCCCCCXXXXXXXXXXCxxXXXXXXXXAXXXXXXXXXXBCCCCCCCCCCCCCCCCCCCCXXCCCCCCCXCCXCCCCCCCCCXXXXXXXXXXXCDDABCCCCCCCXCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCDX.jpg