Usages

Lightweight Web Application Container

Chameleon can be used to host web applications. Thanks to OSGi and the services offered by Chameleon, these applications exhibit a high degree of modularity, making them extendible and evolutionary. These types of web apps rely on web technologies such as JSON, ATOM and JavaScript.

Applications like these require Chameleon services such as:

  • json-service
  • internationalization-service
  • syndication-service
  • session-service
  • rose (json-rpc)

Communication Server

Chameleon is also used to build communication servers. A communication server is a gateway collecting data from field devices, processing them and sending them to an enterprise server (JEE). A communication server must be flexible and extensible in order to manage new devices, as well as remotely configurable.

These applications require Chameleon components such as:

  • json-service
  • naming-service
  • syndication-service
  • jboss communication stack
  • jms bridge

Desktop Client

Chameleon is also heavily used to create desktop clients in a modular way. The UI is implemented either with Swing or with Web technologies such as HTML 5 (akquinet ChameRIA). The resulting desktop clients are highly modular and enforce a clear distinction between the view, the controller and the models. The application maintainability benefits greatly from the modularity offered and enforced by Chameleon and OSGi.