2013-04-18 77 views
0

我使用primefaces菜單欄,並根據所選擇的菜單項,我想傳遞一個diferent參數的URL(GET)JSF2提取URL參數

<ui:composition> 
    <h:form rendered="#{facesContext.externalContext.userPrincipal != null}"> 
     <p:menubar> 
      <p:menuitem value="#{msg['menu.home']}" url="/index.xhtml" /> 
      <p:submenu label="#{msg['menu.maintenance']}" > 
       <p:menuitem id="client" value="#{msg['menu.clients']}" action="/person/newPerson?faces-redirect=true" ajax="false" includeViewParams="true"> 
        **<f:param name="type" value="client"/>** 
       </p:menuitem> 
       <p:menuitem id="supplier" value="#{msg['menu.suppliers']}" action="/person/newPerson?faces-redirect=true" ajax="false" > 
        **<f:param name="type" value="supplier"/>** 
       </p:menuitem> 
      </p:submenu> 

這樣,當菜單項「客戶」是選定我想使用GET參數「類型=客戶」,在newPerson.xhtml像這樣:

<h:outputText value="Parameter: #{param['type']}" /> 

但是,沒有參數被在URL中傳遞。有人能告訴我我的代碼有什麼問題嗎?

回答

0

而是行動的屬性嘗試URL

<p:menuitem id="client" value="#{msg['menu.clients']}" url="/person/newPerson?faces-redirect=true&type=client" ajax="false" includeViewParams="true"> 
</p:menuitem>