API
The IX JEE Workflow Components constis of different layers which fullfill the requriements on a scaleable, transactional, robust and simple deployable Workflow Management System. The layers are build on top of the JEE Specificationrequires J2SE 1.5 (also referred to as "Java 5") or higher, and makes use of the new Java language features such as annotations and generics
The Imixs IX JEE Workflow Implementation is divided into two layers.
- Persistence Layer - to store workitems into a database
- Service Layer - supports workflow API

Persistence Layer
The Persistence layer encapsulate the persistences stuff to create, update and access document centric data objects. The Layer consists of a set of Entity EJBs and makes use of the Java Persistence API (JPA) to store these data objects into a Database. The goal of this layer is to provide a Generice Persitence Data Object (GPDO) and methods to create update and read this data. The layer includes functionality for indexing, secure and query data objects.
The Class org.imixs.workflow.jee.ejb.Entity is the core entity EJB in this layer. This entity EJB can store any serializable data into Data Fields. So this Data object is very flexible to use. If an index is defined to a Data field these data objects are accessible through the Entity Query Language EQL. Additional to this flexible data persistence and query functionality there is also a security behavior implemented. Each dataobject can be secured by the definition of individual read and write access fields. So this feature prevents a dataobject for unauthorized access.
All this stuff is provided by the staeless session Bean org.imixs.workflow.jee.ejb.EntityPersitenceManager
Service Layer
The Service Layer supports an easy way to access the Generic Persistence Data Objects through a Service Interface. This Service Interface hides the details of the Entity EJB and JPA Implementations and uses teh Generic Data Transfer Object (GDTO) Class org.imixs.workflow.ItemCollection.
Additional the Service Layer supports a full featured Workflow Manager based on the JEE Specification. All the Services are provided by by stateless Session EJBs and also a Web Service Interface.
