как сгенерировать ссылку на «Управление страницей» в Liferay? - PullRequest
0 голосов
/ 08 января 2012

Я занимаюсь разработкой простого портлета навигации по страницам, и для каждой страницы я хотел бы иметь ссылку на ее «Управление страницей» («Управление> Страница» в верхней панели навигации)

У вас есть какие-либоидеи, как сгенерировать эту ссылку?

Спасибо, Кароль

Ответы [ 2 ]

0 голосов
/ 27 января 2012

Извините, мне нужно было добавить еще один ответ, поскольку в комментарии было меньше символов. Для каждого URL вы должны создать pageSettingsURL, как показано ниже. Запишите следующую логику в цикле для всех макетов сообщества, в котором вы заинтересованы, используя класс LayoutLocalServiceUtil, и передайте plid

PortletURL pageSettingsURL = новый PortletURLImpl ( request, PortletKeys.LAYOUT_MANAGEMENT, plid, PortletRequest.RENDER_PHASE);

            pageSettingsURL.setWindowState(WindowState.MAXIMIZED);
            pageSettingsURL.setPortletMode(PortletMode.VIEW);

            pageSettingsURL.setParameter(
                "struts_action", "/layout_management/edit_pages");

            if (layout.isPrivateLayout()) {
                pageSettingsURL.setParameter("tabs1", "private-pages");
            }
            else {
                pageSettingsURL.setParameter("tabs1", "public-pages");
            }

            pageSettingsURL.setParameter("redirect", currentURL);
            pageSettingsURL.setParameter(
                "groupId", String.valueOf(scopeGroupId));
            pageSettingsURL.setParameter("selPlid", String.valueOf(plid));
0 голосов
/ 09 января 2012

Попробуйте

themeDisplay.getURLPageSettings (). ToString ()

Вы должны получить themeDisplay на странице jsp, если вы используете

Вы должны получить themeDisplay в качестве атрибута запроса вкласс вашего портлета

...