1

質問があります。xml ファイルで重複したノード (値が異なる) を検出する方法はありますか?

Java クラスが次のようになっている場合 (簡単にするためにこれを作成しました):

@XmlRootElement(name = "PERSON")
@XmlAccessorType(XmlAccessType.FIELD)
public class Person {

    @XmlElement(name = "NAME")
    private String name;

    @XmlElement(name = "SURNAME")
    private String surname;

    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getSurname() {
        return surname;
    }
    public void setSurname(String surname) {
        this.surname = surname;
    }
}

入力 .xml ファイルは次のようになります。

<person>
   <name>John</name>  
   <surname>Smith</surname>  
   <name>Jack</name>  
</person>

非整列化プロセスの後、値「John」は値「Jack」によってオーバーライドされます。
これを検出/回避する方法はありますか?
(したがって、この重複の発生を例外またはログに記録できますか?)

4

1 に答える 1

0

この問題の一般的な解決策は、XML スキーマをjavax.xml.validation.Schemaonのインスタンスとして設定し、XMLUnmarshallerが期待される入力と一致するようにすることです。

詳細については

于 2013-10-10T13:02:33.267 に答える