Spring 3.1を使用していて、カスタムコンバーターを作成しました
public class CategoryConverter implements Converter<Long, Category> {
@Override
public Category convert(String id) {
return BeanProvider.getCategoryDAO().get(id);
}
}
アプリケーションコンテキストでMVCを使用して配線しました
<bean id="conversionService" class="org.springframework.format.support.FormattingConversionServiceFactoryBean">
<property name="converters">
<set>
<bean class="converter.CategoryConverter"/>
</set>
</property>
</property>
フォーム(番号、つまりIDを送信する)を送信するたびに、一致するエディターがないか、変換戦略で例外が見つかりました。
コンバーターをConverter<String, Category>
そのように宣言すると、奇跡的に機能します。
なぜそれが文字列でのみ機能し、長いものでは機能しないのか、誰もが指摘できますか?ある意味でコンバーターを定義する方法はありますか?それはタイプでLong
も機能しますか?