在最简界面中访问自己发布的数据

引言

继续之前的章节,我们已经知道了如何去构建ajs服务的软件环境、知道了怎么去发布手上的数据、也明白了创建WebGIS地图的最简单步骤。在迈入更深层次的功能之前,还有两个关键点:一是,如何访问自己发布的数据;二是,如何制作我们可能会用到的数据。

这一节,先介绍下如何访问我们自己发布的数据。


确认数据访问的路径

这里直接使用[使用ArcGIS Server发布我们的数据]一篇中发布的数据。

在浏览器中输入路径:http://localhost:8399/arcgis/rest/services,就可以看到已经发布好的数据。



myTestServer就是之前发布的地图服务名称,单击进入服务。



在服务的页面中,可以看到两个图层,sde.sde.IMAGE(0)和bou2_4p(1)。单击这两个图层,进入各自图层的界面后,浏览器地址栏中的地址,就是WebGIS前台代码访问这两个图层的ip地址。

sde.sde.IMAGE: http://localhost:8399/arcgis/rest/services/myTestServer/MapServer/0
bou2_4p: http://localhost:8399/arcgis/rest/services/myTestServer/MapServer/1

修改最简界面

要将上述两个图层都添加到WebGIs页面中有两种方式:一是使用ArcGISDynamicMapServiceLayer同时包含整个服务;二是使用FeatureLayer分别添加两个图层。

使用ArcGISDynamicMapServiceLayer
<!DOCTYPE html>  
<html>  
  <head>  
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">  
    <meta name="viewport" content="initial-scale=1, maximum-scale=1,user-scalable=no"/>  
    <title>Simple Map</title>  
    <link rel="stylesheet" href="http://js.arcgis.com/3.11/dijit/themes/tundra/tundra.css">
    <link rel="stylesheet" href="http://js.arcgis.com/3.11/esri/css/esri.css">  
    <style>  
      html, body, #map {  
        height: 100%;  
        width: 100%;  
        margin: 0;  
        padding: 0;  
      }  
    </style>  
    <script src="http://js.arcgis.com/3.11/"></script>  
    <script>  
      var map;
      var serviceLayer;  
  
      require(["esri/map","esri/layers/ArcGISDynamicMapServiceLayer"], 
		function(Map,ArcGISDynamicMapServiceLayer) {  
        map = new Map("map", {  
        //basemap: "topo",
          center: [110, 32], // longitude, latitude  
          zoom: 4  
        });

	serviceLayer = new esri.layers.ArcGISDynamicMapServiceLayer("http://192.168.153.132:8399/arcgis/rest/services/myTestServer/MapServer"); 
      	map.addLayer(serviceLayer);
	
	});  
    </script>  
  </head>  
  
  <body class="tundra">
    <div id="map"></div>  
  </body>  

使用FeatureLayer

<!DOCTYPE html>  
<html>  
  <head>  
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">  
    <meta name="viewport" content="initial-scale=1, maximum-scale=1,user-scalable=no"/>  
    <title>Simple Map</title>  
    <link rel="stylesheet" href="http://js.arcgis.com/3.11/dijit/themes/tundra/tundra.css">
    <link rel="stylesheet" href="http://js.arcgis.com/3.11/esri/css/esri.css">  
    <style>  
      html, body, #map {  
        height: 100%;  
        width: 100%;  
        margin: 0;  
        padding: 0;  
      }  
    </style>  
    <script src="http://js.arcgis.com/3.11/"></script>  
    <script>  
      var map;
      var bouLayer,imageLayer;  
  
      require([
	"esri/map", "esri/layers/FeatureLayer",
        "esri/geometry/Extent"
        ], function(	
	Map, FeatureLayer,
        Extent
        ) {  
       var startExtent = new esri.geometry.Extent({"xmin":-180,"ymin":-90,"xmax":180,"ymax":90,"spatialReference":{"wkid":4326}});

        map = new Map("map", {  
         //basemap: "topo",  
          extent:startExtent ,
          center: [110, 32], // longitude, latitude  
          zoom: 4   
        });

	bouLayer = new FeatureLayer("http://192.168.153.132:8399/arcgis/rest/services/myTestServer/MapServer/1",{
                   mode: FeatureLayer.MODE_SNAPSHOT
                   }); 
      	map.addLayer(bouLayer);

	imageLayer = new FeatureLayer("http://192.168.153.132:8399/arcgis/rest/services/myTestServer/MapServer/0",{
                   mode: FeatureLayer.MODE_SNAPSHOT
                   }); 
      	map.addLayer(imageLayer);
		
	});  
    </script>  
  </head>  
  
  <body class="tundra">  
    <div id="map"></div>  
  </body>  
</html>  


arcgis server启动后无法访问的问题

arcgis server在计算机重启之后,有时会出现ArcGIS Server Manager能够访问,但是服务页面不能访问(返回400错误)的情况。一般在Windows Server上很多见,如果ArcGISServer部署在Windows7上,出现的次数比较少。

这种情况多半是,三个ArcGIS Server需要的服务启动顺序不正确导致的。三个服务启动的顺序是ArcGIS SOC Monitor,ArcGIS Server Object Manager,ArcGIS Server Manager Service。

也可以使用sc命令,将ArcGIS Server Object Manager设置为ArcGIS Server Manager Service的依赖服务,来保证启动顺序。

sc config "ArcGIS Server Manager Service" depend= ArcServerObjectManager
注:depend与=之间没有空格,=与ArcServerObjectManager之间有空格。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值