我正在使用Liferay DXP SP7。我正试图让Liferay的SessionErrors和SessionMessages增加成功&通过重写的Liferay MVCAction类向包含自定义portlet的页面发送错误消息
- com.liferay.dynamic.data.lists.form.web.internal.portlet.action.AddRecordMVCActionCommand
。我正在使用解释here的技术来覆盖这个内部类,因为我们需要通过添加诸如在提交表单之后编辑表单的能力来增加一些Liferay表单功能。这工作得很好。我遇到的问题是我似乎无法使Liferay的SessionMessages
和SessionErrors
功能正常工作。我想要做的就是向用户显示错误或成功消息,让他们知道表单保存是否有效。我的表单由一个自定义portlet显示,该portlet通过对Liferay的DDLFormPortlet(实际调用我的自定义AddRecordMVCActionCommand
)的ajax调用来检索表单。在自定义AddRecordMVCActionCommand
中,我使用SessionMessages.add(actionRequest, "formSaveSuccess");
或SessionErrors.add(actionRequest, "formSaveError");
添加成功或错误消息。我在src / main / resources / content中有我的Language.properties文件,其中包含以下内容:
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" />
我已按照Liferay文档here中的说明添加我的语言键,设置JSP&amp;将消息添加到我的MVCAction类中的会话中。我已多次阅读并重读这些说明,所有内容似乎都已正确设置。我在日志中没有收到任何错误消息,但我的成功&amp;错误消息永远不会出现。任何人可以提供的帮助都会非常有帮助。