解组SOAP响应时忽略列表包装类

时间:2015-10-15 17:55:23

标签: java spring soap unmarshalling jaxb2

我收到的SOAP响应(我无法控制)包含响应中每个列表的容器。

示例XML:

<account>
    <accountNum>12345</accountNum>
    <arrayOfAccountHistories>
        <accountHistories>
            <accountHistory>
                ... 
            </accountHistory>
            <accountHistory>
                ...
            </accountHistory>
        </accountHistories>
    </arrayOfAccountHistories>
</account>

当我从中生成代码时,我得到的对象如下:

public class Account {

    private int accountNum;
    private ArrayOfAccountHistories accountHistories;

}

public class ArrayOfAccountHistories {

    private List<AccountHistory> accountHistories;

}

public class AccountHistory {

    ....
}

我想要做的是绕过ArrayOfAccountHistories容器并拥有:

public class Account {

    private int accountNum;
    private List<AccountHistory> accountHistories;

}

我正在使用Spring的JAXB2Marshaller来处理转换。我到处寻找但是我找不到一种方法来从WebServiceMessage中去除ArrayOfAccountHistories,然后再解组。我也尝试在生成的类上使用不同的注释,但我也没有运气。

任何帮助将不胜感激!谢谢!

0 个答案:

没有答案