2009-12-11 7 views
0

Jusqu'à présent, j'ai utilisé dans JSF 1.2 commandLinks et le setPropertyActionListener pour passer par exemple. l'élément selectedItem d'un DataTable.Passing Parameters ins JSF 2.0

<h:commandLink action="#{Result.show}" value="#{foo.name}"> 
<f:setPropertyActionListener value="#{foo}" target="#{Result.selectedFoo}"/> 
</h:commandLink> 

Dans un exemple JSF 2.0 and JPA i ai vu une solution, où l'élément sélectionné est transmis en tant que paramètre à une fonction. Mais si j'essaie d'exécuter cette fonction sur un serveur Glassfish 2.1, j'obtiens une exception.

<h:commandLink action="#{Result.showFoo(foo)}" value="#{foo.name}"> 

      </h:commandLink> 

javax.faces.view.facelets.TagAttributeException: javax.el.ELException: Erreur d'analyse: javax.servlet.ServletException:

Je suis seulement en utilisant ManagedBeans simples, pas EJB.

Merci.

Répondre

2

Le langage d'expression unifiée (tout ce qui #{}/${} choses) est maintenu dans le cadre de la spécification JSP. Vous avez probablement besoin d'une version plus récente de l'API JSP. Je vois que Glassfish v3 comprend EL 2.2. Je crois que cette spécification inclut la fonctionnalité que vous voulez.