カスタムConverterの作成
SeaserのHPには、カスタムValidatorのドキュメントはあるものの
Converterの方はまだみたい(TODOになっていた(TДT))ので
以下の順序で作成してみたら、無事にコンバートに成功した。
1.アノテーションの作成
@Retention(RetentionPolicy.RUNTIME)
@Target( { ElementType.FIELD, ElementType.METHOD })
@Converter("textHogeConverter")
public @interface TextHoge {
String target() default "";
String messageId() default "";
int hogeLength() default 0;
}
2.Converterの作成
public class TextHogeConverter implements Converter {
private int hogeLength;
// Setter/Getter省略
// ビュー→Bean
public Object getAsObject(
FacesContext context,
UIComponent component,
String value) throws ConverterException {
//TODO 実装
return null;
}
// Bean←ビュー
public String getAsString(
FacesContext context,
UIComponent component,
Object value) throws ConverterException {
// TODO 実装
return null;
}
3.Pageクラスで設定
@Override
@TextHoge(hogeLength=2)
public String getHogeName() {
return super.getHogeName();
}
以上