com.sun.xml.bind.v2.runtime.IllegalAnnotationsException: 2 counts of IllegalAnnotationException

Caused by: com.sun.xml.bind.v2.runtime.IllegalAnnotationsException: 2 counts of IllegalAnnotationExceptions 

java.util.Map is an interface, and JAXB can't handle interfaces. 
this problem is related to the following location: 
at java.util.Map 
at private java.util.Map com.cecltd.service.jaxws_asm.SayHi.arg0 
at com.cecltd.service.jaxws_asm.SayHi 
java.util.Map does not have a no-arg default constructor. this problem is related to the following location: 
at java.util.Map 
at private java.util.Map com.cecltd.service.jaxws_asm.SayHi.arg0 
at com.cecltd.service.jaxws_asm.SayHi 
解决方法:将服务端的services接口返回的Map类型的值,改成HashMap.
结论:在做webServices复杂类型值传递时,返回值的类型不要用接口类型。例如(List应该改为ArrayList,Map改为HashMap等)

posted @ 2020-11-29 15:22  一叶知秋。  阅读(3084)  评论(0编辑  收藏  举报