gpt4 book ai didi

jsf-2 - 如何在 PrimeFaces 中使用共享错误消息对话框

转载 作者:行者123 更新时间:2023-12-02 14:37:49 25 4
gpt4 key购买 nike

在 PrimeFaces 中,当您想要显示错误消息时,您可以:

  1. 在“查看”中创建调用操作的命令组件
  2. 在“update”属性中,您可以设置将显示消息的 p:message 或 p:growl 组件的 ID
  3. 在支持 Bean 中,在操作函数中抛出一条消息

因此,错误消息将显示在重定向页面中具有匹配 id 的消息组件中

但是如果:

  1. 您想要在另一个页面中显示消息,该页面不包含调用该操作的命令组件。
  2. 该操作可以重定向到许多不同的页面,具体取决于某些支持 bean 逻辑。
  3. 该操作不是从命令组件调用的,至少不是直接调用的

我想过放置一个具有特定 id 的 p:message 组件,并将其包含在每个 xhtml 页面中。但这不一定涵盖第三种情况。

例如,可能有一个函数可以检查与另一个 Web 服务的连接。许多不同的操作都可能引发连接错误。

  • 或者 session 过期
  • 或拒绝许可

您将如何管理此类通用错误消息?

最佳答案

你可以把常见的 <p:dialog><h:message>在用于所有页面的模板文件中,并为其指定一个唯一的 ID。这样,它将为使用该模板的所有页面呈现。

这是假设您正在使用模板。

更新:如果您希望以编程方式更新组件,可以使用 RequestContext#update() 来执行此操作。

例如

if (someErrorCondition) {
RequestContext.getCurrentInstance().update("errorDialogId");
}

哪里errorDialogId为常见错误对话框的ID。

如果您打算使用此方法,则需要删除 update来自命令组件的属性。

另请参阅

关于jsf-2 - 如何在 PrimeFaces 中使用共享错误消息对话框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19701749/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com