Install notes for the ArcGIS API for JavaScript™

#### Installing the ArcGIS API for JavaScript™ Library

The instructions below assume that you are installing the ArcGIS JavaScript API library in the following location on an IIS Web Server, "http://<myserver>/arcgis_js_api/library/2.8/arcgis/" where <myserver> is the domain name of your Web site. 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 Linux please go here.

ArcGIS JSAPI 2.8 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.

1. Copy `\arcgis_js_api\library` and all its contents from the DVD to your Web server. In this example the files are copied to

   `C:\Inetpub\wwwroot\arcgis_js_api\library`

Configuration options for normal build:

2. Open `C:\Inetpub\wwwroot\arcgis_js_api\library\2.8\jsapi\js\esri\esri.js` in a text editor.
3. Search for the text `'[HOSTNAME_AND_PATH_TO_JSAPI]'`, and replace this text with `"<myserver>/arcgis_js_api/library/2.8/jsapi/"`
4. Open `C:\Inetpub\wwwroot\arcgis_js_api\library\2.8\jsapi\js\dojo\dojo\dojo.xd.js` in a text editor.
5. Search for the text `'[HOSTNAME_AND_PATH_TO_JSAPI]'`, and replace this text with `'<myserver>/arcgis_js_api/library/2.8/jsapi/'`
6. Search for the text `'[HOSTNAME_AND_PATH_TO_JSAPI]'`, and replace this text with `'<myserver>/arcgis_js_api/library/2.8/jsapi/'`
7. Search for the text `'[HOSTNAME_AND_PATH_TO_JSAPI]'`, and replace this text with `'<myserver>/arcgis_js_api/library/2.8/jsapi/'`
8. Open `C:\Inetpub\wwwroot\arcgis_js_api\library\2.8\jsapi\js\dojo\dojo\dojo.xd.js.uncompressed.js` in a text editor.
9. Search for the text `'[HOSTNAME_AND_PATH_TO_JSAPI]'`, and replace this text with `'<myserver>/arcgis_js_api/library/2.8/jsapi/'`
10. Search for the text `'[HOSTNAME_AND_PATH_TO_JSAPI]'`, and replace this text with `'<myserver>/arcgis_js_api/library/2.8/jsapi/'`
11. Search for the text `'[HOSTNAME_AND_PATH_TO_JSAPI]'`, and replace this text with `'<myserver>/arcgis_js_api/library/2.8/jsapi/'`

Configuration options for compact build:

12. Open `C:\Inetpub\wwwroot\arcgis_js_api\library\2.8\jsapicompact\js\esri\esri.js` in a text editor.
13. Search for the text `'[HOSTNAME_AND_PATH_TO_JSAPI]'`, and replace this text with `"<myserver>/arcgis_js_api/library/2.8/jsapicompact/"`
14. Open `C:\Inetpub\wwwroot\arcgis_js_api\library\2.8\jsapicompact\js\dojo\dojo\dojo.xd.js` in a text editor.
15. Search for the text `'[HOSTNAME_AND_PATH_TO_JSAPI]'`, and replace this text with `'<myserver>/arcgis_js_api/library/2.8/jsapicompact/'`
16. Search for the text `'[HOSTNAME_AND_PATH_TO_JSAPI]'`, and replace this text with `'<myserver>/arcgis_js_api/library/2.8/jsapicompact/'`
17. Search for the text `'[HOSTNAME_AND_PATH_TO_JSAPI]'`, and replace this text with `'<myserver>/arcgis_js_api/library/2.8/jsapicompact/'`
18. Open `C:\Inetpub\wwwroot\arcgis_js_api\library\2.8\jsapicompact\js\dojo\dojo\dojo.xd.js.uncompressed.js` in a text editor.
19. Search for the text `'[HOSTNAME_AND_PATH_TO_JSAPI]'`, and replace this text with `'<myserver>/arcgis_js_api/library/2.8/jsapicompact/'`
20. Search for the text `'[HOSTNAME_AND_PATH_TO_JSAPI]'`, and replace this text with `'<myserver>/arcgis_js_api/library/2.8/jsapicompact/'`
21. Search for the text `'[HOSTNAME_AND_PATH_TO_JSAPI]'`, and replace this text with `'<myserver>/arcgis_js_api/library/2.8/jsapicompact/'`
22. Deploy a handler. The JavaScript APIs stream multiple JavaScript files. In order to have one URL that delivers all the JavaScript content you must deploy a handler that simultaneously streams the appropriate files to the browser. Included in the library directory are three handlers that you can use. Use Default.ashx for IIS, index.jsp for a Java Application server (such as Tomcat), or index.php for a php application server. Note that the handlers have changed at version 2.0. If you installed a previous version of the handler you will need to replace this handler with 2.0.

    For example, to deploy on IIS you need to modify the default content page to include Default.ashx. Steps include:

    - Open IIS Manager.
    - Navigate to folder that contains Default.ashx (in this example this is C:\Inetpub\wwwroot\arcgis_js_api\library\2.8\jsapi).
    - Open properties dialog (right click, properties).
    - Click the Documents Tab.
    - Ensure Enable default content page has been clicked.
    - Click Add... Button.
    - Enter "Default.ashx" and Add.
    - Press OK and Exit.
23. Access the ArcGIS JavaScript library from your Web server using the following URL:

    `http://<myserver>/arcgis_js_api/library/2.8/arcgis/` and `http://<myserver>/arcgis_js_api/library/2.8/jsapicompact/`

24. Change the ArcGIS Services Directory "View In JavaScript" URL. Instructions are given in "Configuring the REST API" in the ArcGIS Server REST SDK. On Windows, the location is `<Installation Location>\DeveloperKit\Help\REST\index.html`. On UNIX and Linux, the location is `http://<myserver>:8399/<instance>/sdk/rest/index.html` where `myserver` is your server name and `instance` is the instance name (arcgis is the default).
    - Find the "JavaScript API" section for either .NET or Java for more information about parameter values.
    - For .NET, the parameters to change in `rest.config` are `<ArcGIS>` and `<ArcGISCSS>`. Replace `serverapi.arcgisonline.com` with your server domain name.
    - For Java, the parameters to change in `rest-config.properties` are `jsapi.arcgis` and `jsapi.arcgis.css`. Replace `serverapi.arcgisonline.com` with your server domain name.
25. Test your install. You can use the following test code to validate your JSAPI library install.

#### Test Code

    <!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>/arcgis_js_api/library/2.8/jsapi/js/dojo/dijit/themes/tundra/tundra.css">
        <script type="text/javascript" src="http://<myserver>/arcgis_js_api/library/2.8/jsapi/"></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 accesible 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>

#### Installing the ArcGIS JavaScript API SDK

The ArcGIS JavaScript API SDK can be copied in its entirety to your Web server directory. This SDK is equivalent to the version found on the ArcGIS Resource Center:

http://resources.esri.com/arcgisserver/apis/javascript/arcgis/index.cfm?fa=home

1. Copy `\arcgis_js_api\sdk` and all its contents from the DVD to your Web server. In this example the files are copied to

   `C:\Inetpub\wwwroot\arcgis_js_api\sdk`

2. The start page is "home.htm". If you chose to do so, you can rename this page.