The final deployment step is to post General Interface software and your applications on an HTTP or HTTPS web server. Unlike most web applications, General Interface does not run in the application server. Instead, all browser-compatible files, such as .js, .xml, .xsl, .css, and .gif, are served to the browser and executed on the client.
General Interface is compatible with all HTTP/S web servers and requires no additional executables to be installed, either on the server or the client.
To finish deploying the General Interface application,
- Copy the following files and folders to a directory accessible to the web server. The files can be in any location on the server.
- JSX folder
 | =If you're developing your applications using the General Interface debug build (tib-gi-version-pro-debug), be sure to deploy the standard JSX folder from a deploy build (tib-gi-version-pro or tib-gi-version-pro-max). The debug JSX folder has additional debugging code and therefore runs slower. For more information on these release builds, visit Developer Network at http://www.generalinterface.org. |
- JSXAPPS folder which contains the project to be deployed
- Any other files in your workspace directory required by the application, including add-ins and prototypes
 | The addins and prototypes folders must be at the same level as the JSXAPPS folder to be available at runtime. |
- All launch pages for the applications
- shell.html or shell.xhtml is required if you deployed your application as a launch hyperlink. Also, shell.html must be located at the same level as the JSX folder. These files are located in the GI_HOME. See Creating a Launch Hyperlink.
- logger.xml, located in the GI_HOME directory, can be used to monitor logging messages from the deployed application. Modify this file as needed. See Logging and Application Monitors.
- jxs3.gui.window.html/.xhtml if you're using the jsx3.gui.Window class. Copy the file(s) from the GI_HOME directory.
- Modify the relative URLs in the HTML markup generated by the Deployment Utility if your directory structure on the web server is different from the directory structure during development. For example, you might need to modify the application path, src path, path to shell.html, and so on.
- Set access rights on the web server in the same manner as any standard HTTP/S accessible resource.
 | For dynamic properties files, be sure to use the .xml extension as some servers won't recognize the .jss extension. By default, General Interface, version 3.2 and higher, supports the .xml extension, which is the recommended file extension. See Dynamic Properties Files. If you continue to use the .jss extension, you might need to add a new Mime Type to the server. |
Deployment Examples
Because General Interface deployment is extremely flexible, there are few restrictions on where your files are located on the web server. Folders and files can be nested and in different locations. Due to the relative URI functionality introduced in General Interface 3.2, projects can be easily renamed and moved to new locations. For more information, see URI Resolution.
In some cases, the General Interface runtime is deployed in one location by the system administrator and developers deploy their applications to another location on the same web server. The following example demonstrates this scenario on a UNIX machine:
- The system administrator installs General Interface on the web server at this location — /var/www/htdocs/gi/ version_number/
This directory contains:
- shell.html (launch page)
- JSX folder
- Other appropriate files
- The developer deploys the application here:
- /home/username/htdocs/JSXAPPS/app1
And also installs a web page containing the application here:
- /home/username/htdocs/app1/index.html
In another example, as shown in the following figure, the application launch pages, General Interface runtime, and application are deployed to a folder called gideploy. However, each of these is in a different folder. The launch pages are in an apps folder, General Interface is in a gi/3.2 folder, and the deployed application is in a gihome folder.

The script element on the app1.html launch page shown in the previous figure would look like this:
<script type"text/javascript"
src="../gi/version_number/JSX/js/JSX30.js"
jsxapppath="../gihome/JSXAPPS/app1">
</script>