Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java EE (J2EE) и Spring > JSF создание компонент


Автор: Predator83 19.3.2008, 17:45
Привет всем!
Как можно динамично создавать jsf-компоненты и показывать их на страничке. Например создать N-е число кнопок и отобразить их.
Спасибо.

Автор: VMA 20.3.2008, 13:36
можно так
Код

<h:dataTable id="listButton" var="butt" value="#{Bean.listButton}">
     <h:column>
          <f:facet name="header">
               <h:outputText value="Кнопки"/>
          </f:facet>
          <h:commandButton id="#{butt.id} value="#{butt.name}" action="#{butt.action}"/>
     </h:column>
</h:dataTable>


listButton типа List<Butt>

Код

public class Butt{
    private String name;
    private String id;
    private String action;

    public String getName(){
        return name;
    }

    public void setName(String name){
        this.name = name;
    }

    public String getId(){
        return id;
    }

    public void setId(String id){
        this.id = id;
    }

    public String getAction(){
        return action;
    }

    public void setAction(String action){
        this.action = action;
    }
}

Автор: necromancer 20.3.2008, 20:08
а можно при помощи биндинга  или по айди получить контейнер где будут хранится наши компоненты и путем создания к примеру входного поля (HtmlInputText) добавлять ему в чилдрены.

UIComponent compParent = findConponent("comp");
compParent.addChildren(new HtmlInputText());
достовреность кода не гарантирую =) примеры посмотри в документации по richfaces

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)