【问题标题】:Is it a best practices to wrap a h:form tag in the jsf template page在 jsf 模板页面中包装 h:form 标记是否是最佳实践
【发布时间】:2011-01-16 00:14:59
【问题描述】:
<p><h:commandLink value="Apply Now" action="register" /></p>

当我在上面写代码时,下面会抛出异常:

[2/12/10 11:24:29:535 CST] 0000005f renderkit W 组件 j_id26 必须包含在表单中。

在jsf模板页面中包裹ah:form标签是不是一个最佳实践,然后每个使用该模板的页面都可以直接直接使用h:commandLink标签就可以了h:form 标签?

【问题讨论】:

    标签: jsf hyperlink command components


    【解决方案1】:

    在我看来&lt;h:form&gt;&lt;f:view&gt; 不应该出现在模板页面中,因为:

    • 您不能自定义它们的属性,例如(特别是:enctypebeforePhase
    • 您可能希望一个页面中有多个表单。
    • 您可能在某些时候,在某些地方需要将&lt;h:form&gt; 替换为&lt;a4j:form&gt;(例如)

    如果您有很多非常简单的页面,那么您可以制作一个替代模板,其中包括主模板,并添加&lt;f:view&gt;&lt;h:form&gt;

    【讨论】:

    • 同意,但在某些情况下,我只想有一个像上面这样的简单链接,我仍然需要编写以下代码:

      任何人都可以教我如何在评论中设置代码样式 ;( ?
    • +1 基本上是为了第二点。即使您可以使用 &lt;a4j:region/&gt; 将您的页面拆分为单独的块 - 用于 Ajax 调用。
    • 感谢大家的建议;)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-05-12
    • 2011-08-04
    • 2010-09-07
    • 2012-08-19
    • 2012-04-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多