geoserver升级新版本出现部分图层访问报错的问题

之前公司服务器上用的geoserver版本是2.13.x,很多功能不支持,想着更新到新版本。按照官网的教程,备份了原来的data目录,下载了新版本war包后替换原本的部署目录,再把data中的数据目录放进去,重启tomcat,没问题。
(参考:升级现有版本-geoserver官方文档

访问图层的时候问题来了,之前发布的服务都还在,但是有些能访问,有些访问就报错了??
检查了一下,在图层预览页面,类型那一列,有些显示的是一个小方块,而不是正常的点线面标志,挨个看了一些,果然是这些不能访问。
在这里插入图片描述
在图层页面看了一下这几个不正常的图层,点进去以后最上面有报错信息,
在这里插入图片描述
搜索了一下,果然也有人遇到过类似的问题,参考链接:GeoServer踩过的坑-版本升级
大概找到问题所在了,发布服务的时候,shp文件的命名带有中文,也许是因为geoserver某个版本升级的时候对中文的编码方式变了,导致旧版本配置文件里的中文无法正确解析,需要手动修改配置文件。

修改方式:
每个图层对应的配置文件在geoserver的部署目录下,找到部署目录下的data/workspaces文件夹,找到发布图层时的工作区文件夹,这里面就是每个图层发布时对应的配置文件。例如我的geoserver部署目录是/opt/geoserver,工作区名称是map,我的路径就是:/opt/geoserver/data/workspaces/map/
例如我要修改的图层名是test,在这个路径下找到test/test/featuretype.xml文件,打开,
在这里插入图片描述
把红框框出来的两部分修改成对应的shp文件的文件名,保存,重启geoserver,图层就能正常访问了。

在这里还要注意,修改文件的时候建议用命令行直接修改,或者用notepad修改。我用mobaxterm自带的文本编辑器修改文件之后,保存再打开是乱码,不知道是哪里的问题。

如果记不住图层发布时的shp文件路径和标题,可以在图层页面找到对应图层,“存储”里面有shp文件的路径,“图层名称”里面有发布时的图层标题。例如我要修改的图层名是test,
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
重启geoserver的方法:
进入geoserver的服务器状态页面,点击“配置和目录”一行最后的“重新载入”按钮。
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值