...uses cutting-edge technologies for the rapid development of secure multi-lingual applications with dynamic data structures.
Where does it come from?

Managing and operating on hierarchical data structures is an issue in many projects, alongside with security concerns, versioning and querying. To date neither open nor closed source projects or frameworks offer possibilities to dynamically define and manipulate the structure of hierarchical data in a scope like [fleXive] does. Existing Java content repositories do not support operating on structured hierarchical data. JPA-like approaches offer little flexibilty when data structures change, no out-of-the-box security layer or support multilingual content. Hence the urge to provide a solution that combines flexibility, security and performance in one customizable package - a highly customizable content repository and (JSF-based) web components to support creating your own applications with little effort.

[fleXive] Overview

The [fleXive] content repository (or "core") concentrates on enterprise-scale content modeling, storage and retrieval, and includes comprehensive JSF support for displaying and manipulating these contents in (web) applications. The runtime environment can be included in existing JavaEE applications, but you can also build new applications and package them into stand-alone JavaEE applications.

Our emphasis lies on the runtime environment, so if you are looking e.g. for tool-driven JSF development, take a look at the popular JBoss Seam framework and embed the [fleXive] runtime environment in that project.

Technical Overview

[fleXive] is a comprehensive JavaEE 5 content repository based on EJB3 technology and a supplementing JSF component library. It is based on current Java enterprise technologies and focuses on flexibility and extensibility.

The core of the [fleXive] content repository is a collection of EJB3 beans that offer services such as content creation and retrieval, search queries and the definition of data structures. The client is usually a web application or another EJB3 based application that extends or embeds [fleXive] functionality. With the upcoming 3.1 release [fleXive] will also be able to serve CMIS clients.

The [fleXive] content repository is based on the following EJB engines:

  • The content engine implements the persistency layer that is used to create, update and delete [fleXive] contents. It is supported by an extensive security layer that offers fine-grained permission controls for all contents managed by [fleXive].
  • The content engine is supplemented by the search engine to search for contents in a SQL-like query language and in a CMIS compatible SQL dialect.
  • The structure engine is responsible for creating and editing the dynamic data structures used by the content engine.
  • The tree engine provides a scalable implementation for organizing contents in a hierarchical tree structure.
  • Further engines extend the basic functionality: the scripting engine allows to fire user-defined code for almost any event in the content engine, user management provides access to the user directory, the workflow engine implements workflows for content instances, and the configuration engine stores user preferences and system configuration parameters.
Latest Standards

Relying on latest JavaEE standards, [fleXive] ensures easy integration and interaction with Java enterprise software and frameworks. [fleXive] key technologies use and support:

  • Java 5+
  • EJB 3.0+
  • JSF 1.2 (with preliminary support for JSF 2.0) / Facelets / Ajax4JSF / RichFaces / Yahoo! User Interface (YUI)
  • Runs on popular JavaEE 5 Open Source and commercial Application Servers (JBoss, Glassfish, Geronimo, WebLogic, etc.)
  • Use JSR-223 compatible Scripting Languages like Groovy, JRuby or Rhino if running on Java 6 (on Java 5 only Groovy is supported)