问题标签 [view-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.
spring - 具有自定义 ViewScope 的托管 bean
我正在使用 Spring 3.1.0.RELEASE、JSF 2.x、JPA 2 和 Hibernate Provider 做一个 Web 应用程序。我使用 PrettyFaces 3.3.2 作为友好的 URL。该应用程序在 Tomcat 6.35 上运行。
我想使用 Jsf ViewScope 所以我决定按照网上找到的实现:http: //comdynamics.net/blog/109/spring3-jsf2-view-scope/
我注意到@PreDestroy
没有像显示这个问题那样调用它们@PreDestroy 从未调用过 @ViewScoped。
这是否意味着带有 ViewScope 的托管 bean 永远不会破坏?这导致内存泄漏。我们应该这样使用这个范围吗?
它只发生在 Spring 或 Mojarra 上的自定义 Viewscope 上?
谢谢。
jsf - JSF 2.2 @ViewScoped 绑定错误?
我已经阅读了有关 @ViewScoped ( BUG REPORT ) 的绑定错误,并且它已在最新版本的 JSF 中修复,因此我使用 3 个最新版本的 JSF 对此进行了测试,并尝试使用
修复以解决它,但没有运气。
我有一个 primefaces 数据表,其中每个列标题中都有过滤器。
在我更改 JSF 版本之前,每次单击“过滤器”按钮时,都会创建一个新的 cadastroClienteBean 实例。现在我已经更改了它,似乎 ManagedBean 不是每次都被实例化,但是 cliente 变量正在变为空,即使我在构造函数上实例化它。
编辑:在调试了一下之后,我发现过滤器的值被设置在变量上,然后 setCliente() 被调用并将其设置为 null,但我不知道为什么。
jsf-2 - ManagedProperty 的序列化
@ViewScoped
JSF和存在以下问题@ManagedProperty
:我们的ManagedBean
s 基本上如下所示:
和
正如预期的那样,在处理请求后,控制器将被序列化。我希望@ManagedProperty
sessionConfig
在序列化中特别处理它,特别是在反序列化后它将被“重新链接”。然而,事实证明,反序列化后sessionConfig
只是实际 SessionConfig-Bean 的过时克隆。
问题:
- 这是预期的行为吗?
- 我们可以做些什么来让 JSF 重新评估
@ManagedProperty
反序列化后的结果?
目前,我们在反序列化后“手动”重新评估所有托管属性。它有效,但显然似乎不正确。
谢谢!
jsf-2 - 在@ManagedBean 中使用@Interceptor
使用 CDI 进行拦截在 @Named 中完美运行,但在 @ManagedBean 中却不行:
可记录的.java
LoggingInterceptor.java
WorkingBean.java
豆类.xml
ViewScopedBean.java
我知道,这种拦截器旨在与WebBeans(和EJB)一起使用,但我正在寻找具有相同拦截器概念的两个世界(描述+ JSF)的解决方案我需要@ViewScoped @ManagedBean,这就是为什么我无法摆脱 @ManagedBean 以支持纯 WebBeans
系统:Mojarra 2.1.7 Primefaces 3.2
ajax - Inputext 空指针与和@ViewScoped
我面临一个问题,我无法解决:(
通过在 selectOneRadio 中选择一个项目,我想设置一个特定的变量:
使用 managedBean SessionScope,此代码可以工作,但使用 ViewScope,它不起作用。
在 ViewScope 中,当我单击按钮时,特定变量为空,但如果我删除组件,则设置特定变量!
我需要用来在 inputext 之间切换 :(
我该如何解决我的问题?
发送很多!
jsf - 转换器不适用于 @ViewScoped
我遇到了转换器的问题。在我的 xhtml 文件中,我有一个带有对象列表的 selectOneMenu,我想在我的 managedBean 中设置一个对象。
如果我的 managedBean 具有@SessionScoped,则 managedbean 中的对象被填充,但如果 managedeban 具有 @ViewScoped,则转换器永远不会使用并且我的对象为空。
如何解决这个问题?
XHTML:
类型转换器:
发送很多
java - 在视图显示或更改后执行一些代码
我有一个菜单,其中包含指向不同视图的项目。
每个视图都有一个带有附加侦听器的选择组合框。
在该视图中,我使用会话范围的托管 bean。
当我第一次导航到视图时,会在构造 bean 时调用一个方法。当用户从选择框中更改值时,将调用相同的方法。但是重新显示视图时不会调用该方法。
发生这种情况是因为我使用了会话范围的 bean。更好的解决方案是改用视图范围的 bean,但我正在寻找替代方案。有没有办法在视图更改时执行某些代码?
primefaces - 使用 @ViewScoped bean 和 s:viewAction 的 primefaces 文件上传
我正在使用 JBoss 7.1.1.Final、Seam 3.1、CDI、JSF 2、Primefaces 3.4RC1。我有一个包含以下 s:viewAction 的页面:
entryActionManager 是@ViewScoped,因此在加载页面时会检索entryId GET 参数,并在此@ViewScoped bean 中加载相应的条目。
此外,我在同一页面上有以下 fileUpload 组件:
事实证明,如果我想上传文件,@ViewScoped bean 将会死掉并且 s:viewAction 会再次被执行。但是,由于某种原因,它不再具有 GET 参数(entryId),因此它失败了。
我试图设置:
但它不起作用。您知道任何解决方法吗?一种选择是使用@ConversationScoped,但我更喜欢使用@ViewScoped
谢谢
jsf-2 - ViewScoped bean 的内存泄漏?
在我们 在JBoss 7.1.1上的JavaEE6项目(EJB3、JSF2)中,似乎我们有 SeamFaces 的内存泄漏。@ViewScoped
我们制作了一个小原型来检查事实:
- 我们使用 JMeter 调用一个页面 200 次;
- 该页面包含并调用一个视图范围的 bean,该 bean 注入了一个有状态的 EJB;
- 我们将会话超时固定为 1 分钟。
在测试结束时,我们使用 VisualVM 检查内存的内容,得到的结果如下:
- 使用
@ViewScoped
bean,我们仍然可以获得 200 个有状态实例MyController
——并且该@PreDestroy
方法永远不会被调用; - 使用
@ConversationScoped
bean,@preDestroy
方法被称为会话结束,然后我们得到一个干净的内存。
我们是否错误地使用了视图范围,或者它真的是一个错误?
这是 XHTML 页面:
现在包含 bean myBean
。对于该@ConversationScoped
变体,所有已注释的部分均未注释。
然后注入的有状态bean MyController
:
param - 当按下 bean 2 的命令按钮时,使用 f:param 从一个 bean 传递值会丢失值
在两个 bean 上使用 ViewScope 我通过 commandLink 使用 f:param 将值从一个 bean (browseUsers) 传递到另一个 bean,但在 bean 2 (editUsers) 上,当在构造函数上按下命令按钮并且所有值都丢失时。请指教。
browseUsers.xhtml 上的 commandlink 和 datatable 代码:
editUsers.xhtml 上的命令按钮代码如下:
editUsers.java 上的 bean 方法如下:
@ViewScoped
公共类editUsers实现可序列化{