I think the namespace in the XML is causing a problem for parsing. Try to specify the namespace in package-info.java and mention the prefix as "a" in there. You can check more information here.
You could check a similar question here
The response XML returned from my web service call had some issue which caused the exception when unmarshaling it. When I removed some unused sections from the XSD file, this worked.
Great ! Still, you could mark the sections which are optional in the XSD as optional using minOccurs attribute (that is, if these sections can appear again, in some other responses its better to mark them as optional rather than removing(I know, that's not what you asked for)).
Since I auto generate the XSD, optional fields are automatically marked thus they are annotated in the generated java files as well. Having the unused fields annotated as that didn't make any difference in resolving the issue. I use eclipselink within my project. I doubt it can be one reason for this.