JSF中的encodeBegin vs encodeEnd,应该首选哪一个

Nav*_*een 5 jsf jsf-1.2

我正在使用javax.faces.render.Renderer该类来呈现我的自定义组件.我要么重写encodeBeginencodeEnd实现我想要的输出.

我想知道何时应该使用这些方法中的任何一种?是否有当要对任何指引encodeBeginencodeEnd使用?

Bal*_*usC 6

这取决于组件树层次结构.关键是,你期待孩子吗?当有孩子时,您希望编码输出看起来像什么?

通常,encodeBegin()如果要在编码子项之前编码输出,则使用此选项.例如HTML之类的开始标记<div>.通常,encodeEnd()如果要在编码子项后编码输出,则使用此选项.例如HTML之类的结束标记</div>.或者可能是另外<script>一个应该在之前生成的<div>.