自定义Liferay错误消息

时间:2012-08-06 08:47:14

标签: error-handling liferay portlet

我正在为Liferay 6.1开发一个portlet。在某些时候,我正在评估表单的输入。如果输入无效,我会显示<liferay-ui:error>的错误消息。理想情况下,我想在该消息中包含无效值。

示例:有一个文本输入应该只接受数字。用户输入字母&#34; A&#34;并提交表格。 portlet显示&#34;抱歉,&#39; A&#39;不是数字。&#34; (我知道我可以在客户端上检查它。但就我而言,它是更复杂的数据。)

有没有办法使用add(PortletRequest portletRequest, String key, Object value)的值参数?

1 个答案:

答案 0 :(得分:0)

我还没有找到这样明确的解决方案并使用了我自己的错误输出:

<%
    String myError = (String)request.getAttribute("my-custom-error");
%>
<c:if test="<%= (myError != null) %>">
        <div class="portlet-msg-error">
            <%= myError %>
        </div>
</c:if>

css-class&#34; portlet-msg-error&#34;来自liferay,用于默认错误呈现。

在后端放置&#34; my-custom-error&#34;请求的值:

actionRequest.setAttribute("my-custom-error", "Sorry, " + value + " is not a number.");

但我更喜欢使用liferay-error-tag的解决方案。