2015-10-22 2 views
0

Я использую портлет портфолио Liferay 6.2 (Tomcat) и Liferay IDE (затмение). Я создал два проекта плагина Liferay. В первом портлете (первый портлет плагина) я сохраняю некоторые данные с помощью настроек портлета. Теперь я покажу второй портлет в первом портлете. Как я могу это сделать? Я нашел следующий код и ссылкуПоказать портлет Liferay внутри другого портлета liferay

Open portlet from other portlet

var url; 
function createRenderURL(portletId) {  
AUI().ready('liferay-portlet-url', function(A) { 
    var renderURL = Liferay.PortletURL.createRenderURL(); 
    renderURL.setName("test");  
    renderURL.setWindowState("pop_up"); 
    renderURL.setPortletId(portletId);   
    url = renderURL.toString(); 
});} 

Но я не unterstand этот код? Я добавляю этот код для просмотра jsp, где я могу найти portletId? Пожалуйста, может кто-нибудь объяснить мне это немного? Я новичок в Liferay

+0

http://stackoverflow.com/questions/31849978/how- to-call-a-liferay-calendar-portlet-from-my-own-portlet/31850867 # 31850867 –

+1

Вы хотите отображать портлет с помощью всплывающего окна или вставлять его в один и тот же портлет? –

+0

Я буду отображать всплывающее окно портлета –

ответ

3

Это зависит от того, является ли ваш портлет небезопасным или нет.

Не instanciable: ваш portletId должен выглядеть Weather_WAR_WeatherPortlet

Instanciable: Ваш portletId должен выглядеть Weather_WAR_WeatherPortlet_INSTANCE_5aSc

Вы можете проверить portletId на стол "портлет" внутри базы данных ,

Если вы хотите получить его programmation вы должны использовать PortletConfig класс

((com.liferay.portlet.PortletConfigImpl) portletConfig).getPortletId() 

NB: portletId которые являются число Liferay портлета

Смежные вопросы