所有的数据与环境都配置好以后,我们就需要发布GP服务了。对于ArcGIS 10.1,发布GP服务方式改变了,得需要ArcMap帮助。我们可以先将这个服务打包定义,然后发给别人,使用Sever发布,也可以直接使用Server发布。
不论怎么样,都需要预先在ArcMap跑一遍。
菜单栏Geoprocessing-Results查看结果。
服务发布 |
为什么需要跑一遍呢?之前我们模型定制完成之后,直接发布,没有验证,可能使用GP服务,就出现问题。所以,这样一来,先跑一遍,就可以处理这些问题,然后再去发布。
1:选中结果
右键当前结果,Share As-Geoprocessing Service。
2:点击Publish a Service
这里有是三个选项,第一个意思是发布一个新服务,第二个将服务打包定义(模型当中使用到的数据,模型,服务设置),第三个意思是,重新覆盖当前的一个模型。
3:设置服务名字
上面的connection,需要预先在catalog当中设置好,具体怎么设置,可以在这里添加一个。
4:设置服务文件路径
可以使用现有的,也可以新建一个"文件夹"。
5:服务参数设置
下面主要介绍比较常用的参数。
(5.1)General
这里面的参数,就是根据前面的设置,列出来的,不能改变。能改变的,就是设置是否服务发布的时候,是否立即启动。
(5.2)Parameters
Execution Mode,同步和异步定义了客户端(使用任务的应用程序)如何与服务器进行交互以及如何获取任务结果。服务设置为同步时,客户端将等待任务完成。通常,同步任务的执行速度很快,大概需要 5 秒或更短。异步任务的执行往往花费的时间较长,客户端必须定期向服务器发出询问以确定任务是否已完成,如果完成,则获取结果。使用异步任务的 Web 应用程序必须添加函数逻辑来检查任务状态,并在执行完毕后处理结果。不同的方式,在代码当中使用的函数是不一样的。
View results with a map service, 发布地理处理服务时,可以选择以地图形式查看服务所有任务的结果(以及任务的其他结果)。这一地图使用 ArcMap 创建在服务器上,以将其以图片格式(如 .jpeg)传输回客户端。返回地图的符号系统、标注、透明度和所有其他属性与当前 ArcMap 会话中的输出图层完全相同。使用结果地图服务的原因如下:
- 如果您的任务输出大量的要素而且需要客户端进行符号化和绘制,那么对于该客户端来说,接收一幅地图可能会更迅速、更简便。
- 用于显示结果的最好方法中所需要的功能在 ArcMap 中有,但在客户端不存在。
- 由于数据分发的原因,您不希望向客户端发送任何要素,而仅仅是发送地图图像。
- 您任务的结果是一个不可传输的数据集,例如 TIN 或 CAD 工程图。向客户端发送地理状况的唯一方法是通过地图图像。
- 如果输出图层要绘制唯一值,则可能需要取消选中图层属性中的 <所有其他值> 以在绘制之前强制重新计算唯一值。有关详细信息,请参阅创建图层符号系统文件。
- 如果您希望客户端只能查看数据而无法下载数据,可在发布时将服务器返回的最大记录数选项设置为零。
选择此选项后,服务器上会自动生成一个地图服务,其名字同您的地理处理服务相同。
另外可以设置,返回的条数。
(5.3)ContaminatedAreas
这个名字,当然是根据你的名字自动生成的,可能你的模型不是这个名字。
其实第二篇,我欺骗了大家,在代码当中传到后台的参数名字是可以通过这里更改的。
(5.4)Item Description
这里虽然对功能没有影响,但是不填的话,会不能发布服务的。
最后点击Publish。
服务目录 |
打开Server 服务目录,查看一下,这就是我们发布后的结果。
具体怎么使用,请看下一篇JavaScript API来调用