gpt4 book ai didi

java - 从一个 Liferay 插件项目调用另一个 Liferay 插件项目

转载 作者:行者123 更新时间:2023-11-30 07:52:56 26 4
gpt4 key购买 nike

我使用 Liferay portlet bundle 6.2 (Tomcat) 和 Liferay IDE(eclipse)。我创建了一个 Liferay 插件项目。我在这个项目中使用 Portlet Preferences 保存了一些数据,并创建了一个名为“Search”的按钮。我的问题是,当我按下第一个 Liferay 插件项目中创建的“搜索”按钮时,如何调用另一个 Liferay 插件项目?稍后我将从第二个 Liferay 插件项目中检索第一个项目保存的数据。

下面是 search.jsp,我在其中创建了按钮搜索

<%@ taglib uri="http://java.sun.com/portlet_2_0" prefix="portlet" %>
<%@ taglib uri="http://java.sun.com/portlet_2_0" prefix="portlet" %>
<%@ taglib uri="http://alloy.liferay.com/tld/aui" prefix="aui" %>
<%@ taglib uri="http://liferay.com/tld/ui" prefix="liferay-ui" %>

<portlet:defineObjects />


<aui:button-row cssClass="guestbook-buttons">

<portlet:renderURL var="addEntryURL">
<portlet:param name="mvcPath" value="/html/voda/edit_entry.jsp"></portlet:param>
</portlet:renderURL>

<aui:button onClick="<%= addEntryURL.toString() %>" value="Add Entry"></aui:button>

<portlet:renderURL var="showURL">
<portlet:param name="mvcPath" value="/html/voda/show_entries.jsp"></portlet:param>
</portlet:renderURL>

<aui:button onClick="<%= showURL.toString() %>" value="Show"></aui:button>

<portlet:renderURL var="searchURL">
<portlet:param name="mvcPath" value="/html/voda/search.jsp"></portlet:param>
</portlet:renderURL>

<aui:button onClick="<%= searchURL.toString() %>" value="Search"></aui:button>

最佳答案

您可以引用this SO answer它展示了如何在弹出窗口中从第一个 portlet 打开第二个 portlet。

同样的原则适用,您可以忽略打开弹出窗口的代码。

以下是答案中的要点(答案中提供了详细信息),您应该考虑这些要点并忽略其他 JavaScript 内容:

  1. 您需要在第一个 portlet 中使用以下属性创建呈现 URL portletName="testPopup_WAR_testPopupportlet"替换testPopup_WAR_testPopupportlet使用您的第二个 portlet 的 ID。
  2. 在 anchor 标记中提供上述链接 <a> .
  3. 更改 <add-default-resource>true</add-default-resource>liferay-portlet.xml您的第二个 portlet。
  4. 或者如果 liferay-portlet.xml 没有变化的话那么你应该拥有属性 portlet.add.default.resource.check.whitelistportal-ext.properties .

如果您想学习 Liferay Portlet 开发,那么最好的开始方式是阅读本书 Liferay in Action Portlets in Action 或者从 Liferay developer Network 上的新教程开始然后 Liferay Developer Guide .

希望这有帮助。

关于java - 从一个 Liferay 插件项目调用另一个 Liferay 插件项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33104251/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com