Java WebADF Runtime Files and Components


This document was published with ArcGIS 9.3.1.
A 9.3 version also exists.
This topic applies to 9.3.1 and later versions.

Development licensing Deployment licensing
Server Server

The Java Web Application Developer Framework (ADF) is designed to operate independent from any server products, such as ArcGIS Server or ArcIMS. Since it can be installed by itself, it also has the necessary components to work with remote services. In addition, developer IDE plug-ins are included to enhance the developer experience. The following items are included in the Web ADF installation:
 
Web ADF Components
 
The Web ADF components are located on disk under '<ARCGISHOME>/java/web/webcontrols' and include all of the native and interop libraries as well as all the core javascript and jsf functionalities. 
 
Web ADF libraries are located under $ARCGISHOME/java/web/webcontrols/WEB-INF/lib and include the following:
 
Map Application Structure
 
The Web ADF provides developers with a pre-made project skeleton located under $ARCGIS/java/web/web_map_application with the following structure:
 
folder for file
explanation
web_map_application
Root map application project folder
/JavaSource
Provided template source code directory.  This folder is where you place you own Java Source classes and properties files. 
/WebContent
This folder holds the actual Web ADF application files used by the application server. 
  /css
This folder inside the WebContent folder holds the template stylesheet files you can reference for a consistent look and feel for your application. 
  /help
This folder inside the WebContent folder holds help system files your application can reference.
  /images
This folder inside the WebContent folder holds template image files used in your web map application.
  /js
This folder inside the WebContent folder holds client side javascript files referenced by your web application. 
  /themes
This folder inside the WebContent folder holds all the required stylesheet and image files for the different out-of-the-box web application templates provided by the Web ADF. 
  /WEB-INF
This folder inside the WebContent folder holds files that are used as part of the runtime Web application but are hidden from your browser. 
    /classes
This folder inside the WEB-INF folder holds compiled Java classes along with properties files required by the Web ADF.  These files are typically copied from JavaSource. 
    /functionalities
This folder inside of the WEB-INF folder holds extended JSF configuration details.
    faces-config.xml
This file inside the WEB-INF folder is the JSF configuration file.  This file lists bean resources and map entry configuration information required by your web map application.
    web.xml
This file inside the WEB-INF folder is the Web Application Deployment Descriptor for your application.  This is an XML file describing servlets and other components that make up your application.
     ajax-renderers.xml
This file inside the WEB-INF folder is an extended JSF configuration file which lists AJAX managed bean resources for your web application.
 
Dependant Libraries
 
The Web ADF follows the Model-View-Controller (MVC) pattern of which we can break into three tiers with respect to the dependent libraries required for your application.  Making efficient use of the Web ADF dependent libraries will help ensure your application is optimized with the required library references. 
 
Library reference tiers:
  1. Core
  2. Resource
  3. Business Logic
 
The core library reference for the Web ADF is arcgis_webcontrols.jar.  This will be used by all your Web ADF applications regardless of which resource or required server references are required. 
 
The Resource library reference refers to the type of resource your application will connect to.  Below is a list of resources and their required library references: 
 
  1. ArcGIS Server: arcgis_webcontrols_ags.jar
  2. ArcIMS: arcgis_webcontrols_arcims.jar
  3. ArcWeb: arcgis_webcontrols_arcweb.jar
  4. OGC/WMS: arcgis_webcontrols_wms.jar
 
The Business logic library reference refers to the controlling logic provided by the resource you are connecting to.  Below is a list of resources and their respective business logic libraries:
 
  1. ArcGIS Server: arcobjects.jar (local connection) & arcgis_agsws_stubs.jar (remote connection)
  2. ArcIMS: arcims_jconnect.jar
  3. ArcWeb: arcgis_arcweb_stubs.jar
  4. OGC/WMS: arcgis_wmsclient.jar & arcgis_wmsclient_impl.jar
 
If your application makes exclusive use of an ArcGIS Server local connection resource, then you would need the following Web ADF libraries:
 
  1. Core: arcgis_webcontrols.jar
  2. Resource: arcgis_webcontrols_ags.jar
  3. Business logic: arcobjects.jar
 
You do not need to include the libraries for other resources or their respective business logic libraries in this particular application scenario. 
 
Developer IDE integration
 
Plug-ins are provided for Eclipse and NetBeans which include the WebADF controls, a Web Mapping Application template, integrated help system, and a set of context wizards.  More information is provided under the IDE Integration topic.