jsf-2 – 为什么在使用JSF Web应用程序时我们需要beans.xml?

jsf-2 – 为什么在使用JSF Web应用程序时我们需要beans.xml?,第1张

概述在研究了JSP和Servlets一段时间后,我开始使用JSF进行Web开发. 当你创建一个JSF Web应用程序时,你总是(可能经常但我不确定它是否总是这样)必须创建beans.xml而你不会在其中写任何东西.但是,如果该文件不存在,JSF Web应用程序将无法正常工作. 这背后的原因是什么? 为什么我们需要那个文件? 请详细说明. 加上迈克尔的答案;由于注入支持,CDI不仅可以与JSF结合使用, 在研究了JsP和Servlets一段时间后,我开始使用JsF进行Web开发.

当你创建一个JsF Web应用程序时,你总是(可能经常但我不确定它是否总是这样)必须创建beans.xml而你不会在其中写任何东西.但是,如果该文件不存在,JsF Web应用程序将无法正常工作.

这背后的原因是什么?

为什么我们需要那个文件?

请详细说明.

解决方法 加上迈克尔的答案;由于注入支持,CDI不仅可以与JsF结合使用,还因为它支持与EL(表达式语言)一起使用.这是JsF严重依赖的功能.

事实上,CDI bean几乎可以完全取代JsF托管bean,因此你会发现许多使用它们的例子和大量的JsF书籍建议使用它们.对于JsF应用程序,CDI bean具有例如以下优点:

>可以将较小的范围注入更大的范围.例如.请求范围的GET参数可以注入到会话范围的bean中.对于JsF托管bean,这是不可能的.
>可以利用会话范围;产生多个不同页面的范围.

非常不幸的是,在JsF 2.0和2.1中,默认情况下CDI bean不支持非常方便的视图范围,尽管像Seam这样的扩展可以添加这些范围. (更新:在JsF 2.2中有一个新的视图范围,可以使用CDI bean)

总而言之,JsF托管bean和CDI bean之间存在混淆,因此有一个JsF规范问题,请参阅http://java.net/jira/browse/JAVASERVERFACES_SPEC_PUBLIC-976

总结

以上是内存溢出为你收集整理的jsf-2 – 为什么在使用JSF Web应用程序时我们需要beans.xml?全部内容,希望文章能够帮你解决jsf-2 – 为什么在使用JSF Web应用程序时我们需要beans.xml?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1067034.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-26
下一篇 2022-05-26

发表评论

登录后才能评论

评论列表(0条)

保存