Project

General

Profile

Actions

TaxonomicEditorImplementation » History » Revision 9

« Previous | Revision 9/20 (diff) | Next »
Pepe Ciardelli, 03/27/2008 11:45 AM



Taxonomic Editor Implementation

This page is a technological overview of the implementation of the TaxonomicEditor.

A list of resources - tutorials, code snippets, etc. - can be found under EclipseRCPResources.

Technology

Eclipse Rich Client Platform (RCP) - the Java framework upon which the Taxonomic Editor will be built. It exposes to the developer the libraries for all graphic and interactive elements used within the Eclipse IDE. For more information, see the Eclipse website.

Important libraries of the RCP include:

  • org.eclipse.ui - the basic building blocks of an Eclipse UI - windows, views, menus, and toolbars - which are extended by the developer within the context of an Eclipse Plug-In Project

  • org.eclipse.swt - the Eclipse Standard Widget Toolkit, which provides GUI elements and basic layouts

  • org.eclipse.jface - helper classes for UI development, such as viewers; contains components for implementing an MVC framework

  • org.eclipse.ui.forms - offers a "Web-like", more modern look for SWT widgets, and puts font, headings, and colors in a managed form object that makes things like re-drawing all the elements on a page simpler. Also includes a nice master-detail framework used for the freetext-form implementation.

SWT Designer - a plug-in for the Eclipse IDE that provides a graphic, drag-and-drop interface for GUI development and rapid UI prototyping, as well as some support for data binding. We have purchased 10 academic licenses; if you are interested in using SWT Designer in the course of the project, please contact me at p.ciardelli@bgbm.org. For more information, visit the SWT Designer website

Technical requirements - Eclipse version 3.3.0 ("Equinox"), with Compiler Compliance (Windows -> Preferences -> Java -> Compiler) set to 5.0 and on-board Java Runtime Environment (Windows -> Preferences -> Java -> Installed JREs) set to 1.5. The settings ensure compliance with the CDM Java libraries.

Java Web Start

The Editor will be deployed on an individual user's desktop via [Java Web Start](http://java.sun.com/products/javawebstart/, which allows the remote launching of a Java application. The user clicks on a link to a JNLP) ("Java Network Launching Protocol") file describing application resources and launch specifications; for example, the JNLP file specifies whether the application can subsequently be executed offline. Clicking on the JNLP link causes the browser to start Web Start, which first checks whether the user has the appropriate JRE to run the application (1.5 in the Editor's case), installs the appropriate JRE as necessary on the user's machine, then downloads and launches the application.

On Windows machines, the application files for the Editor are by default saved to the user's directory, i.e. "C:\Documents and Settings\p.ciardelli\Application Data\taxeditor". The element of the JNLP file controls whether a shortcut is created on the desktop; after the initial download via the JNLP link, the user starts the Editor via the desktop shortcut. Before startup, the application checks with the remote site and downloads any updates to the codebase. Thus, the user experiences the Editor as a normal desktop application, but in the background, Web Start assures that it is always up to date.

Technical considerations

Note that all plug-ins must be signed since the application needs full permission from the client in order to run. To this end, we use the keytool application that comes with the JDK, via a keytool plugin to create a Java keystore (JKS).

The version of Eclipse used for development must run on a Java SDK instead of a JRE. If this constraint is not satisfied, the jar signing will fail. To run Eclipse under the Java SDK, go to Window ~~> Preferences -> Java -> Installed JREs. If no JDK is listed, click "Add ..." and enter the JDK home directory ~~ i.e. "C:\Programme\Java\jdk1.6.0_02" - under "JRE home directory". Then be sure the JDK entry has a check mark next to it before hitting "OK".

Deploying eclipse based application with Java Web Start

RCP and Java Web Start (3.1)

Updated by Pepe Ciardelli about 16 years ago · 9 revisions