Nexi
Grünschnabel
Hu Leute, bin etwas am verzweifeln.
Folgendes Problem:
Ich habe auf meine Seite ein PanelGrid welches ein paar weitere Elemente enthält. Dieses wird mittel Java erstellt und über das binding attribut an dieses Element gebunden. Was soweit auch super funktioniert. Allerdings möchte ich über einen Button eine bestimmte Zeile löschen. Das funktioniert auch noch soweit
Nun der haken.
Über das ReRender attribute des commandbuttons (a4j / richfaces) möchte ich gern dieses PanelGrid refreshen,
was allerdings nichtmal im ansatz funktioniert. Es passiert einfach garnichts.
Hier mal die JSP:
Und hier der JAVA-Code:
Wichtig ist vielleicht noch, das ich aktuelle immer das erste Element aus der Liste lösche, falls sich jemand wundert
Wenn ich andere Element nehmen, zb outputText etc und mache dort die Simpelsten Ajax-Requests, funktioniert es.
Also Text setzen, dann ReRender angeben und anzeigen... nur bei dem PanelGrid nicht.
Hoffentlich könnt ihr mir weiterhelfen.
Danke schonmal
Folgendes Problem:
Ich habe auf meine Seite ein PanelGrid welches ein paar weitere Elemente enthält. Dieses wird mittel Java erstellt und über das binding attribut an dieses Element gebunden. Was soweit auch super funktioniert. Allerdings möchte ich über einen Button eine bestimmte Zeile löschen. Das funktioniert auch noch soweit

Nun der haken.
Über das ReRender attribute des commandbuttons (a4j / richfaces) möchte ich gern dieses PanelGrid refreshen,
was allerdings nichtmal im ansatz funktioniert. Es passiert einfach garnichts.
Hier mal die JSP:
Code:
<a4j:form ajaxSubmit="true">
<a4j:outputPanel id="panel">
<h:panelGrid binding="#{controller.companyList}"/>
</a4j:outputPanel>
<a4j:commandButton value="refresh" action="#{controller.delRow}" reRender="panel" ajaxSingle="true"/>
</a4j:form>
Und hier der JAVA-Code:
Code:
public HtmlPanelGrid getCompanyList()
{
if(this.m_CompanyList == null)
{
// Genarate Pilotcompanies
this.m_CompanyList = CompanyPanelGrid.getInstance();
this.m_CompanyList.generateGrid();
}
return this.m_CompanyList.getHtmlGrid();
}
public void delRow()
{
// AjaxContext holen
AjaxContext lAjaxContext = AjaxContext.getCurrentInstance();
// ComponentID suchen welche geschickt wurde (z.B. die eines Buttons);
String lComponentId = lAjaxContext.getAjaxSingleClientId();
// Eintrag löschen
this.m_CompanyList.removeEntry(lComponentId);
lAjaxContext = null;
lComponentId = null;
}
Wichtig ist vielleicht noch, das ich aktuelle immer das erste Element aus der Liste lösche, falls sich jemand wundert

Wenn ich andere Element nehmen, zb outputText etc und mache dort die Simpelsten Ajax-Requests, funktioniert es.
Also Text setzen, dann ReRender angeben und anzeigen... nur bei dem PanelGrid nicht.
Hoffentlich könnt ihr mir weiterhelfen.
Danke schonmal
Zuletzt bearbeitet: