遇到的难点:1、xml的不确定性,多层层级内多个节点,节点内多个子节点。
2、动态暴露隐藏 还要修改方法名,Cxf动态发布webserivice,项目启动后,不重启动态发布,可修改方法名。
3、接到过需求:在发送webservice时 第三方调我们的接口不传忽略符号cdata <![CDATA ]]>
解决方案:核心注解:cxf : @webservice @targetnamespace
动态发布:启动后将发布的webservice集中管理,集中销毁,重新发布。
1、解析多层时: dom4j.getnodesformxml 根据配置的xpath解析多个节点拿到node对象,再将多个节点asxml 拿到字符串作为xml,继续解析。
2、动态修改方法名:反射修改接口的注解属性:修改的注解属性应该是springboot管理的。
3、拦截收到的请求,手动拼接一个cdata。