用户将看到 4 个组件:1. 自定义 Github portlet,可以在存储库中看到用户的不同提交2. 自定义 jira 组件,用于显示用户的任务3. 包含用户订购文档的 NAS 服务器4. 另一个包含用户订购文档的数据库
我想要一个"主搜索字段",可以在其中输入用户名并更新此搜索中的所有 Portlet。
这可能吗?如果是,如何做到这一点?
一般来说,自定义 Portlet 的好教程会很好
最好的方法是"公共渲染参数",这很容易。
这是一个示例:
<?xml version="1.0"?>
<portlet-app xmlns="http://java.sun.com/xml/ns/portlet/portlet-app_2_0.xsd"
version="2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/portlet/portlet-app_2_0.xsd http://java.sun.com/xml/ns/portlet/portlet-app_2_0.xsd">
<portlet>
<portlet-name>P1</portlet-name>
<display-name>P1</display-name>
<portlet-class>PortletClass1</portlet-class>
...
<security-role-ref>
<role-name>administrator</role-name>
</security-role-ref>
...
<supported-public-render-parameter>param1</supported-public-render-parameter>
</portlet>
<portlet>
<portlet-name>P2</portlet-name>
<display-name>P2</display-name>
<portlet-class>PortletClass2</portlet-class>
...
<security-role-ref>
<role-name>administrator</role-name>
</security-role-ref>
...
<supported-public-render-parameter>param2</supported-public-render-parameter>
</portlet>
...
<public-render-parameter>
<identifier>param1</identifier>
<qname xmlns:x="http://www.liferay.com/public-render-parameters">x:param1</qname>
</public-render-parameter>
<public-render-parameter>
<identifier>param2</identifier>
<qname xmlns:x="http://www.liferay.com/public-render-parameters">x:param2</qname>
</public-render-parameter>
</portlet-app>
在该示例中,Portlet P1 可以修改参数 "param1",P2 可以修改参数 "param2",当其中一个 Portlet 修改他的参数时,其他 Portlet 可以像普通参数一样读取此参数:
request.getParameter(“param1”);