报错:java.util.Map is an interface, and JAXB can't handle interfaces.

来源:互联网 发布:wps for ubuntu 16.04 编辑:程序博客网 时间:2024/06/04 18:01

报错:java.util.Map is an interface, and JAXB can't handle interfaces.

 339人阅读 评论(0) 收藏 举报
 分类:
<code class="hljs applescript has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: "Source Code Pro", monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;">严重: Context [/cgf_service] startup failed due <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">to</span> previous errors    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">at</span> org.apache.cxf.jaxws.EndpointImpl.doPublish(EndpointImpl.java:<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">330</span>)    ... <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">68</span> moreCaused <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">by</span>: com.sun.xml.bind.v2.runtime.IllegalAnnotationsException: <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">2</span> counts <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">of</span> IllegalAnnotationExceptionsjava.util.Map <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">is</span> an interface, <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">and</span> JAXB can't handle interfaces.    this problem <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">is</span> related <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">to</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">the</span> following location:        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">at</span> java.util.Map        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">at</span> private java.util.Map org.sklse.management.service.jaxws_asm.InvokeServiceMethod2.transportData        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">at</span> org.sklse.management.service.jaxws_asm.InvokeServiceMethod2java.util.Map <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">does</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">not</span> have a no-arg default constructor.    this problem <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">is</span> related <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">to</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">the</span> following location:        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">at</span> java.util.Map        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">at</span> private java.util.Map org.sklse.management.service.jaxws_asm.InvokeServiceMethod2.transportData        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">at</span> org.sklse.management.service.jaxws_asm.InvokeServiceMethod2</code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li><li style="box-sizing: border-box; padding: 0px 5px;">4</li><li style="box-sizing: border-box; padding: 0px 5px;">5</li><li style="box-sizing: border-box; padding: 0px 5px;">6</li><li style="box-sizing: border-box; padding: 0px 5px;">7</li><li style="box-sizing: border-box; padding: 0px 5px;">8</li><li style="box-sizing: border-box; padding: 0px 5px;">9</li><li style="box-sizing: border-box; padding: 0px 5px;">10</li><li style="box-sizing: border-box; padding: 0px 5px;">11</li><li style="box-sizing: border-box; padding: 0px 5px;">12</li><li style="box-sizing: border-box; padding: 0px 5px;">13</li><li style="box-sizing: border-box; padding: 0px 5px;">14</li></ul><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li><li style="box-sizing: border-box; padding: 0px 5px;">4</li><li style="box-sizing: border-box; padding: 0px 5px;">5</li><li style="box-sizing: border-box; padding: 0px 5px;">6</li><li style="box-sizing: border-box; padding: 0px 5px;">7</li><li style="box-sizing: border-box; padding: 0px 5px;">8</li><li style="box-sizing: border-box; padding: 0px 5px;">9</li><li style="box-sizing: border-box; padding: 0px 5px;">10</li><li style="box-sizing: border-box; padding: 0px 5px;">11</li><li style="box-sizing: border-box; padding: 0px 5px;">12</li><li style="box-sizing: border-box; padding: 0px 5px;">13</li><li style="box-sizing: border-box; padding: 0px 5px;">14</li></ul>

解决方法:将服务端的services接口返回的Map类型的值改为HashMap. 
因为在做webService复杂类型值传递时,返回值的类型不要用接口类型。例如List应该改为ArrayList,Map改为HashMap等

0 0