ArcGIS Server学习6
WEB服务
使用Server API和web控件既可以开发供用户直接交互的Web应用程序,也可以开发供程序使用的Web Service。AS支持的WEB Service分为两种,即Application Web Service和ArcGIS Server Web Service。
Application Web Service
Application Web Service是我们见过的最普通的WEB SERVICE编写形式,它的编写方法同ASP.NET WEB SERVICE并无二致,同样,由于web service也是放在web服务器上的,我们的程序写法同样是前面介绍的方法,这里就不多讲我个人的学习体会了。
ArcGIS Server Web Service
这是使用ADF提供的模板将我们在GIS服务器上建立的Server Object通过WEB Service的方式发布的方式,由于MapServer和GeoCoder同样支持SOAP协议,因此我们也可以通过SOAP API来展示服务器上的SO。这样即是通过web service的方式来访问GIS服务器上的SO对象。
其过程如下:<VS2003>
在ArcGIS Server Project中选择Web Service Catalog,建立项目为nbservice,然后键入主机名,获得所要发布为web service的SO对象,点击确定即可。这样就自动建立了web service了。如我有个SO为nbserver被添加了服务。
新建一个asp.net项目,添加web引用,键入http://<主机名>/nbservice/nbserver.aspx?wsdl,将WEB引用名改为NBS,然后在WEB页面中写下如下代码:
private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
NBS.nbserver map=new NBS.nbserver();
NBS.MapServerInfo mapi=map.GetServerInfo(map.GetDefaultMapName());
NBS.MapDescription mapdesc=mapi.DefaultMapDescription;
NBS.ImageType it=new NBS.ImageType();
it.ImageFormat=NBS.esriImageFormat.esriImageJPG;
it.ImageReturnType =NBS.esriImageReturnType.esriImageReturnURL;
NBS.ImageDisplay idisp=new NBS.ImageDisplay();
idisp.ImageWidth =400;
idisp.ImageHeight =400;
idisp.ImageDPI =200;
NBS.ImageDescription pID=new NBS.ImageDescription();
pID.ImageDisplay =idisp;
pID.ImageType =it;
NBS.MapImage pMI=map.ExportMapImage(mapdesc,pID);
this.Image1.ImageUrl=pMI.ImageURL;
}
编译执行,同样会出现一幅地图。
我们可以看到,使用这种方式编码真的是非常简单,使用SOAP API和Server API达到了同样的效果。
Related Items
Comments
Application Web Service做的web service是放在WEB SERVER上的,请问 ,ArcGIS Server Web Service做的web service也是在WEB SERVER上吗,还是做好的服务放在GIS Server上,因为,如果是局域网访问的化,如果说它存在于WEB SERVER 上,我们直接连接到SOM 上(GIS SERVER)上,但是就不通过WEB SERVER了,所以里面存在的矛盾,请您解释一下可以吗?
1.所谓web service,是运行在web服务器上的,这点没有异议,而所谓的ArcGIS Server Web Service无非是使用了ArcGIS Server组件制作的web service,当然也放在web服务器上。
2.ArcGIS Server使用了多种方法让我们连接地图服务,既可以直接连接SOM,也可以通过TCP/IP协议访问ASP.NET等页面,还能够通过SOAP协议访问webservice。只能说去一个地方有三条路可以走,毫无矛盾存在。
太谢谢了,呵呵 、。。
博主好,请问有更多关于server的学习资料么?比如由含有x、y值的数据库表创建一个点要素集
博主的开发是server adf for .net么?
我在帮助上看,一个简单的WEB浏览器就可以打开WMS服务。
WMS是不是就是个一般的地图呢》》请问
问什么我输入URL的时候报错捏。。
难道普通的IE浏览器不可以显示打开吗
opernlayers是什么东东啊
楼主~后续没有文章了吗?
Leave a comment
Or, take a look at Archives and Categories
www.gissky.net