Вот сценарий: у Нас есть приложение, работающее на Портальном сервере 6.1 Webphere и Spring MVC. Существует страница с единственным портлетом, который показывает сетку, полную записей. После того как одна из тех записей нажата, она должна перейти к другому портлету, который находится на другой странице - возможно даже другом приложении портлета на том же портальном сервере - и отобразите ту определенную запись.
Вот вопрос: я считал, что, с помощью Портала 2.0's "Общедоступные Параметры Рендеринга", можно обменяться данными между портлетами - и это должно решить большинство моих проблем. Проблема, я не могу найти, как это работает при использовании Spring MVC. Я не могу найти ссылку на "Общедоступные Параметры Рендеринга" в пружинной технической документации MVC, все же некоторые люди сказали, что у них есть она работа. Кто-то может показать мне конкретно, где подробная документация относительно этого, или дайте мне маленький отрывок кода примера, который показывает, как я могу получить доступ к этим общедоступным параметрам рендеринга в своих классах контроллера? Кроме того, если существует лучший способ достигнуть этого в моей среде, что это и где я могу найти пример? Не отвечайте, "Если необходимо сделать это, Вы не должны использовать портал" или, "При использовании технологии XYZ вместо этого, затем можно сделать это и это". Я не могу изменить среду - это - то, что это - я просто должен заставить его работать!:) Спасибо!
Вы можете использовать общедоступные параметры рендеринга так же, как и свои собственные параметры рендеринга. Вы просто должны объявить их в своем portlet.xml. Только имейте в виду, что вам не разрешается иметь публичные параметры рендеринга, которые имеют то же имя, что и "частные" параметры рендеринга.
Вам нужно только добавить что-то вроде этого в ваш portlet.xml:
<public-render-parameter>
<identifier>myParam</identifier>
<qname xmlns:x="http://sun.com/params">x:myParam</qname>
</public-render-parameter>
и добавить следующую строку в дескриптор вашего портлета:
<portlet>
. . .
<supported-public-render-parameter>myParam</supported-public-render-parameter>
</portlet>
Затем вы можете использовать обычные вызовы getRenderParameter для "myParam" во всех портлетах, имеющих эту запись в дескрипторе портлета.
Для получения дополнительной информации: http://blogs.oracle.com/deepakg/entry/jsr286_public_render_parameter_feature