0

我有两个 portlet:Display-portlet 和 Comment-portlet。

Display-portlet
这显示了一个网格 (html <table>),其详细信息来自数据库。每个表格行显示供应商详细信息并有一个href链接,该链接应该连接到我的Comment portlet并将参数(如, )传递给 Comment-portlet。vendor-nametranscation-id

在每一行都有一个链接,在选择特定供应商时,他的详细信息应该传递给第二个 portlet。

我已经尝试过通过流程操作传递信息的 portlet 到 portlet 事件机制,所以我试图在这里实现相同的逻辑,但我的参数没有传递给操作类。


我的显示 portletview.jsp有下表:

<table>
    <tr>
        <th>Trans.ID</th>
        <th>Vendor Name</th>
        <th>Action</th>
        <th>Discuss</th>
    </tr>
    <tr>
        <td align="center" id="trans_id">
            <%=chatEntry.getTransactionId()%>
        </td>
        <td align="left" id="vname_id">
            <%=chatEntry.getVendorName()%>
        </td>
        <td align="center" id="status_id">
            <%=chatEntry.getStatus()%>
        </td>
        <td align="center">
            <a href="javascript:submitForm()">click</a>
        </td>
    </tr>
</table>

请帮助我应该如何将我的每一行值传递给其他 portlet。

当我尝试使用隐藏值时,默认情况下只选择第一个值。如果有其他方法可以解决此问题,请提出解决方案。

这个问题可能不完全是 Liferay-IPC,但如果提供更好的解决方案将不胜感激。

4

2 回答 2

0

关于 Portlet 到 Portlet 通信的详细描述可以在这里找到:

https://www.liferay.com/community/wiki/-/wiki/Main/Portlet+to+Portlet+Communication?_36_pageResourcePrimKey=6629472

最好的方法是:

1 - 共享会话参数和 2 - 客户端 IPC。

于 2013-12-09T12:10:07.677 回答
0

从您的 JSP 脚本中,我猜测您的 portlet 是 Liferay MVCPortlet。

您可以像使用 JSP 的任何 Java Web 项目一样使用 request.getParamater() 方法执行此操作

这可能需要您将 url 中的参数传递给包含 Comment Portlet 的页面,例如 /web/...../pagename?param=... 作为 GET 方法或作为表单 POST 方法隐藏。

现在可以在 Comment portlet 的 view.jsp 中获取参数 现在可以使用 PortletRequest 或 ActionRequest 获取操作类的参数。

于 2017-04-21T08:13:42.600 回答