Javelin Reporting Portal Installation Guide
To install the Javelin Reporting Portal, please first download the installer. While the installer does most of the work of installing the product, please note that there are dependent pre-install prerequisites and post install operations that must be performed by an administrator.
Overview of Installation
To Install the Javelin Reporting Portal, detailed instructions are provided for the general steps below
- Ensure System Requirements and Prerequisites are met, including:
- .Net 4.5 or newer
- IIS configuration
- Local SQL Server instance and user with administrative privileges
- Install Javelin
- Enter your License Key
- Enter your SQL Server instance, Database name, SQL server username and password
- Connect to Javelin Reporting Portal instance
- Bind to HTTPS (This requires that an SSL certificate has been requested and installed to IIS and is available for configuring HTTPS bindings)
- Add an administrative user to the Javelin Reporting Portal via IIS
- Register and Log In
- Browse to the Javelin Reporting Portal and create the default admin user
For troubleshooting, please see the section at the end for common problems and solutions.
Several software and OS features are required to install Javelin Reporting Portal. These consist of local OS feature and service requirements as well as a required database server which may or may not be local to the server where Javelin will be installed.
Local Server Requirements
- Windows 7 or above
- .NET Version 4.5 or above is required
- IIS installed and running
- IIS must be configured to enable .NET applications
- IIS must be configured to be able to use SSL connections, including having an SSL certificate installed that can be used by the HTTPS binding of Javelin
- Windows authentication must be enabled to allow access to the installed application source if it is in a protected directory
Database Server Requirements
An instance of SQL server is required. This may be SQL Server Express. The SQL Server instance can either be local or on a separate server. Minimum version of SQL Server is 2008.
- IIS Requirements. IIS needs to be configured to support a variety of options, which can be configured via
Control Panel > Programs > Programs and Features.
Click the Turn Windows features on or off action in the right action list. Make sure to set up:
- HTTP features
- And other required security features like Windows Authentication.
The following image shows an appropriate feature setup for IIS.
This represents what is required by the Javelin Reporting Portal. Your installation of IIS may have additional requirements based on other installed applications, so use this as an example only.
- Prior to installation, SQL Server must be configured with a user that will act as the agent for the installation and the operation of Javelin Reporting Portal. This user must have been created and given appropriate permissions prior to running the installer, and must be configured for SQL Authentication.
To do this:
- Create a user for SQL Server using Microsoft SQL Server Management Studio or other SQL Server administration utility.
- Set the new user up to use SQL Authentication, and note the username and password for the installation step.
- This user must be configured with adequate rights to create databases on the server instance and must be able to perform most relevant operations on the database such as table creation and modification as well as all CRUD access to the database.
- It is recommended that you log into SQL Server Management Studio with this use to ensure that the login works correctly. If the user was created with the default settings for password policy, they will have to update their password. Alternately, uncheck Enforce Password policy in the create user dialog.
Running the Installer
- To run the main portion of the install, simply run JavelinSetup.msi. This will initiate a wizard to walk you through the installation process:
- Please read and accept the End-User License Agreement (below) and select the checkbox to confirm agreement, then press Next.
- Choose a Destination Folder for the Javelin Reporting Portal (see below) then click Next. By default, this will be a standard Program Files directory. Following installation, all binary, database and web application files are placed in this folder. This includes database creation archives and scripts if custom database installation is required outside of what the installer performs.
- Now enter your license key for the Javelin Reporting Portal, which you should have received when purchasing the product. Copy the key to the clipboard, select the default text and replace it by pasting into the setup dialog. Then click Next.
NOTE: The key is not validated until the Javelin server starts in IIS. If you enter the key incorrectly it can be fixed by editing Web.config in the Javelin deployment directory.
- The Javelin IIS Configuration dialog (below) installs the Javelin Reporting Portal into IIS as a new Website and Webapp.
You can customize the Site Name and WebApp name to suite your deployment needs. The new Website will then appear in the IIS Configuration Utility and can be managed from there. Here are the fields that are gathered by the Setup Utility for IIS:
- WebSite Name: the name of the WebSite as displayed in IIS
- WebAppName: the name of the WebApp in the new WebSite. This is normally the same as the WebSite name but is customizable if desired
- Port: the default HTTP port that the Javelin Reporting Portal will be accessible at.
- If there is a Default WebSite already configured, this should be set to a value other than 80. However, if the server will be dedicated to hosting Javelin, it should be configured as port 80 and any existing conflicting binding should be removed. This simplifies access to Javelin as the URL doesn’t need to specify a port when entered into a browser.
- Note that only the default page in Javelin is accessible via HTTP. All other resources are accessed via HTTPS (SSL). This additional binding must be configured following the completion of the installer and is detailed later on in this guide.
- Application Pool: this is the IIS application pool that is used to run the Javelin IIS Website. It can be named whatever you wish, and is configured automatically by the installer. Note that this does require that .NET 4.5 is installed and available to IIS.
- In the Javelin SQL Server Configuration window, enter the corresponding data for your SQL Server Instance.
This dialog allows customization of the SQL Server database that is used for the Javelin Reporting Portal. The installer will use these values to connect to a SQL Server instance, log in with the username and password specified, create the database and populate the database with required initial data.
The information gathered here is:
- SQLServer Instance: this specifies the hostname of the server and the server instance name on that server in the format servername\instancename. This is what appears in connection strings that are used to access the database. In some cases the instance name is empty.
- SQLServer Database Name: the name of the database to create and configure
- SQLServer Username: the username of the user that will be used to create, configure and run the SQL database used by Javelin. This user must have been created and given appropriate permissions prior to running the installer, and must be configured for SQL Authentication.
- SQLServer Password: the SQL Authentication password for the user
- Before the install, you will be reminded to perform some post installation operations that must be done by an IIS administrator once the installer has completed copying files, setting up the IIS website and configuring the database:
- Ready to Install Javelin. Once all required information has been entered, press the Install button to begin the installation portion of setup. You will be prompted to allow the installer permission to modify your computer, after which the installer will copy files, create the database and setup IIS.
I. Installation is complete! However, there are required additional steps needed before you can begin using Javelin Reporting Portal.
Connect to Javelin Reporting Portal Instance
After the installer completes, additional configuration is necessary in IIS. Open up the IIS Administrator Tool, and select the newly created Javelin Website as shown below using:
Control Panel > System and Security > Administrative Tools > Internet Information Services (IIS) Manager
- Binding to HTTPS. Since the Javelin Reporting Portal requires access via HTTPS (SSL), a binding to HTTPS needs to be configured for the website. This requires that an SSL certificate has been requested and installed to IIS and is available for configuring HTTPS bindings.
In the configuration panel for the Javelin Website (shown above), choose Bindings in the right pane. You will be presented with a dialog showing all of the port bindings – there should be a single HTTPS binding. Click to select the port, then press Edit.
- Edit Site Binding (see below). In the new window, choose an SSL certificate from the dropdown to use with this HTTPS binding, then exit out of the dialog.
- Note that the default SSL port (443) is shown here. If there is already another binding to port 443 in your IIS configuration, you can specify an alternate port either in the installer or in the edit dialog.
If you do not already have a certificate, follow the steps here to create a request to obtain one, and install it into IIS:
- Next, add appropriate permissions to the installation folder. In the IIS Manager window, right click on the newly installed website (in the left pane) and choose Edit Permissions. The Javelin Properties dialog appears.
Under the security tab, Select CREATOR/OWNER, the click Edit.
- In the new Group or user names window, select CREATOR/OWNER and click Add.
- In the new window, add a user named IIS_IUSRS from the local machine, which can be specified using the Locations button to choose the local server. Click Check Names before hitting OK to exit.
F. Now select the IIS_IUSRS user you just created, and ensure that they have Read and Write permissions. Choose OK to exit.
This step is necessary because most routing is done client-side. All requests that reach the server (except for file requests, and api or swagger requests) must simply respond with the client HTML/JS
- Close and re-open IIS Manager when install is finished
- Navigate to the website created for Javelin and select the “URL Rewrite” icon in the middle pane under the IIS section.
- Next, in the right pane, click “Add Rule(s)…”
- Select “Blank rule” under “Inbound rules” at the top, click Ok
- Give it any name (e.g. “rewrite all but api and swagger”)
- Make sure “Requested URL” is set to “Does Not Match the Pattern” and “Using” is set to “Regular Expressions”
- Enter the following pattern: “(api\/|swagger|.*\..*)”
- Under the “Action” section, set the Action type to “Rewrite” and set the Rewrite URL to “/” (a single forward slash).
- Click “Apply” on the right pane
H. Make sure that the Javelin Website is started by using the links on the right side of the administration panel.
Register and Log Into Javelin Reporting Portal
- At this point, you should be able to browse to the Javelin Reporting Portal application by clicking the Browse link in the configuration panel (right pane) of the IIS Manager. Either HTTP or HTTPS is fine for browsing to the Javelin start page.
- You will be taken to the login page of your Javelin Instance.
- In the URL, replace "login" with "register". This allows for a one time-only setup of the default admin user for Javelin Reporting Portal.
- Enter a username and password for this user.
- This is a one-time operation, after which the created user is the root admin user that can be used to create and administer all other users and features within Javelin.
You have completed the installation and registration for the Javelin Reporting Portal.
Common Problems and Solutions
At this point, you should have a fully installed and configured Javelin Reporting Portal. If not, here is a short list of possible problems and solutions for installation issues:
- The installer encountered an error – this generally occurs if there is an issue setting up the database. Confirm that all of the entries in the SQL Server Configuration dialog are correct.
- Make sure the server info is correct in the format server/instance. If you are unsure, consult your database administrator
- Ensure that the database server is reachable and is running
- Make sure the username and password are correct
- Make sure the database user has the correct permissions to create the database
- The Javelin website does not start:
- Ensure that IIS is enabled to use ASP.NET 4.x, and that the application pool is configured to use .NET 4.0
- If you receive an error like this: HTTP Error 500.21 - Internal Server Error Handler "ExtensionlessUrlHandler-Integrated-4.0" has a bad module "ManagedPipelineHandler" in its module list, the underlying problem is a misconfigured .NET stack. To repair, use a command similar to this for your version of .NET 4.x, using an elevated (admin) command prompt:
- C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -I
- Ensure that all required features are enabled for IIS as outlined above
- Ensure that the database is running
- Ensure that there are no conflicting port bindings – websites must be bound to unique ports
- Browsing to the Javelin Reporting Portal results in an error navigating to the page
- Ensure that you have created an HTTPS (SSL) binding
- Template or POD file upload errors
- Make sure that IIS_IUSRS has both Read and Write permissions on the install folder as outlined above