我提供了一个界面,允许用户为应用程序创建帐户。在过程结束时,注册方法执行注册过程,将成功消息添加到页面,然后将用户导航到显示所有系统用户的中央数据表。
我遇到的问题是,由于页面重定向,成功消息永远不会显示。我不能在方法中使用 wait() ,因为在方法完成之前不会显示 JSF 消息。理想情况下,我希望显示成功消息,然后在指定时间后重定向页面。
我怎样才能做到这一点?
context.addMessage(clientId, message);
externalContext.getFlash().setKeepMessages(true);
return "users.xhtml?faces-redirect=true";
请注意,较旧的Mojarra版本有一些与 Flash 范围相关的特殊错误:
您最好至少升级到 Mojarra 2.1.27 / 2.2.5,以确保您的应用程序不受此影响。