arcgis 中文乱码问题

在利用到ArcGIS JS API进行开发的过程中,几个Task(比如query和find)中会用到outFields属性,主要就是来给开发人员定制一些属性表中需要被返回的字段。在返回的结果(featureSet,findResults等 )中,可以从graphic的attributes属性中来拿到它们。可悲的是,在打过SP1补丁后,只要结果中有中文(不管是字段名还是值),一律变为乱码。。火星文。。。(不打sp1补丁可以正常显示中文,但无法进行中文的查询)

ESRI也很非主流。。。

 

因为在网上没有看到更好的,所以就在这里分享下关于这个问题的解决方案。

1.备份<arcgis dir>\java\web_output\rest文件夹.(这个文件夹没有被打过sp1补丁)

2.升级ArcGIS Server 9.3到sp1。(其他诸如desktop,sde也到同步到sp1)

3.用原有的rest文件夹替换打过sp1补丁后的rest文件夹

注:如果已经升级到了sp1而面临这个乱码问题也不要紧,找台没有升级到sp1的或者重新在另一台机子上安装ags server 9.3,再把rest文件夹拷贝过来。这个时候要注意,别忘了修改拷贝过来<rest>\WEB-INF\classes \server.properties文件,把主机名用户名,密码等都改为自己的本地环境(密码要用编码后的字符串)。

或者把自己的server.properties文件保留下来。

4.打开两个文件:

<arcgis dir>\java\manager\service\tomcat\managerappserver\conf \server.xml
<arcgis dir>\java\manager\service\tomcat\managerserver\conf \server.xml

找到所有"Connector"元素,添加一个属性 :URIEncoding="UTF-8"。例如:

<ConnectorURIEncoding="UTF-8"port="8099"   ……

5.重启SOM,SOC服务。完成,鈥★魰从此远去……:)

 

最近在写一套用来实现地图服务的Javascript框架,基于ags js api和dojo的。非常希望和同样用ags js api开发的朋友们一起讨论。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值