Install notes for the ArcGIS API for JavaScript™

Installing the ArcGIS API for JavaScript Library on Linux

The instructions below assume that you are installing the ArcGIS JavaScript API library in the following location on an Apache Tomcat Web Server, "http://<myserver>:8080/arcgis_js_api/library/3.16/" where <myserver> is the domain name of your Web site and '8080' is the default Web server port. This port number, of course, can be changed for your instance if you choose to not use this default port. After copying files to your Web server, you will need to edit some files to include the URL to the server and directory that you are planning to install to.

For instructions on deploying the library on IIS for Windows, please go to the installation notes for Windows.

  1. Copy \arcgis_js_api\library and all its contents from the zip file to your Web server. In this example the files are copied to:
    <apache_tomcat_home>/webapps/arcgis_js_api/library

Install the Normal or Compact Build

ArcGIS JSAPI 3.16 contains two builds--a normal build and a compact build. The compact build removes the Dojo Dijit dependancy and minimizes the non-essential ArcGIS JSAPI classes. Please see the documentation for more details.

Your directions may differ depending on your server configuration or Web server, but the process is the same.

Configuration options for normal build:
  1. Open <apache_tomcat_home>\webapps\arcgis_js_api\library\3.16\3.16\init.js in a text editor and search for the text '[HOSTNAME_AND_PATH_TO_JSAPI]', and replace this text with "<myserver>:8080/arcgis_js_api/library/3.16/3.16/"
  2. Open <apache_tomcat_home>\webapps\arcgis_js_api\library\3.16\dojo\dojo.js in a text editor and search for the text '[HOSTNAME_AND_PATH_TO_JSAPI]', and replace this text with '<myserver>:8080/arcgis_js_api/library/3.16/3.16/'
Configuration options for compact build:
  1. Open <apache_tomcat_home>\webapps\arcgis_js_api\library\3.16\3.16compact\init.js in a text editor and search for the text '[HOSTNAME_AND_PATH_TO_JSAPI]', and replace this text with "<myserver>:8080/arcgis_js_api/library/3.16/3.16compact/"
  2. Open <apache_tomcat_home>\webapps\arcgis_js_api\library\3.16\3.16compact\dojo\dojo.js in a text editor and search for the text '[HOSTNAME_AND_PATH_TO_JSAPI]', and replace this text with '<myserver>:8080/arcgis_js_api/library/3.16/3.16compact/'

Using HTTP/HTTPS with different ports

The steps below outline what to do if accessing non-default (80/443) HTTP/HTTPS ports in a single local API install.

Assuming init.js is accessible at the following URL: http://xyz.company.com/jsapi/init.js and the web server uses a non-standard port for HTTPS, the baseUrl value below would work:

  1. baseUrl: (location.protocol === "file:" ? "http:" : location.protocol)
    + "//" + "xyz.company.com:" + (location.protocol === "https:" ? 8443 : 9090) + "/jsapi/dojo"
         
    Assume that HTTP port = 9090 and HTTPS port = 8443. Replace
    "[HOSTNAME_AND_PATH_TO_JSAPI]/dojo"
         
    with
    "xyz.company.com:" + (location.protocol === "https:" ? "8443" : "9090") + "/jsapi/dojo"
         

    If the HTTP port is standard 80, but HTTPS port is non-standard.

  2. "xyz.company.com:" + (location.protocol === "https:" ? "8443" : "") + "/jsapi/dojo"
         

Test the Install

Now you should be able to access the ArcGIS JavaScript library from your Web server using the following URL(s):

    http://<myserver>:8080/arcgis_js_api/library/3.16/3.16compact/
    http://<myserver>:8080/arcgis_js_api/library/3.16/3.16/

Test your install. You can use the following test code to validate your JSAPI library install.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title>Simple Map</title>
    <link rel="stylesheet" type="text/css" href="http://<myserver>:8080/arcgis_js_api/library/3.16/3.16/dijit/themes/tundra/tundra.css">
    <link rel="stylesheet" type="text/css" href="http://<myserver>:8080/arcgis_js_api/library/3.16/3.16/esri/css/esri.css" />
    <script type="text/javascript" src="http://<myserver>:8080/arcgis_js_api/library/3.16/3.16/init.js"></script>
    <script type="text/javascript">
      dojo.require("esri.map");
      function init() {
        var myMap = new esri.Map("mapDiv");
        //note that if you do not have public Internet access then you will need to point this url to your own locally accessible cached service.
        var myTiledMapServiceLayer = new esri.layers.ArcGISTiledMapServiceLayer("http://server.arcgisonline.com/ArcGIS/rest/services/NGS_Topo_US_2D/MapServer");
        myMap.addLayer(myTiledMapServiceLayer);
      }
      dojo.addOnLoad(init);
    </script>
  </head>
  <body class="tundra">
    <div id="mapDiv" style="width:900px; height:600px; border:1px solid #000;"></div>
  </body>
</html>

Change the ArcGIS Services Directory "View In JavaScript" URL

The Services Directory allows you to view Map and Image services using the JavaScript API. Set the following values in the rest-config.properties file to use the local install:

#JS API URLs
jsapi.arcgis=http://<myserver>:8080/arcgis_js_api/library/3.16/3.16/
jsapi.arcgis.sdk=http://<myserver>:8080/arcgis_js_sdk/sdk/
jsapi.arcgis.css=http://<myserver>:8080/arcgis_js_api/library/3.16/3.16/dijit/themes/tundra/tundra.css

View the Configuring the Rest API help topic for more details.