我一直在尝试编写一个自定义字段处理程序,它在写入 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;
...
希望有帮助