ArcGIS for Server内置JS Viewer的离线部署和配置

来源:互联网 发布:本机端口号查询 编辑:程序博客网 时间:2024/05/22 01:41
      很多情况下,在地图服务发布完毕后,我们往往利用 ArcGIS for Server内置的 JS Viewer来查看和检测所发布的地图服务是否满足我们的要求。具体操作如下: 点击开始 -> 所有程序 -> ArcGIS -> ArcGIS for Server -> Services Directory 或直接在浏览器地址栏中键入 http://ip:6080/arcgis/rest打开ArcGIS for Server的Service Directories页面,选中并点击要查看的地图服务,点击 View In:ArcGIS JavaScript,即可浏览和查看地图并在开启开发者工具的情况下(按F12)对服务的请求和响应操作进行监控。

      当ArcGIS for Server 所在的浏览器处于联网状态时,由于可自动从ESRI服务器下载JS API,从而保障了地图服务的正常查看。

      但是,如果服务器处于内网环境,无法联网呢?

      接下来,将对断网状态下如何配置ArcGIS for Server内置的JavaScript Viewer进行详细说明。

     一 离线部署ArcGIS for JavaScript

     1 下载和解压API和SDK

      访问https://developers.arcgis.com/en/downloads/,利用已注册的ArcGIS Developer账户或ArcGIS试用账户进行登录。

      选择所需要的版本,如3.11版本。若基于开发的需要,建议同时下载API和Documentation两个文件。

      下载完毕后,依次解压。且为了方便访问,对文件进行了如下整理:

      2 修改library下文件的配置信息

      进入library\3.11下,可以看到3.11和3.11compact两个文件夹,分别对应于标准版和压缩版。压缩版本是为网络较慢或者延时较大的用户准备的,如移动端用户。更加详细的信息,请参见https://developers.arcgis.com/javascript/jshelp/intro_accessapi.html。

      配置的关键在于将library中所有[HOSTNAME_AND_PATH_TO_JSAPI]替换为真实的ip地址。

      对于标准版,利用文本编辑器依次打开下面两个文件:

      (1)C:\inetpub\wwwroot\arcgis_js_api\library\3.11\3.11\init.js

      (2)C:\inetpub\wwwroot\arcgis_js_api\library\3.11\3.11\dojo\dojo.js

      将其中的[HOSTNAME_AND_PATH_TO_JSAPI]替换成<myserver>/arcgis_js_api/library/3.11/3.11/,由于我的JS离线包部署在虚拟机中,因此,这里替换为[虚拟机IP]/arcgis_js_api/library/3.11/3.11/,即192.168.150.140/arcgis_js_api/library/3.11/3.11/

      对于压缩版,利用文本编辑器依次打开下面两个文件:

      (1)C:\inetpub\wwwroot\arcgis_js_api\library\3.11\3.11compact\init.js

      (2)C:\inetpub\wwwroot\arcgis_js_api\library\3.11\3.11compact\dojo\dojo.js

      将其中的[HOSTNAME_AND_PATH_TO_JSAPI]替换成<myserver>/arcgis_js_api/library/3.11/3.11compact/,由于我的JS离线包部署在虚拟机中,因此,这里替换为[虚拟机IP]/arcgis_js_api/library/3.11/3.11compact/,即192.168.150.140/arcgis_js_api/library/3.11/3.11compact/

      3 初步测试

      访问http://192.168.150.140/arcgis_js_api/library/3.11/3.11/init.js,可正常访问文件内容或可正确下载这一文件,则表明部署正确。

二 配置ArcGIS for Server

      1 配置 ArcGIS for Server 10.1.1

      打开[ArcGIS Server安装目录]\framework\runtime\tomcat\webapps\arcgis#rest\WEB-INF\classes\resources下的rest-config.properties,对JS API URLs下的三个参数jsapi.arcgis、jsapi.arcgis.sdk和jsapi.arcgis.css进行修改并保存:

      注:此方案适用于10.1和10.1.1版本

      2 配置 ArcGIS for Server 10.3

      访问并登录ArcGIS Server Administrator Directory

      依次点击system -> handlers -> rest -> servicesdirectory

      点击 edit,对JavaScript API URL, Javascript API SDK URL, Javascript API CSS URL 和JavaScript API CSS2 URL四个参数进行修改并保存。

      注:此方案适用于ArcGIS for Server 10.2,10.2.1,10.2.2和10.3版本;请务必确保JavaScript API URL和JavaScript API CSS URL两项进行了配置。

三 测试

      按照第一章节的访问方法,在浏览器中打开示例服务,通过网络监控,可以发现所有的ArcGIS JavaScript API中资源的访问都已转为本地部署的资源。离线部署成功完成。

      注:

     (1)在集群环境中,可以将ArcGIS for JavaScript API离线部署至一台服务器上,对集群中所有的ArcGIS for Server进行配置以指向这一地址,以避免重复部署。

     (2)SDK可根据需要,自行选择是否部署。

     (3)虽然可选择将ArcGIS for JavaScript API离线部署在ArcGIS for Server 内置的tomcat中,但是为避免相互干扰,强烈建议部署在独立的web server中。

0 0