我正在为Liferay 6.1开发一个portlet。在某些时候,我正在评估表单的输入。如果输入无效,我会显示<liferay-ui:error>
的错误消息。理想情况下,我想在该消息中包含无效值。
示例:有一个文本输入应该只接受数字。用户输入字母&#34; A&#34;并提交表格。 portlet显示&#34;抱歉,&#39; A&#39;不是数字。&#34; (我知道我可以在客户端上检查它。但就我而言,它是更复杂的数据。)
有没有办法使用add(PortletRequest portletRequest, String key, Object value)
的值参数?
答案 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的解决方案。