Error
Exception in thread "main" com.sun.xml.bind.v2.runtime.IllegalAnnotationsException: n counts of IllegalAnnotationExceptions <InnerClass Name> is a non-static inner class, and JAXB can't handle those.
this problem is related to the following location:
Error Type
RunTime
Cause
JAXB cannot handle non static inner classes
Sample Code
@AutoProperty
@XmlRootElement
@XmlAccessorType(XmlAccessType.FIELD)
public class OuterClass {public class InnerClass {
}
@XmlElement
private List<InnerClass> innerClasses;
}
OuterClass.InnerClass = new OuterClass.InnerClass(); // this line gives error
Resolution
Either make the inner class as static inner class
public class OuterClass {
public static class InnerClass {
}
@XmlElement
private List<InnerClass> innerClasses;
}
Or
Move the Inner class as an independent outer class
Either make the inner class as static inner class
public class OuterClass {
public static class InnerClass {
}
@XmlElement
private List<InnerClass> innerClasses;
}
Or
Move the Inner class as an independent outer class
public class InnerClass {
}
public class OuterClass {
@XmlElement
private List<InnerClass> innerClasses;
}
public class OuterClass {
@XmlElement
private List<InnerClass> innerClasses;
}