2012-02-02 54 views
1

我已經認識到某些表在我的應用程序中出現在不少地方,我試圖將它們打包爲作品。這是什麼,我想出了一個摘錄:作品的參數化動作

<p:dataTable var="permission" value="#{permissionList}" 
    id="permissionTable"> 
    <p:column headerText="Edit" rendered="#{showEdit}" style="width:50px"> 
     <p:rowEditor /> 
     <p:commandLink action="#{removeAction}" update="permissionTable"> 
      <span class="ui-icon ui-icon-close" /> 
     </p:commandLink> 
    </p:column> 
</p:dataTable> 

目前有三個參數:

  • permissionList是表內容
  • showEdit來打開和關閉在線編輯選項不屬於各地都可行。
  • removeAction因爲刪除權限可能意味着將其從角色,主題中刪除或刪除它,具體取決於上下文。

包括permissionTable現在看起來是這樣的:

<ui:include src="compositions/permissionTable.xhtml"> 
    <ui:param name="permissionList" 
     value="#{permissionRoleDetailBean.role.permissions}" /> 
    <ui:param name="showEdit" value="#{true}" /> 
    <ui:param name="removeAction" 
     value="#{permissionRoleDetailBean.removePermission(permission)}" /> 
</ui:include> 

可悲的是,與removeAction參數有問題。無論我傳入什麼,在收錄時似乎都是空的。我確認使用上下文參數名稱(permission)可能類似於乞求麻煩。

所以我怎麼可能既

  • 獲取上述我的方法來工作嗎?
  • 爲作品正確實施動作?我以某種方式懷疑我缺少一些基本的東西。
+1

目前我沒有上述設置的解決方案。但它是否必須是一個包含或您是否也可以定義一個自定義組件(cc:interface,cc:implementation)?參數將在接口中定義,您可以使用類似''。或者這種方法也失敗了? – 2012-02-02 19:12:52

+0

我只是不知道自定義組件,現在我只用了2周的JSF。所以通過使這件事情成爲一個組件參數傳遞應該工作? – 2012-02-03 09:42:33

回答

1

我想象這樣的事情:

permissionTable.xhtml(放入JSF的資源文件夾)

<html 
namespaces go here> 
<cc:interface></cc:interface> 
<cc:implementation> 
    <p:dataTable var="permission" value="#{permissionRoleDetailBean.role.permissions}" id="permissionTable"> 
     <p:column headerText="Edit" rendered="#{cc.attrs.rendered}" style="width:50px"> 
      <p:rowEditor /> 
      <p:commandLink action="#{permissionRoleDetailBean.removePermission(permission)}" update="permissionTable"> 
       <span class="ui-icon ui-icon-close" /> 
      </p:commandLink> 
     </p:column> 
    </p:dataTable> 
</cc:implementation> 


頁面使用

<myComp:permissionTable rendered="#{showEdit}" /> 
+0

'cc'和'myComp'命名空間來自哪裏?資源文件夾在哪裏?我使用的是一個Maven原型,它帶有一個包含'webapp/META-INF','webapp/WEB-INF'和'web-resources'的設置。我會假設它應該是最後一個文件夾,但是在哪裏配置,以便我可以檢查? – 2012-02-03 09:45:24

+1

您好,請看看[真正的抽象:JSF 2.0中的複合UI組件 - 第1部分](http://137.254.16.27/enterprisetechtips/entry/true_abstraction_composite_ui_components)和[JSF 2.0 TLD](http:// docs .oracle.com/CD/E17802_01/J2EE/JavaEE的/ javaserverfaces/2.0 /文檔/ pdldocs /小面/ index.html中)。有很多教程 - 不需要在這裏複製和粘貼。 ;)Gruß,Dennis – 2012-02-03 11:48:24

+0

確實,謝謝你。它只是在網上的JSF教程是如此...多樣化,我並不總是確定要遵循哪一個。 – 2012-02-03 13:47:04