Skip To Content

Geoportal Web App File Organization

Geoportal Web App File Organization

Through the installation process for the Geoportal extension, a web application called geoportal.war is deployed on the web server. This section discusses the geoportal.war file structure, how the underlying jsp pages are organized, and details about the files within each folder in the 'geoportal' file directory structure. The 'geoportal' folder is divided into seven main sub-folders:

  1. catalog
  2. csw
  3. META-INF
  4. misc
  5. webhelp
  6. WEB-INF
  7. widgets
Each folder and its contents are described below.
  • catalog folder: The catalog folder holds all of the JavaServer Pages (JSP) files that make up the Geoportal interface. Its subfolder structure follows the division of functionality and/or sections within the Geoportal. Each page in the interface is made up of two JSP pages - a header page and a body page. For example, the About page is made up of about.jsp and aboutBody.jsp. The header page references the body page, by pointing to the body page that is to replace the "body tile" in the tiles definition template .
    1. content folder: The content folder contains code for the about, privacy and disclaimer pages. The filenames are about.jsp, aboutBody.jsp, privacy.jsp, privacyBody.jsp, disclaimer.jsp and disclaimerBody.jsp.
    2. download folder: The download folder contains code for pages used in the optional Data Download tab. The filenames are download.jsp and downloadBody.jsp. The folder also contains a proxy.jsp file, whose code serves as a proxy for the ArcGIS Server JavaScript API. The ArcGIS Server JavaScript API is used when interacting with the map on the download and search page (Note: the search page points to this proxy.jsp file).
    3. harvest folder: The harvest folder contains pages used within the Administration tab.

      FilenameFunction

      create.jsp

      Header code for the Register Resource page. Its body page is harvestBody.jsp.

      edit.jsp

      Header code for the Edit Resource page. Its body page is harvestBody.jsp.

      harvestBody.jsp

      Body code for the Register and Edit Resource page.

      history.jsp and historyBody.jsp

      Header and body code for the Synchronization History page.

      manage.jsp and manageBody.jsp

      Header and body code for the Manage metadata page on the Administration tab.

      history.jsp and historyBody.jsp

      Header and body code for the Synchronization Report page.

    4. identity folder: The identity folder contains pages used for identity and profile management.

      FilenameFunction

      changePassword.jsp and changePasswordBody.jsp

      Header and body code for the Change Password page.

      encyrptPassword.jsp and encyrptPasswordBody.jsp

      Header and body code for the Encrypt Password page.

      feedback.jsp and feedbackBody.jsp

      Header and body code for the Feedback/Contact Us page.

      forgotPassword.jsp and forgotPasswordBody.jsp

      Header and body code for the Forgot Password page.

      login.jsp and loginBody.jsp

      Header and body code for the Login page when single sign-on is not enabled. The body references the loginParameters.jsp

      loginJsc.jsp and loginJscBody.jsp

      Header and body code for the Login page when single sign-on is enabled.The page submits credentials to something called j_security_check for authentication. The web server then picks up calls to j_security_check. The body references loginParameters.jsp.

      loginParameters.jsp

      Code for the form on the login page.

      myProfile.jsp and myProfileBody.jsp

      Header and body code for the My Profile page. The body references userAttributes.jsp.

      userAttributes.jsp

      Code for the form elements that appear below the username & password text inputs on the user registration page.

      userRegistration.jsp and userRegistrationBody.jsp

      Header and body code for the User Registration page. The body references userAttributes.jsp.

    5. images folder: The images folder contains all of the images that are used throughout the Geoportal interface. This folder does not include images referenced in the webhelp.
    6. js folder: The JS folder contains all of the JavaScript files that are used by pages in the Geoportal interface for 10. The V931SP1 folder contains all the JavaScript files used by pages in the Geoportal interface for 9.3.1 SP1 version. The files described below are present in both folders except where specified.

      FilenameFunction

      gpt.js

      The Geoportal JavaScript library.

      GPTMapViewer.js

      Functions for interacting with the optional map viewer.

      jquery-1.2.3.pack.js

      Javascript provided by jquery.

      livedata.js

      Contains the logic used to display live data layers in the JavaScript API.

      sample-ESRI_Geocode_USA.js

      Functions used by the sample locator (place finder) used in the Geoportal search and create metadata pages.

      Note:

      this file is not present in the V931SP1 folder

      ui.datepicker.packed.js

      Third-party javascript for displaying date calendars.

      Utils.js

      Geoportal utility functions.

    7. livedata folder: The livedata folder contains files related to the live data preview functionality and page.

      FilenameFunction

      embed.jsp

      Placeholder for preview widget on the preview page.

      liveDataProxy.jsp

      Interprets text submitted to server from browser to determine format for live data url to be used in the preview widget.

      preview.jsp and previewBody.jsp

      Header and Body code for the Preview page.

      kmzBridge.jsp

      Serves as a proxy for KMZ files.

    8. main folder: The main folder contains the code for the home page. home.jsp and homeBody.jsp are the main header and body files. Home.page is needed for Tomcat purposes only, and causes home.jsp to be invoked.
    9. migration folder:The migration folder contains code for the data migration page.

      FilenameFunction

      dataMigration.jsp

      Header and body code for the Geoportal 9.3.x to Geoportal Server migration page.

      dataMigrationForm.jsp

      Code for the data migration page.

    10. publication folder: The publication folder contains pages for metadata publishing functionality.

      FilenameFunction

      createMetadata.jsp and createMetadataBody.jsp

      Header and body code for the GPT 3.1 to Geoportal extension 9.3.1 migration page.

      downloadMetadata.jsp

      Code for when the "download" metadata action button is clicked in the Manage Resource page.

      editMetadata.jsp and editMetadataBody.jsp

      Header and body code for the Edit Metadata (online metadata editing form) page.

      manageMetadata and manageMetadataBody.jsp

      Header and body code for the Manage Resources page.

      uploadMetadata and uploadMetadataBody.jsp

      Header and body code for the Upload Metadata page.

      validateMetadata.jsp and validateMetadataBody.jsp

      Header and body code for the Validate Metadata page.

    11. tc folder: The tc folder contains pages for the optional securityManager, licenseManager, serviceMonitor, and smartEditor functionality, per the Integrate with con terra security solution customization.

      FilenameFunction

      securityManager.jsp and securityManagerBody.jsp

      Header and body code for the securityManager page.

      serviceMonitor.jsp and serviceMonitorBody.jsp

      Header and body code for the serviceMonitor page.

      smartEditor.jsp and smartEditorBody.jsp

      Header and body code for the smartEditor page.

    12. search folder: The search folder contains pages used for the search functionality.

      FilenameFunction

      criteria.jsp

      Code for the search criteria on the search page.

      dsFullMetadata.jsp and dsFullMetadataBody.jsp

      Header and body code for viewing the metadata from a federated search page.

      mysearches.jsp

      Code for "My Saved Searches" available to logged in users on the search page.

      results.jsp and resultsBody.jsp

      Code for initial display of results, appearing on the right-hand side of the search page.

      search.jsp and searchBody.jsp

      Header and body code for the search page. The body references criteria.jsp, mysearches.jsp and results.jsp.

      viewMetadataDetails.jsp and viewMetadataDetailsBody.jsp

      Header and body code for the View Resource Details page.

    13. skins folder: At the root level, the skins folder contains the pages defining the layout of Geoportal.

      FilenameFunction

      centeredLayout.jsp

      Code defining the layout of a page within the Geoportal site. Most pages take on the centered layout.

      centeredLayoutMinimal.jsp

      Code defining the layout of a page that has most navigation elements removed. The page only has a header, banner, content area and footer. This layout is used by the resource migration pages.

      lookAndFeel.jsp

      Defines 'look and feel' aspects of all Geoportal pages.

      popupLayout.jsp

      Code defining the layout of popup pages.

      previewLayout.jsp

      Code defining the layout of the previewer page.

      Within the skins folder there are two (2) sub-directories: themes and tiles . The themes directory holds the various themes of the Geoportal. The interface can only display in one theme at a time (for instance, blue or red). To switch between the various themes, see Customize the Look and Feel of User-Interface. The tiles directory holds pages that define the content of the various defined tiles. See Geoportal Layout and Tiles for details on the contents of the tiles defined in this folder.

      FilenameFunction

      banner.jsp

      Code for the banner tile.

      footer.jsp

      Code for the footer tile.

      head.jsp

      Code for the head tile.

      previewBanner.jsp

      Code for the preview page banner tile.

      primaryNavigation.jsp

      Code for the primary navigation tile.

      resourceNavigation.jsp

      Code for the resource details navigation tile.

      secondaryNavigation.jsp

      Code for the secondary navigation tile.

      tertiaryNavigation.jsp

      Code for the tertiary navigation tile.

  • csw folder: The csw folder contains web service definition files for CS-W endpoints. Each file is described below.

    FilenameFunction

    http-binding.wsdl

    WSDL for XML-based CSW request-response.

    kvp-binding.wsdl

    WSDL for KVP-based CS-W request-response.

    responses.wsdl

    WSDL for CS-W response messages.

    service-wsdl.jsp

    Jsp page used to retrieve CS-W service information.

    soap-binding.wsdl

    WSDL for SOAP-based CS-W request-response.

    xml-interfaces.wsdl

    WSDL for CS-W request messages.

  • META-INF folder: The META-INF folder holds the manifest.mf file. This file gives details about the Java version and ANT version that the Geoportal was compiled against, as well as the build number of the Geoportal application.
  • misc folder:

    The misc folder holds the http.jsp file, which is an HTTP client utility. This HTTP client utility can be accessed from http://<machineName>:<port>/<appName>/misc/http.jsp.
  • webhelp folder: The webhelp folder contains all the code, text, and images for the help system. It enables context-sensitive help available from the help link on all pages within the Geoportal. At the root level is the index.jsp file. This file acts as a "dispatcher", determining in which language to launch the help if multiple languages have been defined. By default, the help directory contains one (1) sub-directory, "en", where the English online help system is stored. Additional sub-directories may be added to the content directory, with each new sub-directory defining a localized help system. Please see the Localization topic for details.
  • WEB-INF folder: The WEB-INF folder holds the files that make the application run within the Tomcat environment. Files present at the root level should not be modified without expert knowledge, as even minor errors may cause the application to fail. The WEB-INF folder contains two (2) sub-directories: lib and classes. The lib directory holds all of the Java Archive (JAR) files. These files contain compiled Java code that makes up the Geoportal. These files should not be modified or deleted. Within the classes directory, there are many xml, xslt and property files. Some of these may need to be modified to customize the Geoportal. Do not modify any files within this classes directory unless other documentation instructs you to do so.
  • widgets folder: The widgets folder contains files associated with the Geoportal Search Widget for HTML. It also contains a FlexExample folder that contain files associated with a sample flex viewer as well as the Geoportal Search Widget for Flex.

    FilenameFunction

    example.jsp

    Provides an example of how to use available widgets.

    searchjs.jsp

    Provides the Javascript for the search widget.

    searchProxy.jsp

    A proxy for executing requests from the search widget.

    widgets.css

    Cascading style sheet for widget look and feel.