Я использую Liferay DXP SP7.Я пытаюсь заставить Liferay SessionErrors и SessionMessages добавить сообщения об успехе и ошибках на страницу, содержащую пользовательский портлет, через переопределенный класс Liferay MVCAction - com.liferay.dynamic.data.lists.form.web.internal.portlet.action.AddRecordMVCActionCommand
.Я использую методику, объясненную здесь , чтобы переопределить этот внутренний класс, потому что нам нужно расширить некоторые функциональные возможности форм Liferay, добавив такие вещи, как возможность редактировать форму после ее отправки.Это работает просто отлично.Проблема, с которой я сталкиваюсь, заключается в том, что я не могу заставить работать функции SessionMessages
и SessionErrors
Liferay.Все, что я хочу сделать, это показать пользователю сообщения об ошибках или об успехе, чтобы они знали, сработало ли сохранение формы.Мои формы отображаются с помощью пользовательского портлета, который извлекает формы с помощью ajax-вызова в DDLFormPortlet Liferay (который фактически вызывает мой пользовательский AddRecordMVCActionCommand
).В пользовательский AddRecordMVCActionCommand
я добавляю сообщения об успехах или ошибках, используя SessionMessages.add(actionRequest, "formSaveSuccess");
или SessionErrors.add(actionRequest, "formSaveError");
.У меня есть файл Language.properties в каталоге src / main / resources / content со следующим содержимым:
form-save-success=Report saved successfully.
form-save-error=An unexpected error occurred while trying to save the report, please try again.
На моей странице JSP есть следующие необходимые импорты и теги:
<%@ taglib uri="http://liferay.com/tld/ui" prefix="liferay-ui" %>
<%@ include file="/init.jsp" %>
<liferay-ui:success key="formSaveSuccess" message="form-save-success" />
<liferay-ui:error key="formSaveError" message="form-save-error" />
Iследовали инструкциям, найденным в документации Liferay здесь , чтобы добавить мои языковые ключи, настроить JSP и добавить сообщения в сеанс в моем классе MVCAction.Я прочитал и перечитал эти инструкции несколько раз, и все, кажется, настроено правильно.Я не получаю сообщений об ошибках в журнале, но мои сообщения об успехах и ошибках никогда не отображаются.Любая помощь, которую кто-то может оказать, будет очень полезна.