java系统同sap平台一个通信问题总结

     说下背景,有个后端系统是基于sap平台,前端销售系统是基于java平台,两个平台之间交互需要通过中间件,这个中间件就是sapjco,这个网上有很多相关的资料,此处不多讲微笑这次发生的问题源于一个需求变更,很简单原来的接口数量是设定为整数,现在要改成支持3为小数(能够精确到小数点后三位)。

   解决方法:给BigDecimal设置精度(当然你得在接口处做有效性检查,当前精度为3,传来四位小数怎么办)后重新打包发布,这边的应用服务器是用的was,通过控制台卸载原应用,发布新应用并启动就可以在dev环境测试了,从java平台传了三位整数过去(小数点后都是0),怪事发生了,sap接到的数据整数的三位到小数上了,检查各改动代码及测试的最终传值,没有错误!OK,我们本地测试是ok的,问题在哪?  比较下本地同dev,本地是tomcat,dev是was;本地发布是在IDE进行,中间会重启server,was是在控制台进行,没有server重启;好吧,我们来重启was server试试,果然,测试通过!

   总结:重启server会销毁server在内存中的信息,重新启动后原java数据结构同sap数据结构的映射关系会重新加载并缓存,这是我个人的看法,这不是重点,重点是问题解决了,需求如期上线再见

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值