Documentation for JIRA 4.2. Documentation for other versions of JIRA is available too.
These instructions will help you install JIRA on IBM Websphere 6.x.
On this page:
A new directory containing JIRA will be created, hereafter referred to as $JIRA_INSTALL
.
$ sudo /usr/sbin/useradd --create-home --home-dir /usr/local/jira --shell /bin/bash jira
To maximise security, ensure that this user can only write to the JIRA directories (not to the entire file system).
The edit-webapp/WEB-INF/classes/entityengine.xml
file needs to be modified to specify the correct database field type. The example below is configured for MS SQL Server.
"/env"
if it is there, i.e. change this:
<transaction-factory class="org.ofbiz.core.entity.transaction.JNDIFactory"> <user-transaction-jndi jndi-server-name="default" jndi-name="java:comp/env/UserTransaction"/> <transaction-manager-jndi jndi-server-name="default" jndi-name="java:comp/env/UserTransaction"/> </transaction-factory>
<transaction-factory class="org.ofbiz.core.entity.transaction.JNDIFactory"> <user-transaction-jndi jndi-server-name="default" jndi-name="java:comp/UserTransaction"/> <transaction-manager-jndi jndi-server-name="default" jndi-name="java:comp/UserTransaction"/> </transaction-factory>
jndi-jdbc/jndi-name
attribute has the "java:comp/env"
prefix. The prefix should be in the file by default.
<datasource name="defaultDS" field-type-name="mssql" helper-class="org.ofbiz.core.entity.GenericHelperDAO" check-on-start="true" use-foreign-keys="false" use-foreign-key-indices="false" check-fks-on-start="false" check-fk-indices-on-start="false" add-missing-on-start="true"> <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/> </datasource>
Warning
Make sure that your entityengine.xml
is well-formed XML. Websphere "swallows" the error messages you should get in your log file if entityengine.xml is not well-formed, and instead reports a spurious error message.
You can test that your entityengine.xml
is well-formed by opening it in Internet Explorer or Firefox. These browsers will display an error if the file is not well-formed XML, and will indicate the location of the error in the file.
jira-application.properties
file (see the JIRA Installation Directory page to find where this file is located), add a 'jira.home' property and set it to your desired location for the JIRA home directory. Please use forward-slashes ("/"), not back-slashes ("\").Please note that you cannot use the same JIRA home directory for multiple instances of JIRA. We recommend that you do not specify your JIRA home directory to be inside your installation directory, to prevent information from being accidentally lost during major operations (e.g. backing up and restoring instances).
Edit webapp/WEB-INF/web.xml
file and remove lines:
<!-- Uncomment for WebSphere Uncomment for WebSphere -->
which appear towards the bottom of the file. After removing the lines the <resource-ref>
entry should look like:
<!-- resource references --> <resource-ref> <description>Database for JIRA</description> <res-ref-name>jdbc/JiraDS</res-ref-name> <res-type>javax.sql.DataSource</res-type> <res-auth>SERVLET</res-auth> <res-sharing-scope>Unshareable</res-sharing-scope> </resource-ref>
Please ensure that the res-sharing-scope
is set to Unshareable.
Now build JIRA by running the build script for your platform (e.g. build.bat
on Windows or build.sh
on a Unix or Linux system). This will produce the deployable WAR file in the dist-generic
directory.
Perform the following steps in the Websphere Administration Console.
Click Resources -> JDBC Providers
, and create a new JDBC Provider for the database you wish to deploy to.
Consult your database documentation for details.
Now select your newly created JDBC Provider, and add a DataSource (the name of the DataSource doesn't matter).
The important thing to get right here is the JNDI Name. This must be the same as that specified in your webapp. For JIRA, that means it has to correspond to:
<jndi-jdbc jndi-server-name="default" jndi-name="jdbc/JiraDS"/>
in WEB-INF/classes/entityengine.xml.
In the 'Custom Properties' section, specify the username and password which JIRA will use to connect to the database, and the JDBC URL to use.
Test the connection, and if it all works, save the changes.
The JIRA WAR file can now be deployed to Websphere (by e.g. using Websphere's Administration Console). Note that you must:
jdbc/JiraDS
datasource to Websphere's jdbc/JiraDS
entry.dist-generic
directory and NOT the dist-tomcat
directory.mail.mime.decodeparameters=true
Refer to Setting Properties and Options on Startup for instructions.
To ensure that Websphere compiles JSPs in Java 1.5 successfully, you must:
ibm-web-ext.xmi
bindings file located within the WEB-INF
directory of your Websphere Application Server's WAR file.<WAS-HOME>/profiles/AppSrv01/config/cells/<cellname>/applications/<jira-appname>/deployments/<jira-appname.war>/WEB-INF/ibm-web-ext.xmi
<jspAttributes xmi:id="JSPAttribute_[number]" name="jdkSourceLevel" value="15"/>
[number]
must be a unique integer with respect to the other <jspAttributes xmi:id="JSPAttribute_[number]"...
entries in this file.
ibm-web-ext.xmi
bindings file.For more information, please refer to the following references:
When you access the path at which you have deployed JIRA, via your web browser, the Setup Wizard should appear.
Have experiences to share with Websphere 6.x and JIRA? We welcome your thoughts. Please see the user-contributed Websphere notes.