Announcement Announcement Module
Collapse
No announcement yet.
spring-integration-activiti usecase Page Title Module
Move Remove Collapse
X
Conversation Detail Module
Collapse
  • Filter
  • Time
  • Show
Clear All
new posts

  • spring-integration-activiti usecase

    Hi, I'm interested in spring-integration-activiti.

    In sandbox, there is an outbound adapter that implements the Process Manager pattern used to 'trigger' the execution of a new business process instance.

    But in many case, process definitions may include human tasks, and these human tasks may be implemented as an another spring based java application.

    so IMHO, I think outbound adapter/gateway for claiming or completing task, listing tasks or users will be useful.
    activiti-mule integration have these functions. Why Spring Integaration hasn't? :-)

    Is there any planning towards developing these functions?

  • #2
    Hi there,

    funny that you should mention the outdated part.. I've *just* updated it to reflect Activiti 2.7 and to provide a namespace.

    The Spring Integration Activiti code doesn't seek to wrap, or hide, the task management stuff ...it doesn't feel right to write an adapter that simply does service#claim(String role) when you could as easily inject that service in your Spring code and call it yourself. Human task management's something that you should worry about at the interaction level, in your web framework, for example, not in your asynchronous, messaging-centric business logic. Spring Integration doesn't provide a remote API for the Activiti stuff, so it doesn't seem like there's a lot of value in a special adapter just to do that stuff (basically, instead of calling ProcessEngine#foo(), you'd be sending a message to an adapter, which would then call ProcessEngine#foo(), which is silly).

    Task management's something that you're going to want to control -e.g., a task may or may not complete. It may complete in ten minutes, or you may have to unclaim a task. All of these things would be a bit odd if you had to send a message just to achieve all of that when you could simply call the appropriate method.

    If you really feel like an adapter-centric, messaging-centric approach to doing things like retrieving a user list makes sense, I'd love to understand your use case a little better. It could be that I have missed something obvious...

    Comment


    • #3
      Hi, Josh. Thanks for reply.

      > I've *just* updated it to reflect Activiti 2.7 and to provide a namespace.

      Wow! I will check it out.

      > The Spring Integration Activiti code doesn't seek to wrap, or hide, the task management stuff ...it doesn't feel right to write an adapter that simply does service#claim(String role)
      > when you could as easily inject that service in your Spring code and call it yourself.

      That make sense. understood. Thanks again.

      Comment


      • #4
        Hoi Josh,

        i did use my own @ServiceActivator to trigger a process,
        however i am keen to use spring-integration-activiti,

        using activiti 5.8 , for a service task : is it now org.activiti.engine.impl.bpmn.behavior.ReceiveTask ActivityBehavior
        which AsyncActivityBehaviorMessagingGateway should extend ?

        on ActivitiOutboundChannelAdapter:84:startProcessInst anceByKey: should it be the procName variable ?
        using remote.origin.url git://git.springsource.org/spring-integration/spring-integration.git

        Comment


        • #5
          spring-integration-activiti-2.0.xsd

          Hi Josh,

          I got the OutboundAdapterTest and GatewayTest working with activiti 5.8 (some minor package modifications),
          however i can't get the namespace editor to recognize it : sts 2.6.1 : wildcard is strict but no declaration for ..

          do you have a any suggestion ?

          Thx,

          Comment

          Working...
          X