Geomajas Technical Overview

This overview aims to provide clarity concerning Geomajas' techincal specifications. The image below shows the archtectural design from version 1.6.0 and higher:

 

Modular design

Since version 1.6.0, Geomajas has been redesigned into a modular system. This has a few advantages over the previous all-in-one package, such as easier extensibility, but it also makes Geomajas easier to learn.

On the backend there are a few core modules, such as "geomajas-api" and "geomajas-impl". Geomajas-api provides the most important interfaces to which other modules connect, and on which the "geomajas-impl" module has been built. On the image above, all serverside API fields can be found in the "geomajas-api" module.

On top of the core modules, Geomajas has extra Layer plug-ins, that provide support for different types of geospatial data, and extension plug-ins, that add new functionality to the Geomajas core.

For more information, visit the "architecture" chapter in the documentation.

Server

All data retrieval and manipulation is done by the backend. This means that the features you see on the map, or in an attribute table, were first of all retrieved by one of the LayerModels, and then sent to the client. If this data needs some manipulation (transforming to another coordinate system, or automatic simplification, or ...) it will always be done on the server. This will relieve the browser of having to manipulate complex geometrical objects, thus increasing performance.

Client

On the client-side, Geomajas provides a set of widgets and interfaces which form the essential building blocks for GIS applications. These widgets are presented in either AJAX (using Dojo) or GWT (work in progress). For both technologies, Geomajas has implemented a "face".

These faces also have a server-side to them, as they must also implement client-server communication, but on the client-side they present the same widgets, with the same interfaces.

Supported Platfoms

  • JDK 5.0 and higher (JSE and J2EE)
  • Internet Explorer 6.0 and higher, Mozilla Firefox 2.0 and 3.0, Google Chrome, Safari
  • Runs on Windows, Linux, Unix, Mac
  • Eclipse Development Environment

 

Geomajas - Quick Reference

Want to get to know Geomajas? Follow these links to get an overview of all technical and functional specifications.