How to use and set up the TouchUpWeb Server
Note: these contents are not stable, because they are based on software currently under development.
Software requirements
You need the following software to run the TouchUpWeb Server. Please confirm that these software are installed in your system before the TouchUpWeb installation. If the software is not installed or its version is older, prepare the newer versions of software environment noted below.
- JDK 1.5.0_06
- Tomcat 5.5
- MySQL 4.1
- MySQL Connector/J (JDBC driver)
Environment setting
Before the TouchUpWeb system installation, JDK1.5 and Tomcat 5.5 need to be installed and configured to run in the right way. You need set environment variables JAVA_HOME, CATALINA_HOME, and PATH properly. MySQL has to be configured using UTF-8 for its character code.
First, create a databese in MySQL beforehand. (In the following explanation, the database is tuwdb, for example. And user tuw_user is supposed to have privilege access account for the database with password tuw_password.) Do not forget to install the JDBC driver. You can download Source and Binaries (tar.gz) of MySQL Connector/J from mysql.com. Unpack the file, and put the extracted jar file into $CATALINA_HOME/common/lib directory.
Deployment of the server application
Deploy TouchUpWeb Server application into Tomcat environment.
Put TouchUpWeb.war file into $CATALINA_HOME/webapps directory.
Create the file touchupweb-users.xml, in which you have to describe the information of users who operate TouchUpWeb Server. This file is located in $CATALINA_HOME/conf directory. Here is an example of this file.
<?xml version='1.0' encoding='utf-8'?>
<tomcat-users>
<role rolename="install"/>
<role rolename="tobsrv"/>
<role rolename="tadmin"/>
<user username="yamada" password="xxxxx" roles="tadmin,tobsrv,install"/>
</tomcat-users>
Next, modify the file $CATALINA_HOME/conf/server.xml. Give a description of the following text into <GlobalNamingResouces> element in server.xml, as the configuration of a new account and role.
<Resource
auth="Container"
description="User database for TouchUpWeb System"
name="TouchUpWebAdminDB"
type="org.apache.catalina.UserDatabase"
pathname="conf/touchupweb-users.xml"
factory="org.apache.catalina.users.MemoryUserDatabaseFactory"/>
Copy the following text into the area inside of <Host> element (just before the </Host> tag) of $CATALINA_HOME/conf/server.xml, for configuring the server context.
<Context
path="/TouchUpWeb"
reloadable="true">
<Realm className="org.apache.catalina.realm.UserDatabaseRealm"
resourceName="TouchUpWebAdminDB"/>
<Resource
name="jdbc/bugs"
type="javax.sql.DataSource"
password="tuw_password"
driverClassName="com.mysql.jdbc.Driver"
maxIdle="2"
maxWait="5000"
username="tuw_user"
url="jdbc:mysql://localhost/tuwdb"
maxActive="4"/>
</Context>
In the <Resource> element, which is a child element of <Context>, replace following properties to be suited for your environment.
| url | message strings for the tuwdb database in MySQL | (shown here as jdbc:mysql://localhost/tuwdb) |
|---|---|---|
| username | user of tuwdb database | (shown here as tuw_user) |
| password | password for the user | (shown here as tuw_password) |
Reboot Tomcat and try to access this URL. If login screen comes up, the deployment and configuration of TouchUpWeb Server application has finished successfully.
http://localhost:8080/TouchUpWeb/install/index.jsf

Server installation
Log in to the TouchUpWeb system from the system-install-log-in screen as a user who can play "install" role, configured in touchupweb-users.xml file. After the user's log in, you will see the following screen.

You can select the server type, master system or slave system, at this moment. Typically, it would be better to install a slave type server system, under the assumption that the slave server is fed with TouchUp information from the master database operated by Mozilla Japan. When you would like to operate an independent system, you must install a master type server in your closed network. In this installation process, the required tables are created in the database.

Set up a TouchUp information reference server (if you use a slave server)
To manage TouchUp information and to maintain TouchUpWeb Server, you have to access the system via the following URL (for management use):
http://localhost:8080/TouchUpWeb/system/index.jsf
After the system log in, you will see the following screen comes up.

When you run the system as a slave type server, the TouchUp information reference server should be configured with the Reception configuration menu. The slave server is able to use up-to-date information by downloading TouchUp information managed at the master server. In order to check the arrival of new data, the slave server periodically polls the master server.
Next is the Reception configuration screen.

You can set the URL of the upstream TouchUpWeb Server, the reception timing, etc.
Registration of TouchUp information
It is possible to check the new TouchUp information into the master system type TouchUpWeb Server. Registration of the new TouchUp information is not available for the slave type server, because the data ID is managed only on the database in the master server.
You can register the TouchUp information with the menu Registration of TouchUp information. After the log in from the system management URL, and clicking Registration of TouchUp information menu, you will see the next screen.

You can register the new TouchUp information using this interface. The details of TouchUp information are as follows:
| Field | Desctiption | Note |
|---|---|---|
| Category | Type of the problem | Multi-select OK |
| Severity | Sevirity of the problem | Select from ignorable, correctable and uncorrectable |
| Registrant | Registrant of the information | Mail address |
| Updator | Updator of the information | Mail address |
| Browser Info | Browser version used for the test | Multi-select OK |
| Script file | Register the script file to correct the problem | Upload the local file and register into the database |
Multiple selection is allowed for Category and Browser Information. To register these items, click Select button for each field. The next screen is the item selection interface.

You can select the appropriate items. Click items by pressing the control key, to enable multiple selection. When you would like to use a new item, it is possible to create a new one using the function adding new category at the bottom of this interface.
After the all fields are filled with data, click the Register button. The new information will be registered.
Searching TouchUp information, updating and removal
You can search the TouchUp information with the menu Search for TouchUp information. After the log in from the system management URL, and clicking Search for TouchUp information menu, you will see the next screen.

Users enter the search condition at this screen. For the several items, you can use a search condition selection screen by clicking the Select button. The search result are displayed as follows.
In order to confirm the details of the search result, you have to click Update. Of course, you can modify the information using this data update interface. Clicking Remove causes data removal.


Uninstall the server
When you would like to upgrade TouchUpWeb Server to a newer version, you must shut down and uninstall the TouchUpWeb system before reinstallation of the newer version. (Data migration is not supported in the current version.)
You can uninstall TouchUpWeb Server application as follows:
- Shut down Tomcat.
- Remove TouchUpWeb.war, which is deployed at $CATALINA_HOME/webapps.
- Remove .java directory at the home directory of the user who runs Tomcat.
- Drop tables of tuwdb database in the following order.
drop table if exists TUW_CAT_SCR_MAP;
drop table if exists TUW_BRW_SCR_MAP;
drop table if exists TUW_PTN_SCR_MAP;
drop table if exists TUW_UPDATER_MAP;
drop table if exists TUW_DIST_HIST;
drop table if exists TUW_SEND_HIST;
drop table if exists TUW_RECV_HIST;
drop table if exists TUW_SCRIPT;
drop table if exists TUW_USER;
drop table if exists TUW_CATEGORY;
drop table if exists TUW_BROWSER;
drop table if exists TUW_PATTERN;
drop table if exists TUW_SITE;
drop table if exists TUW_FEEDBACK;