将内部标记传递给Facelet标记

时间:2011-04-21 13:44:57

标签: jsp jsf facelets icefaces

我是一个非常初学的JSP / Facelets开发人员,需要创建一个新的自定义标记来扩展常见的ICEFaces的commandButton。我希望能够知道如何将自定义标记的开头和结尾之间的标记传递给commandButton。当需要处理f:param时,这是必要的。

示例:

<myNS:myTag ...>
    <f:param name="name" value="value" />
    <f:param name="name2" value="value2" />
</myNS:myTag>

应呈现为

<myMarkup>
    <ice:commandButton ...>
        <f:param name="name" value="value" />
        <f:param name="name2" value="value2" />
    </ice:commandButton>
<myMarkup>

个人提示:我对这些技术非常困惑。我仍然在.NET 4中认为 :(

2 个答案:

答案 0 :(得分:2)

尝试并更改要求。你想要做的是COMPLEX,并不是开始使用JSF(或JSP)的好方法。 JSP + JSF不是像ASP.NET这样简单的单一技术,而是以复杂方式分层的两种不同技术(这是不推荐使用该组合的原因之一)。即使你设法做你想做的事情,你也会被JSF对象和JSP标签的不同生命周期所困扰,所以它可能无论如何都不会以你想要的方式工作。

答案 1 :(得分:0)

根据更新后的问题以及使用Facelets(.xhtml文件)而不是JSP(.jsp文件) 的评论。在这种情况下,您可以使用<ui:insert />来声明自定义标记的子项的插入位置。