В XStream как отключить сопоставление полей элемента по умолчанию и использовать только сопоставление аннотаций? - PullRequest
0 голосов
/ 20 апреля 2020

У меня проблема с запуском следующего кода.

@XStreamAlias("icon")
@Builder
@Data
public class IconNode {
    @XStreamAlias("carrier-id")
    @XStreamAsAttribute
    private String carrierId;

    public static void main(String[] args) {
        XStream xstream = new XStream();
        xstream.processAnnotations(IconNode.class);
        xstream.addPermission(AnyTypePermission.ANY);

        String s = "<icon carrierId=\"101\"/>";
        IconNode icon =  xstream.fromXML(s);
        System.out.println(icon);
    }
}

Результат - IconNode(carrierId=101). Но результат, который я ожидал, должен быть IconNode(carrierId=null). Когда я использую аннотацию, я хочу, чтобы элемент по умолчанию для отображения fied был отключен. Есть ли способ сделать это?

...