使用JAXB转换值

时间:2012-04-11 04:04:56

标签: jaxb

我有一个String值,我希望使用JAXB将其设置为bean。所以我有一个RuntimeTypeInfoSet的实例,我可以获得RuntimePropertyInfo,并从该调用getAccessor获取属性的Accessor。问题是Accessor要求值已经是正确的类型。我如何转换它?

1 个答案:

答案 0 :(得分:1)

答案是使用传感器实例:

switch (property.kind()) {
    case VALUE:
    case ATTRIBUTE:
        transducer = ((RuntimeNonElementRef) property).getTransducer();
        break;
    case ELEMENT:
        transducer = ((RuntimeElementPropertyInfo) property).getTypes().get(0).getTransducer();
        break;
    case REFERENCE:
    case MAP:
    default:
        throw new UnsupportedOperationException("Don't know how to handle property kind " + property.kind() + " for " + property);
}