One of the most important advantages of the Imixs Workflow Engine is the fact that Imixs Workflow is based on the Java Enterprise Plattform (Java EE). A Java EE application server can handle transactions, security, scalability, concurrency and management of the components that are deployed to it. So all the features and characteristic from the Java EE plattform are also part of Imixs Workflow. Here are some examples:
The Imixs workflow Engine is absolutly database independend. The persistence of a process instances is based on the Java Persistence API (JPA). This is the reason wy you did not need to install a specific database. You did not need to start any SQL Scripts to initalize a Database. You can run the Imixs Workflow on any database system. The Imixs JEE Workflow automatically connects to that database you have configured in your application server environment and the application server cares about initalizing the database and mapping a process instance to the database schema.
PROCESS INSTANCE ACL
The Imixs workflow supports a sperate Access Control List (ACL) for each process instance. This means that access can be controled for each running process instance by the Imixs Workflow Manager. So security is one of the core features of Imixs Workflow. The Implementation is based onJava Authentication and Authorization Service (JAAS) which is part of the Java EE specification. This means that you can secure Imixs Workflow with any authentication and authorization framework integrated in your server environment. You can choose different types of LDAP directories (like OpenLDAP or Microsoft AD) and also database centric directories providing User, Password and Role informations. But you can also use any Java EE specific security mechanism like JSR-196 to secure your Imixs BPM application.
NO WEB GUI
The Imixs Workflow provides business logic and not the way a business process is represented to the end user. So you can use any web framework and any Web 2.0 technology providing a user frontend (UI). The Imixs JSF-Tools project provides a Workflow Controller which can be used to implement a Web GUI based on Java Server Faces (JSF) 1.2 or 2.0. These powerful framework is supported by a lot of commercial software vendors and also open source projects. So you are fee do design your web application with the framework which best fits your requirements. The Imixs Project did not squeeze you in a specific technology.
SCALABILITY AND TRANSACTION
The Imixs JEE Workflow is implemented using the EJB 3.0 specification. And so the Imixs JEE Workflow fulfills all the requirements to a scalable, transactional and robust BPM Platform. Transaction is fully controlled by the Java EE application server. There are no restrictions in the architecture or transaction level. The scalability is also extremely hight as you can build a sever environment with out any restrictions in clustering and load balancing. Any Java EE 5 or Java EE 6 application server architecture is fully supported.
WEB SERVICE INTERFACES
The Imixs XML and Web Service Projects provides standardized interfaces to external infrastructure or legacy applications. The XML and Web Service interfaces are also based on Java EE specifications like the JAXB, JAX-REST and JAX-WS Frameworks. The project provides REST Services and SOAP Web Services. This guaranties that you are not restricted in connecting your workflow application to any external system or run into a situation were your data is not highly inter operable.
Imixs Workflow is a BPM Solution integrates into the Java EE specification and supports a lot of APIs like JDBC, RMI, e-mail, JMS, web services, XML, etc. As there are no proprietary frameworks used in the implementation you can run the Imixs Workflow System on any Java Enterprise platform like Glassfish, JBoss, Geronimo, etc. Supporting the Java EE spec guaranties the scalability, and robustness of BPM applications .
Take a closer look int the technical details when you decide for a BPM solution.