从Servlet访问JSF ViewScope托管bean

从Servlet访问JSF ViewScope托管bean,jsf,servlets,Jsf,Servlets,如何从Servlet访问JSF ViewScope托管bean (假设所讨论的托管bean已经创建,但尚未销毁)视图范围内的变量存储在组件树上的中。要在视图上下文之外访问此数据,您必须为请求添加和。这涉及重写由提供的大部分功能 JSF2提供了在不刷新页面的情况下与服务器端状态交互的机制:和。如果可能的话,我会考虑利用这些 或者,将数据放在一个可以通过servlet(会话)轻松访问的范围内 由于视图状态通常保存在会话中,因此从这里访问视图状态在技术上是可能的。但这将涉及特定于实现的黑客攻击,这些攻

如何从Servlet访问JSF ViewScope托管bean


(假设所讨论的托管bean已经创建,但尚未销毁)

视图范围内的变量存储在组件树上的中。要在视图上下文之外访问此数据,您必须为请求添加和。这涉及重写由提供的大部分功能

JSF2提供了在不刷新页面的情况下与服务器端状态交互的机制:和。如果可能的话,我会考虑利用这些

或者,将数据放在一个可以通过servlet(会话)轻松访问的范围内


由于视图状态通常保存在会话中,因此从这里访问视图状态在技术上是可能的。但这将涉及特定于实现的黑客攻击,这些攻击可能无法在底层框架的升级中幸存下来。我甚至不会将此视为解决方案。

视图范围内的变量存储在组件树上的中。要在视图上下文之外访问此数据,您必须为请求添加和。这涉及重写由提供的大部分功能

JSF2提供了在不刷新页面的情况下与服务器端状态交互的机制:和。如果可能的话,我会考虑利用这些

或者,将数据放在一个可以通过servlet(会话)轻松访问的范围内


由于视图状态通常保存在会话中,因此从这里访问视图状态在技术上是可能的。但这将涉及特定于实现的黑客攻击,这些攻击可能无法在底层框架的升级中幸存下来。我甚至不认为这是一个解决方案。

如果您需要访问其范围之外的bean,这表明它没有被适当地确定范围。只要相应的页面处于活动状态,ViewScoped bean就处于活动状态,那么为什么我不能从该页面调用Servlet呢?如果您需要访问其作用域之外的bean,这表明它的作用域没有被适当地划分。只要相应的页面是活动的,ViewScoped bean就是活动的,那么为什么我不能从该页面调用Servlet呢?