|Use Case Realizable with Stardust [message #1715809]
||Thu, 26 November 2015 12:02
| Timo Rohrberg
Registered: September 2011
I'm currently evaluating the Eclipse Stardust or Process Manager as a possible solution for a particular use case that I have at hand. However, after reading a lot of documentation and playing around a bit with the tutorials, I'm not quite sure anymore if the Process Manager is a reasonable solution for that use case. For that, I'm now posting here to maybe get some new inputs and suggestions how and where to continue the evaluation for making a well-informed decision about whether to use the Process Manager or not.
The situation is the following: We have a simple backend implemented on top of OSGi and running as a standalone process on a CentOS linux machine without an application, i.e. in headless mode. That backend uses EMF to model business entities and provides ReST interfaces to create, read, update, and delete instances of those entities. It persists those instances in a PostgreSQL database via an OSGi-based persistence service using Eclipse Teneo/Hibernate.
Currently the backend also provides the ability to create business reports using the Eclipse BIRT framework. For that it provides a dedicated ReST interface which clients can use to trigger the generation of a report. With that trigger, the client sends a description of the data to use for the report (e.g. personal data of this and that person, his/her medical records between a start date and an end data, etc.). The backend then aggregates the required data from the database and triggers the report generation in an embedded Eclipse BIRT runner. The report is then saved to the database where the user can access it via the ReST interfaces described in the previous section.
We would now like to sparate the reporting part of the backend from the rest (data access ReST services, persistence service, etc.) and put them into individual systems only connected via a ReST interface. We would then like to add another system with a workflow engine which will then handle all incoming requests from client and orchestrate the backend and the reporting system according to BPMN models. For one incoming request, the correct order might be to first access the backend and store some information about the request, and then create a report. For another request, the correct order might be to not save anything at all and just generate a report, and so on.
Since all our systems are going to be OSGi-based systems - currently just simple executables launching an OSGi framework with the bundles, and in the future probably based on Apache Karaf - it would make sense to base the workflow engine system on OSGi as well. However, to me it seems that Eclipse Process Manager is based on J2EE and requires a "real" application server. Am I wrong?
Is there furthermore any reasonable way to trigger the execution of workflows from incoming requests on a ReST interface that we defined?
Does anyone of you have any kind of hint for what to search for and how to continue the evaluation? I would really appriate any comment even if it leads to a discussion about the use case since I'm simply not sure if our approach to the Eclipse Process Manager is reasonable...
Thanks for any comment.
Powered by FUDForum
. Page generated in 0.01773 seconds