Передача заголовков http через страницу портлета liferay - PullRequest
1 голос
/ 25 июля 2011

В некоторых портлетах есть страница, к которой я хочу получить доступ через ajax.На этой странице должны быть установлены заголовки http (по крайней мере, Status).Насколько я вижу, такие заголовки очищаются.

Вопрос в том, как я могу сказать LifeRay передать некоторые конкретные заголовки?

1 Ответ

4 голосов
/ 26 июля 2011

Портлеты по своему дизайну не могут получить доступ к заголовку HTTP - потому что вы не можете предсказать, какие портлеты будут вместе на странице.Представьте себе одну настройку кэширующей информации для «немедленной проверки», в то время как другой портлет доволен еженедельной повторной проверкой - все они заканчиваются на одной странице.

Однако, чтобы преодолеть это ограничение, появился Portletspec 2.0, то есть JSR-286.обслуживание ресурсов в качестве отдельной фазы жизненного цикла, в частности, добавление такой возможности в портлеты.Однако это отдельно от генерации вашего «основного» вывода портлета.

Механика будет отличаться в зависимости от используемой платформы, для простого API портлета ищите serveResource как «home», предложенное в комментарии к вашему вопросу.У вас есть доступ к заголовкам HTTP из параметров ResourceRequest / ResourceResponse для этого метода, но - по замыслу - не через ActionResponse или RenderResponse.

...