1

Liferay 6.1 のポートレットを開発しています。ある時点で、フォームからの入力を評価しています。無効な入力の場合は、エラー メッセージを表示しています<liferay-ui:error>。理想的には、そのメッセージに無効な値を含めたいと思います。

例: 数字のみを受け入れるテキスト入力があります。ユーザーは文字「A」を入力し、フォームを送信します。ポートレットに「申し訳ありませんが、'A' は数字ではありません。」と表示されます。(クライアントで簡単に確認できることは承知しています。ただし、私の場合はより複雑なデータです。)

これに value パラメータを使用する方法はありますadd(PortletRequest portletRequest, String key, Object value)か?

4

1 に答える 1

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-error" は liferay に由来し、デフォルトのエラー レンダリング用です。

バックエンドで、「my-custom-error」値をリクエストに入れます。

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

しかし、liferay-error-tag を使用した解決策を希望します。

于 2012-08-06T09:57:42.747 に答える