About

General

Teeda Core

Teeda Extension

Teeda Ajax

プロジェクト文書

モジュール

Built by Maven

コンバート

フォーマットを指定して文字列と数値を相互変換するには

ページクラスのプロパティに以下のコンバータ (括弧内はTigerアノテーションの名前) のいずれかを指定し, pattern プロパティでフォーマットを指定します.

TNumberConverter (@NumberConverter)
文字列型と,プリミティブ型またはラッパー型の数値型を相互に変換します.
TBigDecimalConverter (@BigDecimalConverter)
文字列型と java.math.BigDecimal を相互に変換します.
フォーマットの他, scale プロパティで精度を, roundingMode プロパティで丸めモードを指定することもできます.
例:ページクラスのプロパティ (FooPage.java)
Tigerアノテーション
@BigDecimalConverter(pattern = "#,##0.00")
public BigDecimal exchangeRate;
定数アノテーション
public static final String exchangeRate_TBigDecimalConverter = "pattern='#,##0.00'";
public BigDecimal exchangeRate;

レンダリング時, exchangeRate はカンマ区切り・小数点以下2桁で表示されます.

ポストバック 時,入力された文字列がパターンにマッチしなければバリデーションでエラーとなります.

フォーマットを指定して文字列と日時を相互変換するには

ページクラスのプロパティに以下のコンバータ (括弧内はTigerアノテーションの名前) のいずれかを指定し, pattern プロパティでフォーマットを指定します.

TDateTimeConverter (@DateTimeConverter)
文字列型と java.util.Date を相互に変換します. 変換結果の java.util.Datejava.util.Calendar java.sql.Date,java.sql.Time,java.sql.Timestamp 型のプロパティに設定する事ができます.
TTimestampConverter (@TimestampConverter)
文字列型と java.sql.Timestamp を相互に変換します.
例:ページクラスのプロパティ (FooPage.java)
Tigerアノテーション
@DateTimeConverter(pattern = "yyyy/MM/dd")
public Date date;
定数アノテーション
public static final String date_TDateTimeConverter = "pattern='yyyy/MM/dd'";
public Date date;

レンダリング時, date はスラッシュ区切りで表示されます.

ポストバック 時,入力された文字列がパターンにマッチしなければバリデーションでエラーとなります.

改行文字を <br> 要素に変換してテキストエリアに表示するには

<textare> 要素の id と同じ名前のプロパティに, textareaSeparatorCharacterConverter (@TextareaSeparatorCharacterConverter) コンバータを指定します (括弧内はTigerアノテーションの名前).

textareaSeparatorCharacterConverter コンバータは,改行文字を <br> 要素に置換する前に '<','>','&' 等をエスケープするため, テンプレートHTMLでは <textare> 要素の te:escape 属性に false を指定する必要があります.

例:テンプレートHTML (foo.html)
<textarea id="comments" te:escape="false">dummy</textarea>
例:ページクラスのプロパティ (FooPage.java)
Tigerアノテーション
@TextareaSeparatorCharacterConverter
public String comments;
定数アノテーション
public static final String comments_textareaSeparatorCharacterConverter = "";
public String comments;

レンダリング時, comments プロパティの値に含まれる改行文字 ( "\r\n","\r","\n" ) は <br> 要素に置換されてレンダリングされます.

特定のサブミットボタンが押されたときだけコンバートするには

アノテーションの target 属性でチェック対象となるサブミットボタンの id 属性の値を指定します.複数の値をカンマ ( ',' ) 区切りで列挙することができます.

注意点

target で指定されなかったサブミットボタンが押された場合, 画面で入力された値はページクラスのプロパティに設定されません.

例:ページクラスのプロパティ (FooPage.java)
Tigerアノテーション
@TBigDecimalConverter(pattern = "#,##0.00", target="doExchange")
public BigDecimal exchangeRate;
定数アノテーション
public static final String exchangeRate_TBigDecimalConverter = 
    "pattern='#,##0.00', target='doExchange'";
public BigDecimal exchangeRate;

ポストバック 時, doExchange ボタンが押されたときだけ入力値が BigDecimal に変換され, exchangeRate プロパティに設定されます.