2010-02-12 21 views
2
<p><h:commandLink value="Apply Now" action="register" /></p> 

当我在上面写代码,异常抛出如下:它是一个最佳实践包啊:形式标记在JSF模板页面

[10年2月12日11时24分29秒: 535 CST] 0000005f renderkit W组件j_id26必须包含在表单中。

它是一个的最佳实践包啊:在JSF模板页面表单标签,然后使用该模板可以只直接使用h每一页:commandLink标签不犹豫的H:表单标签?

回答

3

在我看来<h:form><f:view>不应该在模板页面,因为:

  • 你不能定制自己的属性,如(特别是:enctypebeforePhase
  • 您可能希望一个页面中的多个表单。
  • 你可以在某些时候,某些地方需要<a4j:form>(例如)

如果你有很多,很简单的页面,那么你可以让一个替代模板,其中包括主模板来替换<h:form> ,并增加了<f:view><h:form>

+0

同意,但对于一些情况下,我只是希望有象上述一个简单的链接,我仍然需要编写以下代码:

任何人都可以教我如何风格注释代码;( – sunnycmf 2010-02-12 07:19:39

+0

+1基本上是第二点,即使你可以使用''在分割你的网页单独的块 - 用于Ajax调用。 – romaintaz 2010-02-12 07:21:01

+0

感谢所有的建议;) – sunnycmf 2010-02-12 10:10:35