Tardee…
Galera estou com o segiunte problema…
estou fazendo uma aplcação usando JSF2 e mais para frente vai ter o EJB tbm…
eu tenho um controle de abas, onde cada aba abre carrega outra página, e funciona da seguinte maneira:
View
<p:layoutUnit position="center" resizable="true">
<p:tabView id="centro" activeIndex="#{tabMngr.tabCounter}">
<c:forEach id="loop" items="#{tabMngr.tabs}" var="tab" varStatus="status" >
<div id="tabs">
<p:tab title="#{tab.label}">
<ui:include src="#{tab.content}"/>
</p:tab>
</div>
</c:forEach>
</p:tabView>
</p:layoutUnit>
TabMngr:
@ManagedBean
@SessionScoped
public class TabMngr {
/** Creates a new instance of TabMngr */
private List<Tab> tabs = new ArrayList();
private int tabCounter = 2;
private int index;
public int getTabCounter() {
return tabCounter;
}
public void setTabCounter(int tabCounter) {
this.tabCounter = tabCounter;
}
public TabMngr() {
this.tabs.add(new Tab("Label 1", "teste.xhtml"));
this.tabs.add(new Tab("Label 2", "teste2.xhtml"));
this.tabs.add(new Tab("Label 3", "teste3.xhtml"));
}
public List getTabs(){
return tabs;
}
public void addTabs(String label, String content){
this.tabs.add(new Tab(label, content));
tabCounter++;
}
public void removeTab(){
this.tabs.remove(tabCounter);
tabCounter--;
}
public void adddTab(){
tabCounter++;
this.tabs.add(new Tab("a "+tabCounter, "teste.xhtml"));
System.out.println(tabCounter);
}
}
porém o que está acontecendo é o seguinte:
quando eu adiciono uma nova Aba executa uma atualizaçao no <p:tabView “centro”, fazendo com o que o loop execute denovo carregando todas as abas novamente.
MÁÁÁÁÁSSS…
como ele carrega todas as abas denovo, eu perco tudo que estava sendo digitado nas abas que estavam abertas, intenderam ??
preciso de uma idéia que quando eu abrisse uma nova aba, ele mantesse “integro” o estado das outras abas
alguem tem alguma idéia para ajudar ??
Agradeço desde já !!