이것은 기본적인 문제인 것처럼 보이지만 다른 곳에서는 답을 찾을 수 없습니다. 반복되는 게시물이라면 용서해주십시오.JAXB - 토큰 필드와 함께 @xmlvalue 사용
@XmlAccessorType (XmlAccessType.FIELD)로 표시된 클래스에 @XmlValue 주석을 포함 할 수 있습니까?
내가 XML 자체가 꽤 크고, 다른 필드가하면서, 문제는이 필드에 고유 JAXB와 XML 파일을 구문 분석하려고 해요 :
<root>
...
<holiday holidayId="9">Christmas</holiday>
...
</root>
매핑은 다음과 같습니다
public class Holiday extends Model {
@XmlAttribute(name="holidayId")
private String holidayId;
@XmlValue
private String holiday;
}
필드는 XML에서 토큰 유형으로 선언됩니다.
@XmlValue 주석은 IllegalAnnotationException을 제공합니다 (@XmlValue 및 공휴일 필드를 주석 처리하면 매핑이 올바르게 작동 함). 왜 이것이 실패할까요? 해결 방법은 무엇입니까? 제발 조언.
모델에 무엇이 있나요? 수업 전체와 XML을 공유 할 수 있습니까? – muasif80
전체 XML과 클래스를 공유하면 자세히 살펴볼 수 있습니다. – muasif80
모델은 상당히 기초적인 수업입니다. GSON을 사용하여 전체 객체를 JSON으로 변환하는 것과 같은 편리한 메소드를 제공합니다. 안타깝게도 기밀성 때문에 전체 XML을 공유 할 수는 없지만 @XmlValue에 대한 참조를 주석으로 작성하고 전체 XML을 성공적으로 파싱했습니다. 구문 분석에 실패하는 유일한 시간은 위에 표시된 것처럼 특정 값에 액세스하려고하는 특정 필드에 대한 클래스가있는 경우입니다. – user1452030