1. How do I check which version of Java is currently installed?

  1. The Verify Java VersionExternal Web Site Policy web site will detect which version you are using.
  2. If you do not have the required version, install the latest one from the Free Java DownloadExternal Web Site Policy site.

2. Can I move the executable file on my desktop?

No, the Windows executable file must stay in its original location. A shortcut to that executable file can be created and moved to the desktop by right clicking the file, selecting "Create Shortcut" and moving that shortcut on the desktop.

3. Can I install different versions of SEER*Abs on the same computer?

Yes, different versions of SEER*Abs can be installed on the same computer; they just need to be installed into different folders. Different SEER*Abs installations (from different folders) can run concurrently, but there can be only one instance of a specific installation running at any given time. If you have a previous version in the folder “/seerabs_1_0” and install a new version in the folder “/seerabs_2_0”, the application can be run from “/seerabs_1_0” and from “/seerabs_2_0” concurrently. But, you cannot run the program from “/seerabs_1_0” and then try to start the application again from “/seerabs_1_0”.

4. Can different people use the same version of SEER*Abs on the same computer?

Yes, as long as they do not use the application at the same time (for example, on a shared network). The application supports one administrator (user with extra privileges) and any number of regular users. Note that all users are saved in the application's main database, which is located in the "/db" folder under the installation folder. If other versions of the application are installed on the same computer, the other versions will not share the same list of users since each version has its own installation folder and main database.

5. Can SEER*Abs be used from a shared network?

SEER*Abs can be installed on a network and used by several people as long as they do not use it at the same time. Trying to start an instance of the application that has already been started by another use will result in an error message in the login dialog.

6. My laptops require different configuration. How can I do that?

It is sometimes useful to have different configurations for different laptops (for example, one set of old laptops can run with 1024 x 768 screen resolution and a set of new laptops can run in a higher resolution). Each laptop has its own configuration so this can be easily achieved. There are different ways of organizing this configuration:

  1. Maintain individual configurations on each laptop. This can be tedious if there are many laptops; any change to the configuration will have to be repeated on each laptop requiring the same configuration.
  2. Configure one laptop for each type of configuration. Once the configuration is complete and tested, copy the entire configuration folder ("/conf" under the installation folder) to the other laptops requiring the same configuration type.
  3. Maintain two different application directories on a central desktop (or a shared network). For example, the first installation folder could be called "SEER*Abs Low Res" and the other could be called "SEER*Abs High Res". Work on each configuration separately. Once they are ready and tested, copy the entire configuration folder from the required installation folder to each laptop that needs it. This copying process can be done with a simple mouse click through a batch file or some other similar script.

7. Loading data into the worklist seems slow, how can I optimize it?

Any column of the table can be configured to run a Groovy script when displaying its values. For example, this is useful to display social security numbers as "999-99-9999" instead of "999999999". Many other coding rules can be applied through this mechanism. It may be tempting to code every column of the table to format the data nicely, but all that code comes with a price. If you add a row to a table with 10 columns and each column has an associated script, 10 scripts will run for that row and for any other row. If many rows are loaded into the table, there will be a noticeable difference in load time.

To solve this, reduce the number of scripts and either show unformatted values in the table, or format them with the synchronization scripts instead of the column script. For example, when loading social security numbers for patients in the reference data, instead of loading "999999999" and letting the table format each value to show "999-99-9999", the loading script could reformat the value and save the formatted value in the SEER*Abs database. This will use more resources during the synchronization process (a process that is rarely run), but less resources every time the data is displayed in the table.

8. What database types are supported when synchronizing SEER*Abs with a Central Registry Data Management System?

While the standard SEER*Abs installation only has built-in support for Oracle, any type of database can be supported. There are two requirements to support a new database type:

  1. The drivers need to be available to the application. Typically the Java drivers are freely available on the official site of the database. They are usually provided as a single archive file (jar file). To make the drivers available to SEER*Abs, just copy the jar file to the "lib/drivers/" folder under the installation folder (the shipped Oracle drivers should already be in that folder).
  2. After starting the application, go to the global configuration file and provide the connection URL for any connection that should be available (there is no restriction on the number of connections defined in the global configuration file: you could define two connections to an Oracle database, three to a PostgreSQL database and one to a MySQL database, all available together in the same SEER*Abs instance). The format of the URL depends on the type of the database and the version of the drivers. Information on that format is usually found where you download the drivers. For example, the format to connect to an Oracle database is usually "jdbc:oracle:thin:@host:1521:sid".

9. SEER*Abs randomly freezes or hangs. What should I do?

First make sure that a bad configuration or a script is not causing the application to freeze. If you suspect a script is involved, add "env.utils.log" to the beginning and end of the script and check the log to make sure it is returning successfully.

If you determine it is not a configuration or script issue, then it is most likely related to the graphic card. The graphical user interface (GUI) part of Java, Swing, uses hardware acceleration based on the graphic card's drivers. That mechanism is known to cause some issues on particular setups (mainly 32-bit Windows). To solve the issue, Swing provides some flags that control the amount of acceleration. Those flags should be added to the SEER*Abs .ini file (seerabs.l4j.ini).

If you suspect the problem is related to the graphic card, please try adding the following flags to the. ini file. Test them one-by-one in the order listed; if they do not work individually, they probably won't work together either:


An exhaustive list of the flags and their meaning is available in the System Properties for Java 2DTM TechnologyExternal Web Site Policy