问题标签 [flash-scope]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
jsf - com.sun.faces.context.flash.ELFlash.doLastPhaseActions 处的 java.lang.NullPointerException
我在 glassfish-4 中有大约 3 个应用程序,使用 SingleSignOn 来保证安全性,第 4 个应用程序用于“访问控制”,所有应用程序的所有用户都登录并被重定向到用户有权访问的任何应用程序。直到现在我需要添加第 5 个应用程序之前,一切都运行良好。第 5 个应用程序拒绝与其他应用程序合作。这是我在所有应用程序中第一个使用的代码片段:
这在所有前 3 个应用程序中都对我有用,但在最后一个应用程序中不起作用。我正在使用带有 primefaces 5.0 的标准 Java EE 6。
这是我得到的错误:
任何建议都将不胜感激,因为这会推迟很长一段时间的生产。谢谢
internet-explorer - JSF,从 Flash 范围获取参数在 Internet Explorer 中不起作用
我们的项目正在进行中
JSF 2.2 (Mojorra 2.2.0)
Servlet 3.0:Jboss EAP 6.1
小面 (XHTML)
当我们将参数放入 Flash 时,我们无法从 IE 浏览器中的另一个页面获取它。我们在不同的机器上尝试了 IE 11。奇怪的是它在 Chrome、Opera 中是可以的。
我们将参数放入 Flash 时的代码:
以及获取参数时的代码。来自闪存:
从 Flash 获取“实例”参数时,实例为空。在调试模式下,我们可以看到:Flash.flashInnerMap is {1={instance=2 - ORNEK SPOR SALONU}}
从 Flash 返回的参数在 IE(大多数版本)中为空,但在其他浏览器中是可以的。
有人有想法吗?
jsf - Can the Flash data be persisted after redirection?
Using JSF 2.1.29
In list.xhtml
In listBean (viewscoped),
pretty-config.xml
In viewbean (viewscoped),
In view page,
firstName is displayed after redirect. On refreshing the view page (by pressing f5), the string firstName becomes null and id strings printed in viewBean's fillPage is null. What i need is on refresh, i need to refetch firstName for which the ids must not be null. Had gone through this link Anyway to persist the flash data in request?
Tried the below but was not successful :
1.
2.
3.
On Refresh debugging, the ids are there in the flash scope map on watching FacesContext.getCurrentInstance().getExternalContext().getFlash()
, but the same is not displayed in watching FacesContext.getCurrentInstance().getExternalContext().getFlash().get("petId");
(see fig 2).
Update 1 (Answer):
As suggested by Xtreme Biker, added preRenderView to the view page.
<f:event type="preRenderView" listener="#{ownerAndPetViewBean.fillPage}"/>
.
From the pretty-config.xml, remove or comment
<action onPostback="false">#{ownerAndPetViewBean.fillPage}</action>
Put a not postback checking in fillPage method and added flash.keep in managed bean.
The above method will not work with pretty-faces action tag (if used instead of preRenderview) and we will get page with no values.
jsf - 最新 Mojarra 版本中的 Flash-Scope?
我阅读了许多关于 mojarra 的闪光灯范围问题的主题,直到现在,我无法完全摆脱这些烦人的
“在我们尝试为闪存设置传出 cookie 时,响应已经提交。存储到闪存的任何值在下一次请求时都将不可用。”
导致很多头痛的消息。
我阅读了诸如自定义 cookie 或请求参数之类的解决方法,但我感觉不太好,因为这种基本的东西在很长一段时间内都无法接受。
当前环境:
- mojarra 2.2.13
- omnifaces 1.12.1
- tomcat 8.0.32
有人可以确认,最新的 mojarra 仍然会发生这种情况吗?我以前的 mojarra 版本也有这些问题 - 有时它有效,有时无效。无论如何,该消息仅在登录后出现一次,但创建的 cookie“csfcfc”永远不会被删除,并且现在每个请求都会出现警告。
由于其他问题,目前无法切换到 myfaces。
我的简单案例,真的没什么特别的吗?:
主模板.xhtml:
登录.xhtml
jsf-2.2 - 如何在页面上的 ajax 请求后保留 JSF flash 范围参数?
我可以保留 flash 变量以重新加载页面
但是任何回发到页面都会导致我丢失 flash 变量。我尝试安装 preRenderView 事件侦听器并检查回发。
但是这次我收到了这个错误并丢失了 flash 变量
在我们尝试为 flash 设置传出 cookie 时,响应已经提交。存储到闪存中的任何值在下一次请求时都将不可用。
实际上我想要实现的是使用 Post-Redirect-Get 模式并在手动重新加载页面时保留页面数据(用户点击 F5)。我使用的是 Mojorra 2.2.8
jsf - 通过 #{flash.keep.foo} 保持 flash 不起作用,而是 #{flash.foo} 起作用
我有一个运行 Primefaces、JSF 2.2、Spring 和 Hibernate 的应用程序。我使用 JSF 的 Flash Scope 发送带有重定向的参数:
如果我写入#{flash.keep.loginCliente}
并registroCasa.xhtml
重新加载页面,则该值变为空,但如果我写入#{flash.loginClient}
该值,则该值保持活动状态。为什么?
我正在使用 Mojarra 2.2.12。
jsf - JSF 页面重新加载后 Flash 数据丢失
我在页面中实现了 JSF Flash:
第一页:
第二页:
两个页面都在javax.faces.view.ViewScoped
此解决方案有效,但我希望在重新加载第二页时再次保留该值。现在,当我尝试引导第二页时,我得到了 NPE。有什么解决办法。我可以使用 Session 范围,但这些应该是其他一些更简单的解决方案。
jsf - Flash 范围警告和 Flash 重定向后未删除
我正在尝试使用 JSF 和 Primefaces 在 View1 到 View2 之间重定向时传递一个对象。
我正在使用 JSF Flash 范围来执行此操作,该对象确实传递到第二个视图,但我仍然收到此警告:
com.sun.faces.context.flash.ELFlash setCookie
警告:JSF1095:在我们尝试为 flash 设置传出 cookie 时,响应已经提交。存储到闪存中的任何值在下一次请求时都将不可用。
即使经过几次重定向,flash cookie 也不会被删除。
View1.xhtml
我的组件.xhtml
我的组件.java
View2Controller.java
解决了!!!!!!
我不确定这是最好的方法,但它对我有用..
问题在于 http 缓冲区大小和 jsf 生命周期,cookie 是在写入响应之后写入的,并且缓冲区太小而无法同时包含它们。
jsf - 为什么 flash.keep() 如果它在一个 bean 中而不是在 Facelets 页面的 EL 中,它会删除密钥?
所以我有这个非常小的 JSF 示例:
并且 foo 的实现如下所示:
最后hello.xhtml
如下:
在上面的例子中,当我点击提交时,我将被重定向到 hello.xhtml 并看到“成功!!” 文字就好了。当我刷新页面时,我仍然会看到该消息,因为我正在调用 keep 方法,如下所示:
现在转到另一个示例:
index.xhtml 和 ReqScopedBackingBean 是一样的,但是这次 hello.xhtml 如下:
如下OtherBean.java
:
我期望行为与第一个示例相同。但是,当我在 hello.xhtml 上时,我不会看到成功消息。但是,如果我注释掉该行:
然后将出现消息(但在 hello.xhtml 上刷新不会像第一个示例中那样重新显示成功消息)。
我的问题是,这里有什么区别?怎么
并且不同于
?