2012-08-06 113 views
1

我正在開發Liferay 6.1的portlet。在某個時候,我正在評估表單的輸入。在無效輸入的情況下,我顯示一條錯誤消息<liferay-ui:error>。理想情況下,我希望在該消息中包含無效值。定製Liferay錯誤消息

示例:有一個文本輸入應該只接受數字。用戶輸入字母「A」並提交表格。該portlet顯示「對不起,」A'不是數字。「 (我知道我可以在客戶端簡單地檢查它,但在我的情況下它是更復雜的數據)。

有沒有一種方法可以使用add(PortletRequest portletRequest, String key, Object value)的值參數?

回答

0

我還沒有發現這樣明確的解決方案,並用我自己的錯誤輸出:

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

的CSS類「portlet的MSG-錯誤」來自Liferay的,並且是默認的錯誤渲染。

在後端把「我的定製錯誤」值請求:

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

但我寧願一些解決方案使用Liferay的錯誤標籤的。

+0

這就是我也會走的路。我只是希望有一個更簡單的方法來使用Liferay中已經存在的組件。 – icke 2012-08-06 10:58:41