내가하는 Liferay 사용하고 6.1 CE (을 Liferay 포털 커뮤니티 에디션 6.1.1 CE의 GA2 (팻/빌드 6101/2012년 7월 31일))하는 Liferay 포틀릿을 사용하여 : JSPF 파일 renderURL 태그
내가 설정하려면 컨트롤 패널의 테이블 레이아웃 컨트롤 팬의 첫 번째 페이지 (기본적으로 비어 있으며 왼쪽에서 메뉴를 선택하십시오. html/portal/layout/view/control-panel.jsp
을 변경하고이 코드를 추가 할 후크에 일하고 있어요 :
<%
String description2 = StringPool.BLANK;
String className2 = "portlet-msg-info";
if (denyAccess||
(themeDisplay.isStateExclusive() ||
themeDisplay.isStatePopUp() ||
(layoutTypePortlet.hasStateMax() && (portlet != null)) ||
Validator.isNotNull(controlPanelCategory)))
{
%>
<%@ include file="/html/portal/layout/view/panel_content.jspf" %>
<%
} else
{
if (Validator.isNull(description2)) {
//khane : here we should load control panel first page
//description = LanguageUtil.get(pageContext, "please-select-a-tool- from-the-left-menu");
%>
<%@ include file="/html/portlet/control_panel_menu/test.jspf" %>
<%
}
}
%>
이 코드는 쇼를 내 페이지 test.jspf
. 그것이 "제어판에서 왼쪽 도구를 선택하십시오"메시지 대신 첫 번째 제어판 페이지 인 경우,
하지만 내 문제는 약 test.jspf
입니다. 대신 아이콘
[ActionURL Tag:71] Render response is null because tag is not being called within the context of a portlet
및 링크가 동일한 페이지 (제어판 첫 번째 페이지)입니다 :
나는 html.portlet/control-panel-menu/view.jsp
에가 비슷한 만들려고하지만, 처리 liferay-portlet:renderURL
태그에 나는이 오류가 아이콘에 링크를 생성 각각에 해당합니다. 이건 내 test.jspf
코드입니다 :
<%
String[] allCategories2 = PortletCategoryKeys.ALL;
String controlPanelCategory2 = HttpUtil.getParameter(PortalUtil.getCurrentURL(request), "controlPanelCategory", false);
if (Validator.isNotNull(controlPanelCategory2)) {
allCategories2 = new String[] {controlPanelCategory2};
}
for (String curCategory : allCategories2) {
List<Portlet> portlets = PortalUtil.getControlPanelPortlets(curCategory, themeDisplay);
%>
<ul class="category-portlets">
<%
for (Portlet portlet2 : portlets) {
if (portlet2.isActive() && !portlet2.isInstanceable()) {
String portletId = portlet2.getPortletId();
%>
<li class="<%= ppid.equals(portletId) ? "selected-portlet" : "" %>">
<a href="<liferay-portlet:renderURL doAsGroupId="<%= themeDisplay.getScopeGroupId() %>" portletName="<%= portlet2.getRootPortletId() %>" windowState="<%= WindowState.MAXIMIZED.toString() %>" />" id="<portlet2:namespace />portlet_<%= portletId %>">
<c:choose>
<c:when test="<%= Validator.isNull(portlet2.getIcon()) %>">
1<liferay-ui:icon src='<%= themeDisplay.getPathContext() + "/html/icons/default.png" %>' />
</c:when>
<c:otherwise>
<liferay-portlet:icon-portlet portlet="<%= portlet2 %>" />
</c:otherwise>
</c:choose>
<%= PortalUtil.getPortletTitle(portlet2, application, locale) %>
</a>
</li>
<%
}
}
%>
</ul>
<%
}
%>
어떤 도움을 주시겠습니까?
오류의 스택 추적을 붙여 넣을 수 있습니까? –
은 다음을 보여줍니다 : [ActionURL Tag : 71] 태그가 포틀릿의 컨텍스트 내에서 호출되지 않기 때문에 렌더 응답이 null입니다 – user3237100