Spring (バージョン 3.2) フォームを介して編集できるようにしたいオブジェクトを含むサード パーティのライブラリを使用しています。問題は、場合によってはプロパティが動的になる可能性があるため、オブジェクトが Java Beans 命名規則を使用しないことです。代わりに、オブジェクトには や などのメソッドがobject.getAttr("attribute_name")
ありobject.setAttr("attribute_name", value)
ます。このタイプのオブジェクトをラップする BeanWrapper の実装を作成するのは簡単です。これは、利用可能な属性などを照会するためのメソッドがあるためです。
また、プロパティはほとんどが組み込み型であるため、カスタム エディターも必要ありません。必要なのは、データバインディングをカスタマイズする方法、またはカスタム BeanWrapper をプラグインする他の方法を見つけて、Spring のフォームタグがフォーム値をバインドするときにオブジェクトのプロパティを見つける方法を知ることだけです。これはかなり簡単なように思えます (それが BeanWrapper がインターフェースである理由ですよね?) しかし、私はそれを見ていないだけです...