【问题标题】:Are there any drawbacks of using technology JSP(instead XHTML) in JSF-2.0?在 JSF-2.0 中使用技术 JSP(而不是 XHTML)有什么缺点吗?
【发布时间】:2012-04-29 22:58:11
【问题描述】:

我曾经使用 JSP 作为视图技术。但是对于 JSF-2.0,新的推动力是让开发人员使用 Facelets 作为他们的模板技术。但这是否是一个严重的问题?如果我继续将 JSP 用于 JSF 中的视图,我会失去什么吗?究竟比这项技术更好? XHTML 和JSP 的工作有什么根本区别吗?如果有人能回答我将不胜感激!谢谢

【问题讨论】:

    标签: java jsp jsf jsf-2 facelets


    【解决方案1】:

    新的视图范围和 Facelets 的包含是 JSF 的重大改进以及对 ajax 和注释的支持。该技术是 JSF 2.0 中一个非常重要且强大的属性。所以我不建议在没有必要的情况下忽略它。

    不鼓励 JSP 使用 JSF 2.0,因为 Facelets 为开发用户界面提供了比传统 JSP 更清晰和灵活的机制。 Facelets 要好得多,有几个基本原因:

    • Facelets 标签不需要在标签库描述符文件 (TLD) 中声明。
    • 标签中的属性是动态的,它们会自动映射到属性。这是 JSP 中没有的主要功能之一是页面。
    • 非常有用的页面模板功能。您定义一个模板,该模板为具有自定义范围的所有视图页面定义通用布局。
    • JSF 规范的 JSP 端停滞不前。没有任何涉及新标签(复合组件、ajax、系统事件等)的新特性通过 JSP 公开。
    • 此外,Facelets 的执行速度比 JSP 快。

    一般来说,JSF 2.0 中的 JSP 作为视图技术被认为比较麻烦且难以维护

    【讨论】:

      【解决方案2】:

      如果您使用 JSF,那么您确实应该使用 Facelets 而不是 JSP,因为 JSP 和 JSF 并不是很匹配。主要的问题是JSP 世界对JSF life cycle 一无所知。您可以阅读this article 获取一些示例。 Facelets 没有这些问题,因为它是专门为匹配 JSF 而创建的。

      【讨论】:

        【解决方案3】:

        在 xhtml 和 jsp 之间没有选择。 JSP 是一种服务器端模板机制,用于创建基于文本的响应以发送到浏览器。该文本响应可以是 xhtml、html、json、xml 或任何其他文本格式。因此,您可以使用 jsp 创建 xhtml - 您无需在它们之间进行选择。

        仅仅因为您更改了扩展名并不意味着您正在做任何不同的事情。你只是在改变你所说的 - 没有特别的理由这样做,这很令人困惑。

        【讨论】:

        • Facelets 和 JSP 是两种不同的视图技术。
        猜你喜欢
        • 2011-06-17
        • 1970-01-01
        • 2012-07-16
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-10-23
        • 1970-01-01
        • 2012-09-18
        相关资源
        最近更新 更多