ArcGIS Server Java ADF 案例教程 43

一 Server Object Extensions

Server Object Extensions(以下简称SOE)是Server Object的扩展,比如MapServer、GPServer等等。和Utility Objects不同,SOE只在Server Object被创建的时候被初始化,它的生命周期和Server Object是相同的。相比Utility Objects,SOE有以下的一些特点:

Ø 开发人员不需要手动实例化SOE,SOE是在Server Object被创建的同时被实例化的

Ø ArcGIS Server的管理程序可以显示SOE的参数配置

Ø SOE的运行信息将被记录到ArcGIS Server的日志中去

Ø SOE的功能可以通过SOAP访问

更直观一点,让我们看一下下面这张截图,这是一个添加了一个自定义SOE的Map Service管理界面:

image

图 30 添加了SOE的Map Service

是不是可以把SOE理解成一个服务的自定义Capability?似乎ESRI就是这样理解的。那下面我们就通过自定义一个新的Capability来看看SOE的用法。

二 创建一个自定义的Server Object Extension【案例】

首先,我们使用IDE插件来帮助我们新建这个SOE,打开菜单的【File】-【New】-【Server Object Extension】打开新建窗口,如图 31;然后在如图 32的属性页中做些自定义的编辑,ArcGIS插件会自动新建一些类和配置文件。

image

图 31 新建SOE窗口

image

图 32 编辑一些SOE的属性

好,现在虽然我们没有添加什么实质的功能代码,但是SOE的框架已经起来了,让我们尝试部署这个SOE到ArcGIS Server中去。

首先,右键工程,选择【Export】,找到Java文件夹下的JAR文件选项,把这个SOE导出成jar包;然后,复制这个jar文件到 %ARCGISHOME%/java/lib/ext 目录下;最后,需要用一个工具添加这个SOE到Map Service,这个工具叫SOMManager,你可以在 %ARCGISHOME%/java/tools目录下打开控制台,然后执行以下命令:

soemanager -a [server name] [domain name] [username] [password] [fully qualified SOE name] [SOE display name]

比如上面在wuyf命名空间下新建了一个NMEAServerObjectExt类,因此大概的命令就是如下这个样子的:

soemanager -a localhost localhost arcgismanager passwd wuyf.NMEAServerObjectExt NMEA

好了,下面在添加一个新的Map Service的时候就可以看到一个新的Capability了:

image

图 33 自定义的NMEA Capability

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值