The Java EE Workflow Engine

Imixs-Workflow provides a powerful, scalable and transactional workflow engine for Java Enterprise Applications.

Model your Business Process with BPMN

Read more....


Run your Workflows on a Microservice

Read more....

Scalability and Resilience of Business Applications

Requirements for a business application can vary widely, depending on the nature of the underlying business process. A transactional business process for example can be processed within seconds. On the other hand a human based workflow can take days, weeks or even months to be completed. Under these circumstances a workflow engine needs to be scalable, efficiently and resilient in managing the business data for a long running business process.

To accomplish these requirements, we decided to build Imixs-Workflow on top of a standardized and open technology.

One of the strengths of Imixs-Workflow is the fact that the workflow engine it is based on the Java Enterprise Platform (Java EE). A Java application server (e.g JBoss, Wildfly, GlassFish) handles transactions, security, scalability, and concurrency. All these features and characteristics are also part of Imixs-Workflow. For that reason Imixs-Workflow fits perfectly into a modern software environment and can be deployed as a self contained service also into a distributed microservice architecture.

The Advantage of the Java EE Platform

Database independence

The Imixs-Workflow Engine is 100% database independent. The persistence of a process instance is based on the Java Persistence API (JPA). For that reason there is no dependency for a specific database. Imixs-Workflow automatically connects to the database you have configured in your application server environment. The database schema is generated automatically during deployment.

Security

The Imixs Workflow engine supports a separate Access Control List (ACL) for each process instance. The access can be controlled based on the workflow model. The Implementation is based on Java Authentication and Authorization Service (JAAS) which is part of the Java EE specification. Any authentication and authorization framework supported by your application server environment can be integrated.

Scalability and Transaction

The Imixs-Workflow engine is implemented based on the EJB specification. The different service layers fulfilling all the requirements to a scalable, transactional and robust BPM solution. Transactions are fully controlled by the Java EE application server and there are no restrictions in the architecture or transaction level. So Imixs-Workflow provides a high level scalability and you can build a server environment without any restrictions in architecture.

Rest Service API

Imixs-Workflow provides a Rest Service API to connect to the workflow engine on a standardized interface. The XML and Web Service interfaces are based on the Java EE specifications JAXB, JAX-REST and JAX-WS. Through the Rest Service API Imixs-Workflow allows an easy integration into existing applications and frameworks. There are no restrictions in connecting your workflow application to any other service or application environment.

Read more about the Imixs-Workflow engine

back

Components

Imixs Workflow integrates into the Java EE specification and supports a lot of APIs and standardized technologies.

  • Database independence
  • Java Persistence API
    • 1.0 supported
    • 2.0 supported
    • Eclipselink
  • Authentication and Authorization Service
    • JAAS support
    • Process Instance ACL
  • Scalability and Transaction
  • EJB support
    • EJB 3.0
    • EJB 3.1
    • Timer Service supported
  • XML and Web Service Support
    • JAXB
    • JAX-REST
    • JAX-WS