最近公司搞http 升级为https。在订单取消的时候,一直报以下错误: 06JSONUtil.deserialize
org.apache.struts2.json.JSONException: Input string is not well formed JSON (invalid char
at org.at org.at org.at org.at org.at com.at com.at com.at com.at org.apache.struts2.impl.StrutsActionProxy.execute(Struts
ActionProxy.at org.at org.at org.at com.at org.at org.at org.at org.at org.at org.at org.apache.catalina.core.StandardEngineValve.invoke(Standar
dEngineValve.at org.at org.at org.at org.
根据报错的日志看,前端ajax提交过来的数据,先走JSONInterceptor拦截器,把request的reader序列化,结果导致报错。
当时怀疑前端换用js新版本所致,还原旧版本问题依旧。
在stackoverflow看到,一个https连接 访问http连接js时,jquery会不信任http连接。改为https连接,问题依旧。原文地址:
把$ajax 改为$.getJSON问题依旧。参考文章:
经过检查源码,去掉JSONInterceptor并未对原来系统有影响,故决定struts配置去掉其拦截配置。
resultresultinterceptor nameinterceptor nameparam nameshowListCancelOrderButtonparam> </interceptor> interceptorinterceptorparam nametrueERRORinterceptorinterceptorinterceptorinterceptorinterceptorinterceptorinterceptorinterceptordefaultpackage>
本文固定链接: | IT技术精华网