欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

解决: counts of IllegalAnnotationExceptions and JAXB can't handle interfaces.

程序员文章站 2022-05-05 14:01:49
...

、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等)