[英]Add JSP to portlet Liferay
我必须在liferay的Document and Media portlet中显示一个JPS。
我定义了一个动作类:CmisSearchPortletAction
public class CmisSearchPortletAction extends BaseStrutsPortletAction {
@Override
public void processAction(StrutsPortletAction originalStrutsPortletAction, PortletConfig portletConfig, ActionRequest actionRequest, ActionResponse actionResponse) throws Exception {
// TODO
}
@Override
public String render(StrutsPortletAction originalStrutsPortletAction,PortletConfig portletConfig,RenderRequest renderRequest, RenderResponse renderResponse) throws Exception {
renderRequest.setAttribute("name", "World");
return "/portlet/document_library/cmis_search.jsp";
}
}
我将代码添加到/html/portlet/document_library/toolbar.jsp以执行我的操作:
<span id="<portlet:namespace />searchButtonContainer">
<liferay-util:include page="/html/portlet/document_library/search_button.jsp" />
</span>
我创建页面/html/portlet/document_library/search_button.jsp
<%@ include file="/html/portlet/document_library/init.jsp" %>
<liferay-ui:icon-menu align="left" direction="down" icon="" message="search" showExpanded="<%= false %>" showWhenSingleIcon="<%= true %>">
<portlet:renderURL var="urlSearch">
<portlet:param name="struts_action" value="/document_library/cmis_search" />
<portlet:param name="redirect" value="<%= currentURL %>" />
</portlet:renderURL>
<liferay-ui:icon image="add_instance" message='<%="Busqueda Avanzada"%>' url="<%= urlSearch %>" />
</liferay-ui:icon-menu>
最后,我的JPS操作(cmis_search.jsp):
<%@ include file="/html/portlet/document_library/init.jsp" %>
<% String name = (String)request.getAttribute("name"); %>
Hello <%= name %>!
当我单击搜索按钮时,我的动作(CmisSearchPortletAction)被执行,并且我可以在liferay中查看JSP(cmis_search.jsp),但这是问题所在。
内容不在“文档和媒体” Portlet中。 我怎样才能做到这一点?。
在liferay的Document and Media portlet中显示xxx.JSP
文档和媒体portlet的view.jsp页面位于/ html / portlet / document_library目录中。 您可以使用jsp挂钩扩展/覆盖它。
我可以在适当的地方在其中使用<liferay-util:include page="xxx.jsp" />
。
这是您的操作方法。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.