【发布时间】:2014-12-10 04:06:42
【问题描述】:
我使用的是p:accordionPanel 而不是p:dataTable。每次更改选项卡时,我都想在控制器中重置活动选项卡的实体 ID。 IOW,如果accordionPanel中的选项卡对应ID为1、2、3的实体,当我选择一个时,我希望将控制器中的activeEntityID变量重置为相应的ID:
<p:accordionPanel value="#{litigController.appealsForCase}" var="appeal">
<p:ajax event="tabChange" listener="#{litigController.setSelectedAppeal}"/>
<p:tab id="#{appeal.appealID}" title="Appellate Court No #{appeal.appelateCourtNo}">
控制器方法:
public void setSelectedAppeal(TabChangeEvent event) {
this.activeAppealID = event.getTab().getId();
System.out.println("tab change for appealID " + this.activeAppealID);
}
但是,我收到了IllegalArgumentException:
java.lang.IllegalArgumentException: Empty id attribute is not allowed
如何在我的手风琴面板和控制器中的每个选项卡之间链接身份。我尝试在this example 之后对我的代码进行建模,但他们的示例很糟糕,因为它使用标签标题而不是 id。
【问题讨论】:
标签: jsf primefaces