Hallo,
ich versuche mich gerade an ActionListenern (JSF 1.2).
Dazu habe ich folgenden Listener programmiert:
Wenn ich auf den Button Klicke, soll er den Text für das OutputLabel ändern und ausgeben.
Sobald ich den Button geklickt habe, springt er auch in die Methode und findet auch die korrekte
Komponente. Nur leider wird der Wert nicht geändert.
JSP-Seite:
ich versuche mich gerade an ActionListenern (JSF 1.2).
Dazu habe ich folgenden Listener programmiert:
Wenn ich auf den Button Klicke, soll er den Text für das OutputLabel ändern und ausgeben.
Sobald ich den Button geklickt habe, springt er auch in die Methode und findet auch die korrekte
Komponente. Nur leider wird der Wert nicht geändert.
Java:
import java.util.Iterator;
import java.util.List;
import javax.faces.component.UIComponent;
import javax.faces.component.html.*;
import javax.faces.event.AbortProcessingException;
import javax.faces.event.ActionEvent;
import javax.faces.event.ActionListener;
public class ActionListener1 implements ActionListener
{
public void processAction(ActionEvent event) throws AbortProcessingException
{
System.out.println("########## ActionListener betreten.");
HtmlOutputLabel text = null;
List components = event.getComponent().getParent().getChildren();
for(Iterator iter = components.iterator(); iter.hasNext();)
{
UIComponent element = (UIComponent)iter.next();
if(element.getId().equals("outme"))
{
System.out.println("TextArea gefunden!");
text = (HtmlOutputLabel)element;
}
}
text.setValue("Funzt.");
}
}
JSP-Seite:
HTML:
<h:form id="form1">
<h:outputLabel value="" id="outme"></h:outputLabel>
<p><h:commandButton styleClass="button" value="Antrag absenden" id="save" action="success">
<f:actionListener type="ActionListener1"></f:actionListener>
</h:commandButton></p>
</h:form>