博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
在cxf中使用配置避免增加字段导致客户端必须更新、同步实体属性的问题
阅读量:5220 次
发布时间:2019-06-14

本文共 691 字,大约阅读时间需要 2 分钟。

在使用cxf实现webservice时,经常碰到的问题就是如果在服务端,修改了一个接口的签名实现,如增加一个字段,或者删除一个字段。在这种情况下,在默认的配置中,就会报以下的错误信息:

org.apache.cxf.interceptor.Fault: Unmarshalling Error: unexpected element . Expected elements are

这种错误即客户端使用的传输对象与服务端接收的参数的字段不匹配。但如果,每次修改服务端的实现,都需要更新客户端时,就会出现一些问题,如在某些情况下,客户端的更新是不可能的事(如不在自己掌握之内,或者服务不能随便更新,或者其它计划时)。

如果避免这种问题,其实也很简单,就是禁用cxf中的字段信息验证,如果禁用掉此验证,就不再会对相应的字段信息进行验证,同时没有的字段也会自动的忽略。整个解决只需要增加以下的一行配置即可,在cxf.xml(spring集成文件)中增加以下配置项:

<cxf:properties>

   <entry key="set-jaxb-validation-event-handler" value="false"/>
</cxf:properties>
这样,即会禁用掉所有cxf的数据验证,在大多数情况下,这可以满足我们的要求(除非你有其它和cxf集成的数据验证要求)。

转载请标明出处:

本文地址:

转载于:https://www.cnblogs.com/hoojo/p/cxf_webservice_Unmarshalling_unexpected_element.html

你可能感兴趣的文章
操作系统概论四
查看>>
POJ 1150 The Last Non-zero Digit
查看>>
html
查看>>
移动端物理/css/位图像素概念以及rem布局的实现
查看>>
warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
查看>>
Django 分页器
查看>>
strcpy 一题
查看>>
对于有志于成为架构师的开发者,支付宝架构团队有何建议?
查看>>
C#多播委托详解
查看>>
通用分页jsp页面显示
查看>>
各种图形库介绍
查看>>
第十六章 string类和标准模板库(2. 标准模板库之容器)
查看>>
c语言-单链表(二)
查看>>
Codeforce500C New Year Book Reading
查看>>
关系型数据库
查看>>
ruby导出exl方式
查看>>
composer install 失败,无法用 unzip 解压归档、proc_open() 函数未支持
查看>>
Software Testing -- HW3
查看>>
liunx dd 读取系统文件
查看>>
window.localStorag使用
查看>>