使用 Public render 引數

這種方法在 JSR 286 中引入。

在 JSR 168 中,portlet 的 processAction 中設定的呈現引數僅在該 portlet 中可用。使用 Public Render Parameters 功能,在一個 portlet 的 processAction 中設定的呈現引數也可用於呈現其他 portlet。為了配置這個,對於支援這個的所有 portlet:

portlet.xml 中 portlet 標記結束之前新增 <supported-public-render-parameter> 標記

<security-role-ref>
    <role-name>user</role-name>
</security-role-ref>
<supported-public-render-parameter>{param-name}</supported-public-render-parameter>
</portlet>

<portlet-app> 標籤結束之前新增 <public-render-parameter> 標籤

  <public-render-parameter>
    <identifier>{param-name}</identifier>
    <qname xmlns:x="localhost">x:{param-name}</qname>
  </public-render-parameter>
</portlet-app>

processAction 方法中,需要在響應中設定 param 值

res.setRenderParameter({param-name},{param-value});

釋出完成為所有必需的 portlet 配置此功能後,在執行相關 portlet 的操作階段後,param 應該在呈現階段可用於頁面上的所有支援 portlet,而不管是相同或不同應用程式的一部分(war )。