我想为域类的属性之一注册一个自定义属性编辑器,该类是这样的
class Accessory{
String name
byte[] image
}
从客户端,我正在为图像发送一个 base64 编码的字符串,现在我希望这个字符串在绑定时自动转换为字节数组
我的属性编辑器类看起来像这样
import java.beans.PropertyEditorSupport
import org.apache.commons.codec.binary.Base64
class CustomAccessoryImageEditor extends PropertyEditorSupport{
String getAsText() {
value.toString()
}
void setAsText(String text) {
String encodedImage = text?:""
byte[] imageBytes = decodeImageToBytes(encodedImage)
if(imageBytes.size()){
value = imageBytes
}
}
byte[] decodeImageToBytes(String encodedImage){
return Base64.decodeBase64(encodedImage)
}
}
我无法找到正确注册此编辑器的方法。
现在我的注册员班上有这样的东西
registry.registerCustomEditor(byte, Accessory.image, new CustomAccessoryImageEditor())
但是当我运行它时,我收到一条错误消息,说找不到类附件上的属性图像
我有两个问题,1. 是否可以为类的特定属性提供属性编辑器?2.如果是,那么如何指定属性路径?