2012-03-15 5 views
1

У меня есть портлет, в котором администратор, который добавил портлет на страницу, должен его настроить (выполните некоторые настройки базы данных, чтобы портлет работал). Это выполняется в настройках (режим редактирования), которые только администратор может видеть. Пока это работает, после того, как администратор выполнил настройки, все пользователи могут видеть портлет. У меня была только одна проблема: личные значения пользователя, которые были перезаписаны другими пользователями и т. Д. Итак, я узнал на форумах Liferay, как сделать портлет, чтобы сохранить его настройки, специфичные для пользователя. Он работает, но если я настрою портлет как администратор, тогда только я могу видеть рабочий портлет, который другие пользователи видят только не настроенный портлет. Есть ли способ настроить портлет как администратора в режиме редактирования, чтобы портлет работал для всех пользователей и сохранял пользовательскую настройку параметров портлета Liferay?Liferay: пользовательские параметры портлета

+2

Прочитайте этот индивидуален: [как сохранить портлет информации о пользователе?] [1] [1]: http://stackoverflow.com/questions/7015508/liferay-how-to-save- to-portlet-user-information/7015682 # 7015682 –

+0

Хотя frant.hartm ответил на ваш вопрос, решение Жюльена на самом деле - это работа, чтобы достичь того, чего вы пытаетесь достичь. – Jonny

+0

@ Jonny yea Я уже опробовал это, отлично работает, я думаю, что он оставит его, так как теперь количество пользователей в портале на самом деле очень мало, поэтому это идеальное решение для моего дела. – Kiesa

ответ

3

Вы должны понимать область своих предпочтений.

Либо вы делаете их портал широким, что означает, в основном, тот же экземпляр PortletPreferences используется для всех пользователей,

или сделать их пользователь конкретным и каждый пользователь имеет свой собственный экземпляр.

В результате у вас не может быть части настроек, заданных администратором - широким и другим частями пользователя, предназначенным для хранения данных пользователей.

У вас есть несколько вариантов, в зависимости, хотите ли вы, чтобы изменить их в качестве администратора позже:

если нет, то определить значение настроек по умолчанию в portlet.xml.

, если да, тогда вы должны сделать их доступными для портала и сохранить данные пользователей в другом месте (например, базу данных).

Второе решение лучше, если вам нужно хранить больший объем данных, потому что настройки сериализуются в XML и сохраняются в одном столбце в виде текста. Например. в базе данных оракула вы ограничены 4000 символами.

0

Я думаю, что вы можете сделать это с помощью настраиваемого режима конфигурации liferay (значок маленького гаечного ключа в строке заголовка портлета). Режим редактирования можно затем использовать для хранения пользовательских настроек.

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