openlayers 编辑要素并保存至deoserver中PointOutsideEnvelopeException: 1 outside of (-90.0,90)问题

遇到这个问题,查了好久没有查到原因,无意间看到别人编辑数据时故意把经纬度搞反了 才发现编辑保存时使用的经纬度跟常规的格式是不一样的 需要把经纬度给调换下

            var readyToAddFeature = temEditSource.getFeatures();
            var realreadyToAddFeature = new ol.Feature();
            for (var r = 0; r < readyToAddFeature.length; r++) {
                var currentFeature = readyToAddFeature[r].clone();
                var geometry = currentFeature.getGeometry();
                var geometryPoint = new ol.geom.Point([geometry.getCoordinates()[1],geometry.getCoordinates()[0]]);
                realreadyToAddFeature.setGeometryName("Shape");
                realreadyToAddFeature.setGeometry(geometryPoint);
                realreadyToAddFeature.setId('12345678');
                realreadyToAddFeature.set('ZHONGWENMING', "ceshi");
            }

            var WFSTSerializer = new ol.format.WFS();
            // 添加要素(addList, updateList, delList, opt)
            var featObject = WFSTSerializer.writeTransaction([realreadyToAddFeature],
                null, null, {
                    featureType: featureType, //feature对应图层
                    featureNS: workSpace,//为创建工作区时的命名空间URI
                    featurePrefix:workSpace,
                    srsName: 'EPSG:4326',// 坐标系
                });

当然在保存时还遇到一个问题 就是提示权限为只读

<ows:ExceptionText xmlns:ows="http://www.opengis.net/ows">{*****}TABLENAME is read-only</ows:ExceptionText>

这时只要打开geoserver管理界面,点击左侧的Security中的Data,点击“Rule path”中的“..w”,勾选Grant access to any role下面的单选框,点击保存即可。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值