xfire踩过的坑

xfire踩过的坑

针对ws服务调用过程中碰到的一些可能比较蛋疼的问题场景,主要是soap协议序列化和反序列化过程中比较隐晦的问题引起,做了个大致的总结:
1.传输的对象中有 属性没有getter和setter方法,xfire其实不是根据属性来的,是通过getter/setter方法来实例化的 ,会报比如找不到writer method等问题
2.传递的对象中有 属性声明为Object类型,会导致堆栈溢出
3.传递的对象没有默认的构造函数
4.c/s接口不一致,且存在方法重载的情况,可能会出现的方法调错的情况,因为xfire对重载方法通过在方法名后进行加序号区分的
5.c/s接口不一致,参数中减少了字段,那么服务端解析的时候会报错,返回结果中增加了字段,那么客户端反序列化会报错。
6.另外一点,如果出现对象通过XFire传递有问题,简化对象是第一优先考虑的,service之间交换数据应该是DTO,类型过于复杂是反模式。

猜你喜欢

转载自ywjgift2012.iteye.com/blog/1748956