Im having this error where it says that i have two classes of same XML type name
so the problem is between InfoSource -> NameSearchFilters -> SearchRequest
error
Caused by: com.sun.xml.internal.bind.v2.runtime.IllegalAnnotationsException: 2 counts of IllegalAnnotationExceptions
Two classes have the same XML type name "{http://test.au/schema/namesearch}InfoSource". Use @XmlType.name and @XmlType.namespace to assign different names to them.
this problem is related to the following location:
at au.test.identitySearch.model.InfoSource
at protected au.test.identitySearch.model.InfoSource au.test.identitySearch.model.nameSearch.NameSearchFilters.infoSourceList
at au.test.identitySearch.model.nameSearch.NameSearchFilters
this problem is related to the following location:
at au.test.identitySearch.model.InfoSource
at protected au.test.identitySearch.model.InfoSource au.test.identitySearch.model.nameSearch.NameSearchFilters.infoSourceList
at au.test.identitySearch.model.nameSearch.NameSearchFilters
at protected au.test.identitySearch.model.nameSearch.NameSearchFilters au.test.identitySearch.ws.model.SearchRequest.searchFilters
at au.test.identitySearch.ws.model.SearchRequest
InfoSource
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "InfoSource", propOrder = {
"infoSource"
})
public class InfoSource {
@XmlElement
protected List<String> infoSource;
NameSearchFilters
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "NameSearchFilters", propOrder = {
})
public class NameSearchFilters {
@XmlElement
protected InfoSource infoSourceList;
@XmlElement
protected String nameType;
SearchRequest
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "", propOrder = {
"searchControls",
"searchCriteria",
"searchFilters"
})
@XmlRootElement(name = "searchRequest")
public class SearchRequest {
@XmlElement(required = true)
protected SearchControls searchControls;
@XmlElement(required = true)
protected NameSearchCriteria searchCriteria;
@XmlElement
protected NameSearchFilters searchFilters;
Why is there problem here?
您是否尝试向每个属性添加不同的命名空间属性值,例如@XmlType(namespace="test1", name = "InfoSource", propOrder = { "infoSource" }) )
?
Situation like this throws exception 'x counts of IllegalAnnotationExceptions'
class A{}
class B extends A{}
class C extends A{}
Resolve problem adding annotation into class A like this:
@XmlTransient
public class A
{}
@XmlType(name = "Info_Source", propOrder = { "infoSource"
Try this in code
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.