/seamserver

Releasing SEAMLESS project source code (2009) for public re-use

Primary LanguageJavaOtherNOASSERTION

-------------------------------------------------------------------------------
SEAMLESS GROMIT | Version: 1.3.0                         Release: April 2, 2010
-------------------------------------------------------------------------------
Copyright (c) 2009, The SEAMLESS Association. Please see the included license
files for LEGAL statements and disclaimers. It can also be obtained from the
website: http://www.seamlessassociation.org.
-------------------------------------------------------------------------------

1. Introduction

This is the source code for the SEAMLESS GROMIT module. "Gromit" is the server
part of the SEAMLESS-IF web application. The client part is named "Wallace",
and is written in Adobe Flex. Gromit provides Wallace with access to the
SEAMLESS database. It uses the seamfaces (Java data classes generated from the
ontology) and Hibernate to exchange data with the database. A set of transfer
objects in Java and Actionscript (mostly generated by a code generator) are 
used to exchange data with the web client running in a browser. Transmitting
data between server and client is done using Adobe BlazeDS and the AMF format
for performance reasons. Gromit also uses Spring Framework functionality for
dependency injection, AOP, database connections, servlets, etc.

2. Remarks for this version

This component is fully functional. However take note that it is the result of
the SEAMLESS IP research project and not developed as production or mission
critical quality software. Many aspects can certainly be improved.Some major
updating/refactoring is already in progress, which includes renaming of the 
packages from org.seamless_ip to org.seamless_if. This matches the step from 
the initial EU Integrated Project (ip) to the current SEAMLESS Association.
In the future all packages should start with org.seamless_if.

A rewrite of the job scheduler components for automated running of model
chains is also in progress. Most of the code is finished and available in the
services.scheduler package, but further testing and implementation needs to 
be done.

3. Available packages

- org.seamless_if.services
	WORK IN PROGRESS: Scheduler service for automated running of model chains.

- org.seamless_ip.core
	Core utility classes used in the component e.g. for creating copies of
	objects in the database.

- org.seamless_ip.services.dao
	Collection of Data Access Objects, both interfaces and implementations.
	Follows the general Data Access Object design pattern. The DAO classes
	access the database to store and retrieve information packaged in the
	transfer objects (simple Java data classes).
	
- org.seamless_ip.services.transferobjects
	Java data classes (mostly produced by a code generator) used by the DAO
	classes in the communication with the web client.
	
4. Building
This component and its source code is provided as an Eclipse (3.5) compatible
project, including all referenced libraries, project settings files and
classpath definition. It should be no problem to get started building and
using this library in the Eclipse IDE. An Ant build.xml file is also included
for building the source code. To create documentation from the source code
please run javadoc.
-------------------------------------------------------------------------------