Web Servers and Servlet Containers
The terminology for web servers may be confusing. Servlet containers are often called web servers. However, not all web servers are servlet containers and some servlet containers require a separate web server. Some examples may help:
- IIS: Web Server (not a servlet container)
- ServletExec IS: A lightweight servlet container that requires a web server front end like IIS. This is what Remedy Mid-Tier was bundled with prior to version 7.
- ServletExec AS: The application server version of ServletExec. This can run as a servlet container and web server, or can connect up to IIS or other web servers for front end page serving.
- Apache Tomcat: An open source servlet container that can also be used as a stand-alone web server.
- Apache Web Server: An open-source web server. This is not a servlet container, and is often paired with Tomcat as a back-end servlet container.
Deploying Kinetic SR
Deploying Kinetic SR to a web server involves moving the directories included in your installation to your web server as well as configuring some of the web server properties.
NOTE: If you need a WAR file for your environment (Web application archive), it can be found in the Web folder of the Installation Directory listed below.
- Installation Directory: This is a backup copy of the web application files that the installer placed on the local hard drive. The default location for this directory is C:\Program Files\Kinetic Apps\Kinetic SR\.
- Deployment Directory <webapps>: This is the directory where your web server is hosting your web application. Please consult your web server manual if you need help determining where your web server’s deployment directory is located.
- An example for Tomcat would be: <TomcatDir>\webapps\
- An example for ServletExec AS would be: C:\Program Files\New Atlanta\Servlet Exec AS\se-<instance>\webapps\
- Locate the installation directory chosen at the beginning of the installation process. The required files have been included in the Web directory.
- Move the “kinetic” directory into the web server’s deployment directory for automatic deployment, or another desired location on your web server.
- Add the kinetic application context to your web server configuration. This is often done from a management/configuration screen for your environment. Typically this involves:
- Naming the application. Example “KineticSR”
- Including the URL context. The default is “/kinetic/”
- Including the path to the kinetic directory moved in step 2.
- NOTE: If a Tomcat server is used and the application was moved into the Tomcat deployment directory, this step is not necessary as Tomcat will automatically add the application when the service is started.
- Include the ARS API files specific to your ARS installation. If you are installing Kinetic SR on the same instance of a web server running BMC Remedy Mid-tier, please read the next section on before doing this step.
The kdi_arshelpers.jar file is included as part of Kinetic SR. The other API files are also included in the installation directory. However, we suggest getting the latest version/patch that your ARS Server is using. You can typically find these in your AR System/ARServer/Api/lib directory, or in the WEB-INF/lib directory of your Mid-Tier installation. These can also be downloaded from http://www.ARSWiki.org.
Place these files in the <webapps>/kinetic/WEB-INF/lib directory. This would include minimally:
- kdi_arshelpers.jar found in <installation directory>/Web/
- If no other Remedy applications are installed on your machine (such as Midtier/Flashboards/Email Engine etc), you will also need to include the Remedy API dynamic link library (DLL) files. You can look in the <installation directory>/Web/<your AR Version> to see what files are necessary. The location of the API DLL files must be included in the system PATH.
- If you had to add the location of the Remedy API DLLs to the system PATH variable, you will need to restart your server.
- Restart your Web Server/Servlet Container.
- You are now ready to configure your Kinetic SR web application with your Remedy server information. Please see the next sectionConfiguring the Web Application Properties.
Configuring the Web Application Properties
If you have successfully deployed the Kinetic SR web application, you will need to configure it with the Remedy server information, and a few other configuration items.
- Open your web browser and connect to the Administration Console. http://<webservername>:<port>/<context>/AdminConsole
- Replace the following items with your web server specific values:
- <webservername>: Name or IP of your web server
- <port>: Port your web server uses (8080)
- <context>: Context of application (kinetic)
- Replace the following items with your web server specific values:
- This web page requires authentication to gain access to it. Only Remedy Administrators have access to it, with the exception of a configuration administrator user. This user is necessary for first time access to the system because a Remedy server has not yet been configured, so the web application doesn’t know where to authenticate.
- Log in with the default configuration administrator for this web server (admin/admin). After logging in, the credentials for this user may be changed.
- Now edit the properties for your Remedy server.
- Click the ‘Edit Properties’ button to enter your Remedy server and user properties. Please see Web Admin Console - Properties Tab for a description of each property.
- Click the ‘Update Properties’ to save your changes, or click the ‘Cancel’ link to discard your changes.
Because the BMC Remedy Java API uses a JNI interface, there are some special requirements if the Servlet Container running Kinetic SR is also running BMC Remedy Mid-Tier, or another application that also uses the BMC Remedy Java API.
A few notes on sharing a servlet container:
- Kinetic Survey/Kinetic Request can no longer be installed inside your Mid-tier application (inside the Mid-Tier directory) as it could in previous versions of the product.
- ServletExec ISAPI is not supported if Mid-Tier is already installed inside this container because shared libraries are not available. ServletExec AS is supported, and ServletExec ISAPI is supported if Kinetic SR is the only Remedy-based web application running.
- If you are setting up a new environment we suggest installing BMC Remedy Mid-Tier first. Testing your install, then installing Kinetic SR Web component as described earlier.
Important Note: Kinetic SR cannot be installed in a Servlet Container running BMC Knowledge Management. If your Servlet Container is running BMC Knowledge Management, you will need to install another instance of the Servlet Container, or another Servlet Container altogether.
To run the applications together in the same servlet container instance, you must move some jar files that both applications require to a directory that is dedicated as a shared classloader for this purpose.
- Copy the arapi7x.jar and arutil7x.jar from BOTH the kinetic/WEB-INF/lib (if present) AND your Mid-Tier/WEB-INF/lib directories. You will need these files in the next step.
- Place these files in the shared directory for your servlet container:
- For Tomcat 5.5 this is in <tomcat_folder>/shared/lib/
- For Tomcat 6.0 and Tomcat 7.0 this is in <tomcat_folder>/lib/
- For ServletExec AS, this is <servletexec_folder>/<SE instance>/classes/
- For ServletExec you must also alter the <servletexec_folder> /<SE instance>/StartServletExec.bat script to include these three files in the classpath. You will see a –classpath line followed by many paths, each separated by a semi-colon. Enter the path to each jar after the last item in the path.
- For other web servers or more information, please your specific server’s documentation.
- In a shared environment, you should not include the other DLL’s/libraries that you would typically include in your kinetic/WEB-INF/lib directory. These are already included in the Mid-Tier server and added to the PATH environment variable for your server.
IMPORTANT NOTE: When you upgrade your Mid-Tier server in a shared environment you will need to again remove the jars from your Mid-Tier/WEB-INF/lib directory. You should replace the files in the shared directory with these new files.