ArcGIS Server学习6

Posted by 蒋波涛 26 June,2007 Views (8)Comment

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

Categories : ArcGIS Server Tags : ArcGIS  Server  
Comments
2007-9-13 15:09:39

www.gissky.net

Posted by PRAY Gravatar Icon

2007-9-19 11:34:22

Application Web Service做的web service是放在WEB SERVER上的,请问 ,ArcGIS Server Web Service做的web service也是在WEB SERVER上吗,还是做好的服务放在GIS Server上,因为,如果是局域网访问的化,如果说它存在于WEB SERVER 上,我们直接连接到SOM 上(GIS SERVER)上,但是就不通过WEB SERVER了,所以里面存在的矛盾,请您解释一下可以吗?

Posted by question Gravatar Icon

2007-9-19 22:00:50

1.所谓web service,是运行在web服务器上的,这点没有异议,而所谓的ArcGIS Server Web Service无非是使用了ArcGIS Server组件制作的web service,当然也放在web服务器上。
2.ArcGIS Server使用了多种方法让我们连接地图服务,既可以直接连接SOM,也可以通过TCP/IP协议访问ASP.NET等页面,还能够通过SOAP协议访问webservice。只能说去一个地方有三条路可以走,毫无矛盾存在。

Posted by 蒋波涛 Gravatar Icon

2007-9-20 8:32:14

太谢谢了,呵呵 、。。

Posted by question Gravatar Icon

2007-10-23 17:04:27

博主好,请问有更多关于server的学习资料么?比如由含有x、y值的数据库表创建一个点要素集

Posted by Sue Gravatar Icon

2007-10-23 17:06:53

博主的开发是server adf for .net么?

Posted by Sue Gravatar Icon

2007-11-20 9:55:38

我在帮助上看,一个简单的WEB浏览器就可以打开WMS服务。
WMS是不是就是个一般的地图呢》》请问
问什么我输入URL的时候报错捏。。
难道普通的IE浏览器不可以显示打开吗
opernlayers是什么东东啊

Posted by 1 Gravatar Icon

2008-7-16 11:19:43

楼主~后续没有文章了吗?

Posted by bdbox Gravatar Icon

Leave a comment

Or, take a look at Archives and Categories

目录

存档