到目前为止,我已经能够通过搜索网络解决所有与 XPages 相关的问题,但是这个问题一直让我发疯,我真的可以使用一些帮助:
在我的 XPage 上,我有一个带有动态数据源的面板(计算 documentid 和 action(值来自sessionScope
))。在这个面板中,我有多个通过“简单绑定”绑定到数据源的编辑框。在面板之外,我有一个组合框,用户可以在其中选择要显示的文档和创建新文档的按钮。当组合框值更改时,我将 documentid 和 action 放入sessionScope
并执行面板的部分更新。一切正常,文件以正确的方式显示。当我按下按钮创建一个新文档 (documentid="",action="newDocument") 时,我得到一个新文档,并且面板中的编辑框是空的,就像它应该的那样。
但是,如果我在创建新文档后从组合框中选择现有文档,则编辑框不会更新,但与我刚刚创建的文档中的相同。我发现部分刷新适用于数据源(documentid 是正确的),但似乎数据绑定不起作用,这意味着文档中的值没有写入编辑框。之后,如果我从组合框中选择另一个文档或执行另一个部分刷新,数据绑定会突然再次起作用。
有谁知道如何解决这个问题?为什么我需要在这里进行 2 次部分刷新?
我试图解决这个问题但没有奏效:
- 将数据源的范围更改为请求
- 执行完全更新,而不是仅对面板进行部分更新
- 设置
ignorerequestparameter
为true
- 所有可能的设置
computewithform
我知道我可以手动将文档中的数据写入编辑框,但我认为应该可以在没有解决方法的情况下解决这个问题。