将在每个引用该bean的EL表达式上创建带有
<managed-bean-scope>of
none或
@NoneScoped批注的bean。JSF并未将其存储在任何地方。如有必要,调用者必须自己存储评估后的引用。
例如,视图中的以下内容
<p>#{noneScopedBean.someProperty}</p><p>#{noneScopedBean.someProperty}</p><p>#{noneScopedBean.someProperty}</p>在无作用域的bean上,在请求期间将 构造 bean 3(三)次。对bean的每次访问都会给出一个完全独立的bean,在访问属性后立即将其废弃。
但是,以下示例包含一个会话范围的Bean
@ManagedProperty("#{noneScopedBean}")private NoneScopedBean noneScopedBean;只要会话范围的Bean实例都可以使用。您只应确保您
#{sessionScopedBean.noneScopedBean.someProperty}改为在视图中访问它。因此,当您希望无范围数据作为任意Bean中的托管属性可用时,它可能会很有用。



