2014-05-25 5 views
2

J'ai un problème avec les paramètres de passage avec h: lienh: lien et paramètres JSF

<h:link id="partyname" outcome="memberlist" value="memberlist"> 
    <f:param name="partyname" value="#{partyBean.currentparty.name}" /> 
</h:link> 

mais quand je clique sur le lien de l'URL générée est simplement le suivi:

http://localhost:8080/DigitalStateSWProjectWeb/memberlist.xhtml;jsessionid=29a181ab1a3170496ca9b0200f52 

Le principal problème est que je suis sûr que

#{partyBean.currentparty.name} 

est un code correct et il génère la chaîne correcte .. Je voudrais que mon URL générée est somethink comme:

http://localhost:8080/DigitalStateSWProjectWeb/memberlist.xhtml?partyname=Yellow 

Merci d'avance pour vos réponses.

Répondre

2

Ajoutez simplement metadata entre <h:head> et <h:body> étiquettes. Cela résoudra votre problème.

<f:metadata> 
    <f:viewParam name="partyname" value="#{partyBean.currentparty.name}"/> 
</f:metadata> 

Et ajouter xmlns:f="http://java.sun.com/jsf/core au <ui:fragment> pour la reconnaissance metadata

<ui:fragment xmlns:f="http://java.sun.com/jsf/core"> 
+0

Désolé, juste une autre petite question ... si j'ai maintenant ma h: lien dans chaque ligne d'un dataTable donné, et mon param change pour chaque ligne, comment puis-je définir mon f: metatada?!?!? Je dois connaître l'objet «itaration» sur la table ... – Samuele

+0

jetez un oeil à ce sujet, http://stackoverflow.com/questions/6377798/what-can-fmetadata-and-fviewparam-be-used-for , voici une explication claire – user3127896