Struts2 プロパティ タグを使用して JSP にプロパティを表示している POJO があります。
public Class message
{
string messageText;
string messageType;
//getters and setters, here
}
Text: <s:property value="messageBean.messageText"/>
Type: <s:property value="messageBean.messageType"/>
オブジェクトは、ユーザー入力またはデータベースからの読み取りによって作成されます。「messageType」属性には、データベース内のルックアップ テーブルのキーとして使用される整数値のみが含まれます。
「タイプ」の値を選択すると、ユーザーは前のページでラジオを選択でき、各オプションは整数に対応します。値を表示しているときは、現在整数のみを表示しています。整数に対応するテキストを表示したいのですが、アクション クラスにキーと値のルックアップ メソッドを含めることでこれを実現し、コードを次のように変更します。
//in Action class
public String getTranslatedType()
{
if (messageBean.getMessageType().equals("12"))
return "Message for frequent callers.";
if (messageBean.getMessageType().equals("17"))
return "Message for first time callers.";
//etc
}
Text: <s:property value="messageBean.messageText"/>
Type: <s:property value="translatedType"/>
これを行うより良い方法はありますか?
これはうまくいかないようです:
Type: <s:property value="Utility.getTranslatedText(messageBean.messageType)"/>
プロパティ タグ内から静的ユーティリティ メソッドを呼び出すための構文はありますか?