Reference path vs pageid (Portal)

Troglodyte
Дата: 29.07.2005 10:16:39
Известен Reference path области с портлетом. Как определить на какой странице (pageid или direct access URL) эта область?
Музыка Александр
Дата: 29.07.2005 11:55:45
Когда-то я тоже решал такую проблему, см. http://forums.oracle.com/forums/thread.jspa?messageID=425075񧱳
Хотя поспрашивайте еще в этом форуме, может что-нибудь новенькое появилось.
stdio
Дата: 29.07.2005 12:04:11
Troglodyte
Известен Reference path области с портлетом. Как определить на какой странице (pageid или direct access URL) эта область?
Через репозиторий PORTAL, вестимо.
Troglodyte
Дата: 29.07.2005 13:25:36
2Музыка Александр: То что надо! Спасибо! Вот кусочек кода, который я преобразовал из твоей ссылки под свою задачу, а то там черезчур громоздко. Мало ли кому еще понадобится :)

declare
	ltab_item_record portal.wwpob_api_item.item_record;
	ltab_p_inst PORTAL.WWPOB_PORTLET_INST$%rowtype;
begin
	select * into ltab_p_inst from PORTAL.WWPOB_PORTLET_INST$ where ref_path='60388_PORTLET_MENU_672591';
	ltab_item_record := portal.wwpob_api_item.get_item(
		portal.wwpob_api_item.get_master_thing_id(ltab_p_inst.old_portlet_inst_id, ltab_p_inst.site_id),
		ltab_p_inst.site_id);
	dbms_output.put_line('pageid: '||ltab_item_record.page_id||'; site_id: '||ltab_item_record.site_id);
end;

2stdio: Не понял :)
Что такое "репозиторий PORTAL"? Это та самая мелкая схемка PORTAL, в которой 400 табличек, 150 вьюшек и 800 пакетиков? Я в ней копался, но безуспешно, увы.
stdio
Дата: 29.07.2005 14:09:44
Troglodyte
2stdio: Не понял :)
Что такое "репозиторий PORTAL"? Это та самая мелкая схемка PORTAL, в которой 400 табличек, 150 вьюшек и 800 пакетиков? Я в ней копался, но безуспешно, увы.
Она самая.

Относительно твоего примера.
Ты учти, что этот вариант может иметь исключения:

1) Портлет выложен на шаблоне.
2) _Один_и_тот_же_ экземпляр портлета лежит на разных страницах
итп
Troglodyte
Дата: 29.07.2005 14:35:25
stdio

Относительно твоего примера.
Ты учти, что этот вариант может иметь исключения:

1) Портлет выложен на шаблоне.
2) _Один_и_тот_же_ экземпляр портлета лежит на разных страницах
итп


1) Это при помощи "User Interface Template"?
Мы не применяем такую штуку, у нас все портлеты стандарным образом помещаются в страницы.
2) Так ведь reference path как раз и является уникальным идентификатором области с портлетом. Разве нет?
stdio
Дата: 29.07.2005 15:00:00
Troglodyte
1) Это при помощи "User Interface Template"?
Мы не применяем такую штуку, у нас все портлеты стандарным образом помещаются в страницы.
а) Обыкновенный Template.
б) Навигационная страница
в) Страница, опубликована как портлет.

Что будет в этих случаях?
Troglodyte
2) Так ведь reference path как раз и является уникальным идентификатором области с портлетом. Разве нет?
Нет. Можем создать экземпляр портлета и развесить его на разных страницах. И изменение настроечных параметров этого портлета сразу будет отображаться везде (портлет-то в одном экземпляре). Такие порлеты в репозитории в разделе Shared располагаются.
Troglodyte
Дата: 29.07.2005 15:30:24
stdio

а) Обыкновенный Template.
б) Навигационная страница
в) Страница, опубликована как портлет.

Что будет в этих случаях?


Не знаю :)
(б) и (в) меня не особо волнуют, а вот на (а) придется посмотреть-поэкспериментировать, так эту штуку мы применять собираемся.

stdio

Нет. Можем создать экземпляр портлета и развесить его на разных страницах. И изменение настроечных параметров этого портлета сразу будет отображаться везде (портлет-то в одном экземпляре). Такие порлеты в репозитории в разделе Shared располагаются.


Ну, допустим, мы не применям Shared. Одинаковые портлеты в одинаковых областях должны существовать при помощи Template. А те портлеты, которым требуется применение темы топика, живут в изменяемых областях Template. Будут ли у них reference path одинаковыми?
Troglodyte
Дата: 12.08.2005 14:06:45
stdio

а) Обыкновенный Template.
б) Навигационная страница
в) Страница, опубликована как портлет.

Что будет в этих случаях?

Нет. Можем создать экземпляр портлета и развесить его на разных страницах. И изменение настроечных параметров этого портлета сразу будет отображаться везде (портлет-то в одном экземпляре). Такие порлеты в репозитории в разделе Shared располагаются.


Наконец-то дошли руки - проверил вариант (а), который нам нужен.
Действительно, у портлетов шаблона на всех страницах, построенных на базе данного шаблона, одинаковый reference path.

Но:
1) в контексте проблемы (определить адрес страницы для портлета с некоторыми известными параметрами) любая из страниц подходит, так как в ней есть портлет с нужными параметрами;
2) портлеты, для которых мы будем применять эту функцию, "штучные", то есть будут помещаться в готовые страницы, в заранее приготовленную область шаблона, и у них reference path будет разный.

Так что вроде бы способ по ссылке Музыки Александра нам подходит.
Troglodyte
Дата: 12.08.2005 14:13:59
Troglodyte
1) в контексте проблемы (определить адрес страницы для портлета с некоторыми известными параметрами) любая из страниц подходит, так как в ней есть портлет с нужными параметрами;
2) портлеты, для которых мы будем применять эту функцию, "штучные", то есть будут помещаться в готовые страницы, в заранее приготовленную область шаблона, и у них reference path будет разный.


По п. (1) я не прав - в этом случае возвращается идентификатор шаблона, а не страниц, но п. (2) все равно способ годится.