JaxB无法解组正确的超级类型

我无法将一些XML解组到正确的超类。它似乎忽略了Party标签上的xsi:type属性。

SOAP XML的格式为

<ns6:CustomerContact>
  <Party xsi:type="Individual">
    <partyId>1669751</partyId>
    <partyType>INDIVIDUAL</partyType>
    <isLegalEntityYN>N</isLegalEntityYN>
    <gender>FEMALE</gender>
....

Party

@XmlaccessorType(XmlaccessType.FIELD)
@XmlType(name = "Party",propOrder = {
    "partyId","partyType","isLegalEntityYN"
})
@XmlSeeAlso({
    Thing.class,Individual.class,Organization.class
})
public class Party extends Entity {

    protected String partyId;
    protected String partyType;


Individual

@XmlaccessorType(XmlaccessType.FIELD)
@XmlType(name = "Individual",propOrder = {
    "gender"
})
public class Individual extends Party {

    protected String gender;
...

当将XML取消编组时,在CustomerContact对象中返回的类只是一个Party对象,并且丢失了XML中Individual类中的字段。>

所有注释似乎都是正确的,并且启用了完全跟踪,我看不到任何错误。那是什么原因造成的?

我还应该提到PartyIndividual和相关的服务/端口类是由Apache CXF从wsdl生成的

alanpiter 回答:JaxB无法解组正确的超级类型

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/3020127.html

大家都在问