如何从encodebegin添加自定义组件?

时间:2016-01-06 17:22:00

标签: jsf jsf-2 custom-component dynamically-generated

我已经创建了一个扩展UIComponentBase抽象类的自定义组件,所以当我使用这个组件时:<test:mycomponent />它可以正常运行。

我正在创建另一个自定义组件,我想在此版本中使用以前创建的组件,所以我尝试了:

@Override
public void encodeBegin(FacesContext context) throws IOException {

    ResponseWriter writer = context.getResponseWriter();

    writer.startElement("mycomponent", this);

    writer.endElement("mycomponent");                        
}

我认为这是一个很长的镜头,因为startElement只创建了一个带有给定组件名称的标签,即mycomponent,所以我搜索了一下并发现:

  

UIComponentBase mycomponent =   (UIComponentBase)context.getApplication()createComponent(&#34; myComponent的&#34);

如果这是正确的,那么如何添加组件?我正在使用JSF 2.2 我可以在此处找到更多内容的链接也会非常令人沮丧。

0 个答案:

没有答案