# Mit EL Parameter an Methode übergeben



## Phenix (24. Mai 2011)

Hallo zusammen,

so wie ich das verstanden habe, soll es mit JSF 2.0 möglich sein, direkt aus der EL heraus Parameter an Methoden zu übergeben. Dies habe ich verscuth, doch funktioniert das leider nicht. Vielleicht findet ihr ja den Fehler:


```
<p:menu type="sliding" maxHeight="125" backLabel="Zurück">
  <c:forEach items="#{categoryManager.categories}" var="category">
    <p:submenu label="#{category.description}">
      <c:forEach items="#{category.entries}" var="entry">
        <p:menuitem value="#{entry.headline}" actionListener="#{initial.setStatus(entry.headline)}" update="grid" />
      </c:forEach>
    </p:submenu>
  </c:forEach>
</p:menu>
```


Ich versuche also bei einem Klick eine Methode aufzurufen und ihr den Parameter Entry zu übergeben. So sieht die Methode setStatus aus:


```
public void setStatus(Entry entry)
{
if(entry.getHeadline().equals("jQuery"))
....
```


Fehlermeldung;

/index.xhtml @56,128 action="#{initial.setStatus(entry)}" Error Parsing: #{initial.setStatus(entry)}

Danke im Voraus


----------



## Sym (24. Mai 2011)

Hi, 

die Signatur für Actionlistener in JSF sieht so aus:


```
public void setStatus(ActionEvent event){
}
```

Mit 


```
<p:menuitem value="#{entry.headline}"update="grid" actionListener="#{initial. attrListener}">
    <f:attribute name="myvalue" value="#{entry.headline}" />
</p:menuItem>
```

kannst Du etwas an die Bean übergeben. Ausgelesen wird das so:


```
public void attrListener(ActionEvent event){
    String myValue = (String)event.getComponent().getAttributes().get("myvalue");
}
```


----------



## Phenix (24. Mai 2011)

Ok, danke sehr


----------



## Sym (24. Mai 2011)

Wie verwendest Du die Action? Über einen Button? Wie sieht Dein Code aus?


----------



## Phenix (24. Mai 2011)

Sorry, mein Firefox hat gesponnen und nur deine halbe Antwort angezeigt. Klappt prima. Danke


----------



## Sym (24. Mai 2011)

Alles klar.


----------

