2012-08-06 5 views
1

Liferay 6.1에 대한 포틀릿을 개발 중입니다. 어떤 시점에서 저는 양식의 입력을 평가하고 있습니다. 입력이 유효하지 않은 경우 <liferay-ui:error>이라는 오류 메시지가 표시됩니다. 이상 적으로 그 메시지에 잘못된 값을 포함하고 싶습니다.Liferay 오류 메시지 사용자 정의

예 : 숫자 만 허용하는 텍스트 입력이 있습니다. 사용자는 문자 "A"를 입력하고 양식을 제출합니다. 포틀릿에 "죄송합니다. '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의 클래스 "포틀릿-MSG-오류"을 Liferay에서 온 기본 오류 렌더링입니다. 백엔드에

는 요청에 "내-사용자 정의 오류"값을 넣어 :

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

하지만 난을 Liferay 오류 태그의 사용으로 몇 가지 솔루션을 선호하는 것이다.

+0

내가 그렇게했을 수도 있습니다. Liferay에 이미있는 구성 요소를 사용하여 더 간단하게 할 수 있기를 바랬습니다. – icke

관련 문제