首页 文章

字节数组在JAXB类中不起作用

提问于
浏览
4

我试图像这样使用字节数组(JAXB类) . 但是,即使我传递有效字符,我也会在msg字段中获取全0 . “id”和“myid”字段被成功解析,并且字节数组字段失败 .

@XmlRootElement(name = "testMessage")
@XmlAccessorType(XmlAccessType.FIELD)
public class TestMessage
{
    @XmlAttribute
    private Integer id;

    @XmlElement(name = "myid")
    private Long myid;

    @XmlElement(name = "msg")
    private byte[] msg;
}

1 回答

  • 4

    使用Java 1.6.0_23的JAXB,我获得了TestMessage实例的以下xml文件:

    TestMessage testMessage = new TestMessage();
    testMessage.id = 1;
    testMessage.myid = 2l;
    testMessage.msg = "Test12345678".getBytes();
    
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <testMessage id="1">
        <myid>2</myid>
        <msg>VGVzdDEyMzQ1Njc4</msg>
    </testMessage>
    

    如果你解组这个xml内容,你应该返回TestMessage实例,包括msg字节数组(在xml文件中是base64编码的) .

相关问题