如何使 XPage 保存按钮正常工作?

How to make XPage Save button work properly?

我有保存并关闭按钮,可以保存当前文档并导航到主页。

不保存文档的问题(文档处于编辑模式)。如果我设置按钮 属性 submit="true" 那么它确实会通过复制冲突来保存文档。

<xp:button id="buttonSaveClose">
    <xp:this.value><![CDATA[Save & Close]]></xp:this.value>
    <xp:eventHandler event="onclick" submit="true"
        refreshMode="complete" immediate="false" save="true">
        <xp:this.action>
            <xp:actionGroup>
                <xp:saveDocument
                    var="#{javascript:document1}">
                </xp:saveDocument>
                <xp:openPage name="/Home.xsp">
                </xp:openPage>
            </xp:actionGroup>
        </xp:this.action>
    </xp:eventHandler>
</xp:button>

只需删除<xp:saveDocument ... </xp:saveDocument>

您已经将事件处理程序的 save 参数设置为 true,文档会自动保存。无需通过保存操作再次保存。

<xp:saveDocument var="#{javascript:document1}"> </xp:saveDocument> 我很确定这应该是 #{document1} - 它应该是表达式语言而不是 SSJS。使用像 saveDocument 这样非常基本的简单操作对您的第一个演示数据库很有用,但是,正如您所看到的,没有办法对其进行故障排除或找出它不工作的原因。我建议尽快转向正确的代码,就像我在所有培训课程中所做的那样 运行 - 所以 #{javascript:document1.save();}。一旦你想要更多的控制,你就会需要它,这不是火箭科学。同样,#{context.redirectToPage("Home.xsp")} 替换了另一个简单的操作。