저는 schemagen을 사용하여 autmATED 생성 된 XSD 파일과 조금 어려움을 겪고 있습니다. 우선, 나는 대학에서 프로젝트를 위해 일하고 있고 자바 클래스의 코드에서 아무 것도 바꾸지 말고 주석을 달지 말아야한다는 것을 말해야한다. ...JAXB Schemagen (v. 7.0.450.18) : XmlElement 이름과 XmlType을 변경하십시오 (propOrder = {...})
그래서 기본적으로 내가해야 할 일은 내 XmlElements 중 일부의 이름을 바꾸고 특정 Order로 가져와야합니다. XmlAccessorType에의
@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(XmlAccessType.PUBLIC_MEMBER)
입니다 : 난 내가 그런 식으로이 문제를 해결할 수있는, 생각했다. 그러나 나는 (... 이클립스와 명령 줄에서)에서는 schemagen을 사용하여 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이 completly 내가 지정한 것을 무시하는 것 같아. 아무도 문제가 어디 있는지 말해 줄 수 있니?
고맙습니다.
답해 주셔서 감사합니다. 그래서 당신은 @XmlElement (name = "publication")가 내 propOrder를 무시한다는 것을 의미합니까? 같은 클래스에서 순서를 변경하고 순서를 변경하는 등 둘 다 어떻게 수행 할 수 있습니까? – user3005072
@ user3005072 -'propOrder'는 속성 이름 (발행물)을 기반으로하며'@XmlElement'를 사용하여 주석을 추가할지 여부와는 완전히 독립적입니다. –