Я пытаюсь установить параметры портлета, не касаясь портлета.xml.Установить портлет по умолчанию Предпочтения
Вот мой портлет:
-myportletclass
-myportletjsp
-myconclass
-myconfjsp
Когда я нажимаю на предпочтениях, я могу увидеть confjsp, которым отобразить форму для моих предпочтений. И, когда я его отправлю, задайте предпочтения значениям в форме.
Но у меня нет никаких значений по умолчанию, без изменения portlet.xml.
Какой цвет я добавляю и где?
Я видел, как некоторые делают это в рендеринг класса конфигурации, но это не работает.
С уважением. Спасибо.
редактировать: путь я установить мои предпочтения:
во-первых, у меня есть простой вид я мой конф JSP, основной, нет необходимости добавлять его; Тогда, я имею ConfController:
@Controller
@RequestMapping("EDIT")
public class ConfigurationController {
@ModelAttribute("validatePref")
public ValidatePrefForm getValidatePrefForm() {
ValidatePrefForm form = new ValidatePrefForm();
return form;
}
@ActionMapping(params = "action=validatePref")
public void processAction(@ModelAttribute("validatePref") ValidatePrefForm form,
PortletPreferences portletPreferences, ActionResponse response)
throws Exception {
String mylink = form.getMylink();
if (null != mylink && !mylink .equals("")) {
portletPreferences.setValue("mylink ", mylink);
}
portletPreferences.store();
}
@RenderMapping
public String render() throws Exception {
return "myportletjsp.jsp";
}
}
И тогда, в моем портлета у меня есть это, чтобы получить значение:
mylink= preferences.getValue("mylink", mylink);
if(null==mylink){
mylink= mydefaultUrl;
}
И тогда я могу использовать MyLink
Но, во-вторых, кажется, что когда я добавляю новый экземпляр портлета, он сохраняет настройки, которые я установил для портлета уже на странице. Как я могу это исправить: иметь значение по умолчанию, когда у меня был портлет на странице. Спасибо. Edit: если возможно, я предпочитаю способ без использования portlet.xml, но я не исключаю его. –
@Jean: Как вы настраиваете свои предпочтения? Поскольку я думаю, что настройки портлета заданы для каждого экземпляра портлета, добавленного на страницу, а не для портлета или пользователя в целом. Liferay также устанавливает значение по умолчанию для настроек, вы можете проверить 'init.jsp' (если у вас есть источник) для встроенных портлетов liferay. –
Я редактирую свой вопрос для вас, Пракаш. –