Как сделать так, чтобы портлет входа Liferay перенаправлялся в развернутую версию для отображения ошибок проверки? - PullRequest
0 голосов
/ 30 ноября 2011

У меня есть тема, в которую в заголовок встроен портлет входа в систему, и я не хочу, чтобы в этом портлете входа появлялись сообщения проверки, вместо этого я хочу, чтобы Liferay перенаправил на максимизированную версию портлета входа с ошибками проверки .

Есть ли простой способ сделать это через файлы шаблонов Velocity?

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

Спасибо

1 Ответ

2 голосов
/ 30 ноября 2011

Я не верю, что Liferay 6.0 может перезаписывать код портлета с помощью виртуальной машины.Однако это новая функция в следующем выпуске 6.1.

Но если вы привязаны к Liferay 6.0, вы можете создать подключаемый модуль для решения этой проблемы.

  • Создайте подключаемый модуль.
  • В вашем файле hook.xml определите:
    <hook>
        <custom-jsp-dir>/META-INF/custom_jsps</custom-jsp-dir>
    </hook>
  • Скопируйте оригинал login.jsp из Liferay Portal в /META-INF/custom_jsps/html/portlet/login.jsp.
  • Вы хотите изменить URL-адрес действия формы, чтобы максимизировать состояние окна.Вы можете сделать это, добавив атрибут windowState к тегу lib, который генерирует URL.Например:
    <portlet:actionURL windowState="<%= LiferayWindowState.MAXIMIZED.toString() %>" />

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

...