东方通部署Java项目,含中文请求乱码问题

一、背景:

近期上线了一套Java系统,用户管理中新增的时候,需要先检验新增的用户帐号是否在系统中已存在,查重功能在本地已测试通过,但后期部署至东方通服务器出现在输入框内输入中文后,查重功能出现异常。查看后台请求参数发现大量中文出现乱码。

二、问题发现:

1、继续测试查重输入框

发现当输入重复的英文字母,可以查到重复内容,并返回正确结果
在这里插入图片描述
当输入重复的中文时,查重失败
在这里插入图片描述

2、查看请求参数及返回结果

发现请求参数正确,返回结果与预期不符(应返回“该值不可用,系统中已存在”)
在这里插入图片描述
在这里插入图片描述

3、查看后台接口

此时,发现请求的参数中文已经出现乱码,因而对参数数据进行查重时未发现重复项。
在这里插入图片描述

三、问题排查

1、排查浏览器问题。

(1)在测试服务器上,使用Google Chrome浏览器与Microsoft Edge浏览器分别测试查重功能,结果均为中文无法查重。
(2)在开发本地使用Google Chrome浏览器测试查重功能,中文可以查重。
本地启动项目使用相同浏览器

2、排查系统问题

(1)部署环境为Ubuntu系统,查看系统编码。

echo $LANG 

在这里插入图片描述
Linux系统编码均为zh_CN.UTF-8,没有问题

3、排查东方通问题

将系统部署至tomcat服务器上,使用Google Chrome浏览器测试查重功能,中文可以查重。
将系统部署至东方通服务器上,使用Google Chrome浏览器测试查重功能,中文无法查重。

四、问题解决:

1、在东方通的TongWeb7.0/conf/目录下找到tonweb.xml(配置文件)

在这里插入图片描述

2、打开后找到请求端口,并查看编码方式

在这里插入图片描述
可以看到,东方通默认请求编码为“GBK”,将其改为“UTF-8”,重启东方通。

成功!

在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值