SOE使用

1.使用Arcgis 的模板例子选择新建-->ESRI模板-->ArcObjects Sample

选择simplerestsoe,然后finish完成例子的创建.或者直接到E:\Program Files (x86)\ArcGIS\DeveloperKit10.4\java\samples\arcobjects\serverobjectextensions\simplerestsoe

路径找到例子代码。这个例子是只有rest服务的soe扩展。


2.默认例子在lib目录已经有了JavaSimpleRESTSOE.soe文件.该文件可以用快压打开查看里面的内容,主要是一个xml描述文件和对应的SimpleRESTSOE.jar文件.

我们为了调试,需要自己重新生成soe文件,用自带的调式不了. 工程右键选择ArcGIS,然后选择SOE/SOI导出,只要勾选SRC下面的文件就可以了。然后finish即可。


3.在arcgis manager使用,在站点-->扩展-->添加扩展,选择我们的soe文件就可以。然后发布一个服务,勾选我们的扩展服务即可。

4.调用我们扩展服务的rest接口,只要选择勾选扩展服务的test服务-->功能-->Java Simple REST SOE 点击就可以看到rest服务url,点击就可以进行测试。


5.调试SOE,在arcgis manager进行调试配置。


如果要调试soe的init方法,可以勾选设置暂停服务启动,设置延迟启动的时间。这里不需要只是配置端口起始范围,配置后重新启动test的服务。

根据文档在arcgis server manager的log日志可以看到待远程连接调试的端口号。实际我并未找到过滤设置精细都没有,只有lience过期的一些警告。


这里我的eclipse和arcgis server都是一台机器,不管直接查询端口哪个在监听(9000--9005).

可以看到9001端口启动了。


然后我们在eclipse的工程进行remote application的配置,右键工程debug config,注意下面host因为是本机所以是localhost,如果是其他机器设置对应ip,端口选择9001

然后debug就可以了。

再次查9001端口,可以看到sid的eclipse程序正在用55082端口连接9001端口。



如果要杀进程可以用taskkill /PID 11032 ,如果要强制杀进程可以看帮助(taskkill /?)使用/F参数。


设置SOE代码,在arcgis server manager中点击之前的rest接口,调用对应的方法就可以进入断点了。


今天早上重启服务之后,断点不起作用。查看发现端口变了,原来9001端口找不到,但是9002、9003、9004都是soc进程在监听。修改eclipse的端口到9003才进入断点。



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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值