schemagen を使用した XSD ファイルの自動生成に少し苦労しています。まず第一に、私は大学でプロジェクトに取り組んでおり、注釈以外の Java クラスのコードを変更してはならないことを伝えなければなりません...
したがって、基本的に私がしなければならないことは、いくつかの XmlElements の名前を変更し、それらを特定の順序にする必要があることです。私はこれを次のように解決できると思いました:
@XmlType(propOrder = { "email", "id", "name", "publication" })
public class Author {
...
private List<Publication> publications = new LinkedList<>();
...
@XmlElement(name = "publication")
public List<Publication> getPublications() {
return publications;
}
public void setPublications(List<Publication> publications) {
this.publications = publications;
}
XmlAccessorType のデフォルト値は です@XmlAccessorType(XmlAccessType.PUBLIC_MEMBER)
。しかし、schemagen (Eclipse およびコマンドラインで...) を使用して XML スキーマを生成しようとすると、次のエラーが発生します。
Property publications is present but not specified in @XmlType.propOrder
と
Property publication appears in @XmlType.propOrder, but no such property exists. Maybe you meant publications?
だから、私にはこれは少し矛盾しているように聞こえます.schemagenは私が指定したものを完全に無視しているようです...誰が問題がどこにあるのか教えてもらえますか??
どうもありがとう!