XMLに書き込むときにjava.awt.Imageオブジェクトのハッシュコードを返し、XMLをオブジェクトにバインドするときにこのハッシュコードに基づいて画像を取得するカスタムフィールドハンドラーを作成しようとしています。何らかの理由で、これを機能させることができません。私が知る限り、castor は単にフィールド ハンドラーをインスタンス化し、そのメソッドを呼び出しません。
簡単なものが欠けているに違いないので、これを行う方法の簡単な例を教えてください。
乾杯、
ピート
コードを貼り付けることをお勧めします。とにかく、以下は私にとってはうまくいきます
<m:class name="someClass">
<m:map-to xml="class"/>
<m:field name="lineColor" type="java.awt.Color" handler="ColorFieldHandler">
<m:bind-xml name="lineColor" node="attribute"/>
</m:field>
</m:class>
そしてハンドラー自体
public class ColorFieldHandler extends GeneralizedFieldHandler {
public Object convertUponGet(Object value) {
if (value == null) {
return null;
}
Integer colorHash = (Integer) value;
...
それが役立つことを願っています