Hello, Please help me with your advice regarding Camel's possibilities for implementing the following scenario:
1) There is a subsystem based on jBPM and JBoss AS, which is hosting various business processes 2) Facade of Stateless EJB is being currently used for implementing Service Activator pattern - instantiating the necessary business process upon request 3) Things are getting really complicated and effort-consuming - manual coding of the mediation and activation logic resulted in a huge and fragile pile of the hardcoded sequences 4) I'm currently evaluating Apache Camel for the needs of implementing a certain Process Activation Framework - infrastructure for a clean and generic approach to instantiating the business processes based on the following input criteria: -- Invoked service -- Invoked method of this service -- Passed arguments (payload values) -- Returned result of the invoked method All these 4 items can influence the choice of business processes to instantiate, so basically our pipeline of "routers" and "activators" will have 4 input parameters for making the corresponding decisions. 5) Another important comment - API should provide both synchronous and asynchronous invocation options. For now I've come up with the following architecture: 1. Activation will be arranged as a pipeline of processors 2. Main target of the activation pipeline - to create a special signature of the business process, which will be later used for instantiation needs. Signatures are mapped to the business process names. 3. Every processor in the pipeline will handle one specific input parameter (4 parameters as a total) 4. Result of the processor invocation - signature part (4 parts as a total), which will be also used by the pipeline-level router for invoking the next processor. Every processor will be mapped as the handler for a certain set of signature parts. 5. In the end of pipeline we will have a full signature of the business process - 4 signature parts obtained after the invocation of 4 processors. I guess Camel has all the necessary infrastructure in place for such kind of mediation, routing and activation needs. Right? For now I'm looking closer to Pipes&Filters pattern implemented in Camel... seems to be the appropriate pattern. At the same time - I'm bothered with the big amount of resulting "routing paths" caused by 4 input parameters mentioned above (especially parameter #3)... It may become another hell in the nearest future, when the amount of routing options will keep growing. Maybe Camel has a very simple solution for this case? And all my above descriptions are worth nothing comparing to this possible lightweight and straightforward solution from Camel? Many thanks in advance. Regards, Oleg -- View this message in context: http://www.nabble.com/Process-Activation-Framework-tp25460546p25460546.html Sent from the Camel - Users mailing list archive at Nabble.com.
