JSF 2 自定义范围的使用
我正在研究 JSF2.0 中的所有范围。我对何时使用自定义范围有点困惑。任何特定的用例都会很有用。
最初我以为我可以将它用于跨越多个页面的范围,例如三页注册等。但看起来我们不能在那里使用它。
I am going through all the scopes in JSF2.0. I am a little confused about when to use custom Scope. Any specific use cases it will be useful.
Initially I thought I can use it for scope spanning multiple pages like three page registration etc. But looks like we cannot use it there.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
迟到总比不到好:我写了一篇关于 JSF2 中自定义范围的使用的文章: 没有第三方库的 JSF 2 自定义范围
Better late than never: I wrote an article about the usage custom scopes in JSF2 : JSF 2 Custom Scopes without 3rd party libraries
嗯,总的想法是根据您喜欢的内容创建您自己的范围,例如“对话范围”。该问题已在 JSR 299 (CDI) 中得到解决,恕我直言,这就是它所属的地方。
我尝试创建自定义作用域,结果一旦上下文被破坏,JSF 实现就会抛出异常。由于似乎没有可用的工作示例,因此应将自定义范围视为 JSF2.0 中不存在的,尽管它被宣布为一项关键功能。
无论如何,如果您正在寻找自定义范围,请查看 CDI(特别是 Weld 和 MyFaces CODI)、MyFaces Orchestra(用于 JSF 中的对话范围)、Seam(提供了一个不错的解决方案)或使用 Spring 创建自定义范围。
华泰
Well, the general idea is to create your own Scope for what ever you like e.g. kind of "Conversation Scope". The problem is already adressed within JSR 299 (CDI) and imho this is where it belongs to.
My attempts to create a custom scope resulted in Exceptions thrown by the JSF implementation as soon as the context is destroyed. Since it seems that there are no working examples available, custom scopes should be considered as non-existent in JSF2.0, though announced as a key feature.
Anyway, if you are looking for custom scopes take a look at CDI (escpecially Weld and MyFaces CODI), MyFaces Orchestra (for Conversation Scopes in JSF), Seam (offers a nice solution) or create a Custom Scope using Spring.
HTH