<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Support for Throw/Catch intermediate events and others in Alfresco Archive</title>
    <link>https://connect.hyland.com/t5/alfresco-archive/support-for-throw-catch-intermediate-events-and-others/m-p/46157#M25847</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The Activiti Designer supports (at least tries to be equal) to what the Activiti Engine supports.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;So that's why there's a difference between the Modeler and the Designer.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;1. Which intermediate throw events are you looking for?&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;2. See 1.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;3. Right, but if you have a (catch or throw?) boundary error event on a task how would you throw or catch such a boundary event? You would need quite a bit of Java logic to do this. Maybe you can explain how you want to implement this kind of functionality.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Best regards,&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 06 Sep 2011 11:33:40 GMT</pubDate>
    <dc:creator>trademak</dc:creator>
    <dc:date>2011-09-06T11:33:40Z</dc:date>
    <item>
      <title>Support for Throw/Catch intermediate events and others</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/support-for-throw-catch-intermediate-events-and-others/m-p/46156#M25846</link>
      <description>Activiti designer (eclipse plug-in) supports way less BPMN2.0 constructs than Activiti modeler (signavio). A few crucial ones which I think are missing in Designer are :1) Intermediate throw events2) Intermediate catch events (*)3) Boundary error events on a task (but works on sub-processes and call</description>
      <pubDate>Tue, 06 Sep 2011 11:10:14 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/support-for-throw-catch-intermediate-events-and-others/m-p/46156#M25846</guid>
      <dc:creator>ogo</dc:creator>
      <dc:date>2011-09-06T11:10:14Z</dc:date>
    </item>
    <item>
      <title>Re: Support for Throw/Catch intermediate events and others</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/support-for-throw-catch-intermediate-events-and-others/m-p/46157#M25847</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The Activiti Designer supports (at least tries to be equal) to what the Activiti Engine supports.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;So that's why there's a difference between the Modeler and the Designer.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;1. Which intermediate throw events are you looking for?&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;2. See 1.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;3. Right, but if you have a (catch or throw?) boundary error event on a task how would you throw or catch such a boundary event? You would need quite a bit of Java logic to do this. Maybe you can explain how you want to implement this kind of functionality.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Best regards,&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 06 Sep 2011 11:33:40 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/support-for-throw-catch-intermediate-events-and-others/m-p/46157#M25847</guid>
      <dc:creator>trademak</dc:creator>
      <dc:date>2011-09-06T11:33:40Z</dc:date>
    </item>
    <item>
      <title>Re: Support for Throw/Catch intermediate events and others</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/support-for-throw-catch-intermediate-events-and-others/m-p/46158#M25848</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Tijs,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks for you reply. My perspective is purely adhering to proper BPMN 2.0 modeling and using the right patterns and constructs when it comes to dealing with exceptions (interrupting intermediate events, non interrupting intermediate events, error handling, escalation and potentially compensation).&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I know absolutely nothing about the activiti BP execution engine implementation and will not venture into that territory. Having said that, if the engine supports boundary error event for a call activity and also for a sub-process (designer does support it), why not for a Service Task for example?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Also, the only alternate path out of a Task is flowing to and End Event. Why not allow inserting additional steps before terminating the process with the end event? (which to me sort of equates to writing additional instructions in a java catch, but my views are probably simplistic).&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;As for intermediate throw and catch events, the basic message events would be great I think as they greatly improve the readability of BMPN diagrams (rather than using send and receive tasks).&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Ogo.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 06 Sep 2011 13:17:42 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/support-for-throw-catch-intermediate-events-and-others/m-p/46158#M25848</guid>
      <dc:creator>ogo</dc:creator>
      <dc:date>2011-09-06T13:17:42Z</dc:date>
    </item>
    <item>
      <title>Re: Support for Throw/Catch intermediate events and others</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/support-for-throw-catch-intermediate-events-and-others/m-p/46159#M25849</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi Ogo,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;If you look at it from a proper BPMN 2.0 modeling perspective I can certainly understand your issues.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Activiti tries to adhere to the BPMN 2.0 standard, but we don't aim to fully implement the BPMN 2.0 specification (as no other tool vendor really does).&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;The engine supports boundary error events on tasks but what would be the use case?&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Your comment about "the only alternate path out of a Task is flowing to an End Event" I don't understand. Maybe you can explain this?&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;The message event could indeed improve readability but doesn't add actual functionality to the Activiti Engine.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Best regards,&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 06 Sep 2011 13:42:08 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/support-for-throw-catch-intermediate-events-and-others/m-p/46159#M25849</guid>
      <dc:creator>trademak</dc:creator>
      <dc:date>2011-09-06T13:42:08Z</dc:date>
    </item>
    <item>
      <title>Re: Support for Throw/Catch intermediate events and others</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/support-for-throw-catch-intermediate-events-and-others/m-p/46160#M25850</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Tijs,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;When an activiti fails, it is good practice to use a boundary error event that starts an exception path, where in most cases you need to do a few things before terminating (like writing the catch of a java exception). See my modeler example where "Do This" fails and I need to "Do That Instead".&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;[attachment=1]boundary-err-event.png[/attachment]&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;With designer, you cannot use an error boundary event for a Task but you can create an alternate path to an End Event. See my design example "Do This First". It is currently not possible to insert anything between the "Do This First" and "End Event". That's what I meant with "&lt;/SPAN&gt;&lt;EM&gt;the only alternate path out of a Task is flowing to an End Event&lt;/EM&gt;&lt;SPAN&gt;".&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;(I wanted to make up for the impossibility of placing an error boundary event on a Task).&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Frankly, I do not even quite understand this possibility to exit the Task with just an End Event as it does not seem to match anything really useful in BPMN2.0 (in fact, strictly speaking, if a task has multiple exits, the meaning is that it's 2 parallel paths … which makes no sense if one path is simply an end event), or is the intent to represent an alternate path in case the task fails? (but if yes, why just an end event …)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;[attachment=0]end-event.png[/attachment]&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;ogo&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 06 Sep 2011 15:24:14 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/support-for-throw-catch-intermediate-events-and-others/m-p/46160#M25850</guid>
      <dc:creator>ogo</dc:creator>
      <dc:date>2011-09-06T15:24:14Z</dc:date>
    </item>
    <item>
      <title>Re: Support for Throw/Catch intermediate events and others</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/support-for-throw-catch-intermediate-events-and-others/m-p/46161#M25851</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I understand what you're saying, but it's not correct that you can't model anything else than an end event.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;You can add a new sequence flow to a task and just add another task or another BPMN 2.0 construct if you like.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;There are no restrictions there. &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Best regards,&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 06 Sep 2011 15:41:42 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/support-for-throw-catch-intermediate-events-and-others/m-p/46161#M25851</guid>
      <dc:creator>trademak</dc:creator>
      <dc:date>2011-09-06T15:41:42Z</dc:date>
    </item>
    <item>
      <title>Re: Support for Throw/Catch intermediate events and others</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/support-for-throw-catch-intermediate-events-and-others/m-p/46162#M25852</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Right, you can create a parallel path with something that is not an end event…&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Also, going back to one of my original questions :&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Why allow boundary error events on Call Activities or Sub-Processes and not on Tasks ? You had asked me "what is the use case" ? but the use case is that anything can fail, whether it be a Service Task, a Call Activity or a Sub-Process.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;or maybe I do not understand the definition of "Service Task". Are you defining it as something that cannot fail ?&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 06 Sep 2011 16:04:47 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/support-for-throw-catch-intermediate-events-and-others/m-p/46162#M25852</guid>
      <dc:creator>ogo</dc:creator>
      <dc:date>2011-09-06T16:04:47Z</dc:date>
    </item>
    <item>
      <title>Re: Support for Throw/Catch intermediate events and others</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/support-for-throw-catch-intermediate-events-and-others/m-p/46163#M25853</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;On tasks it makes no sense within the Activiti Engine.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;A user task can't fail. What would be the use case of a user task failing?&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;For a service task it makes more sense, but within Activiti this is handled in another way.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;A service task is mainly a Java service task which means that you can implement logic to choose one of the outgoing sequence flows based on the processing in the Java service task.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;So you can catch a particular exception and choose the appropriate outgoing sequence flow. Another option would be to set a process variable to a specific value and use an exclusive gateway to choose the appropriate path, which also can be an error end event. But an error end event can only be caught on an embedded sub process or a call activity.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Best regards,&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 07 Sep 2011 06:41:43 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/support-for-throw-catch-intermediate-events-and-others/m-p/46163#M25853</guid>
      <dc:creator>trademak</dc:creator>
      <dc:date>2011-09-07T06:41:43Z</dc:date>
    </item>
    <item>
      <title>Re: Support for Throw/Catch intermediate events and others</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/support-for-throw-catch-intermediate-events-and-others/m-p/46164#M25854</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;hi i have a similar question. I want to implement a holiday request and approve process. he user who requests Holiday has to ask one replacement for each Projects he works on. The replacements have to decide if they have time to that or not.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;[img]&lt;/SPAN&gt;&lt;A href="http://i.stack.imgur.com/Gdhbw.jpg" rel="nofollow noopener noreferrer"&gt;http://i.stack.imgur.com/Gdhbw.jpg&lt;/A&gt;&lt;SPAN&gt;[/img]&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Example:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;user 1 requests hoiday an Needs 2 users as replacements.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;user 2 declines the request because he is busy. So user 1 has to choose another replacement instead.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;user 3 approves the request.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;The Problem is now, that if user 2 declines the request the usertask for user 3 is gone because the subprocess is interrupted. Is there a way to implement what iam looking for?&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 26 Mar 2015 12:19:11 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/support-for-throw-catch-intermediate-events-and-others/m-p/46164#M25854</guid>
      <dc:creator>intercept1r</dc:creator>
      <dc:date>2015-03-26T12:19:11Z</dc:date>
    </item>
    <item>
      <title>Re: Support for Throw/Catch intermediate events and others</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/support-for-throw-catch-intermediate-events-and-others/m-p/46165#M25855</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;So the easiest would be if you can wait for all the users to respond. In that case, you can add logic after the subprocess that checks the responses and goes back if needed.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;But if that's not possible, I would add a new task for the first user after it's declinded, specific to handle the case of the one user rejecting.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 31 Mar 2015 08:10:39 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/support-for-throw-catch-intermediate-events-and-others/m-p/46165#M25855</guid>
      <dc:creator>jbarrez</dc:creator>
      <dc:date>2015-03-31T08:10:39Z</dc:date>
    </item>
    <item>
      <title>Re: Support for Throw/Catch intermediate events and others</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/support-for-throw-catch-intermediate-events-and-others/m-p/46166#M25856</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Thanks for your reply. &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;waiting for all users to respond is not an option.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I have one Problem by handling the decline in the subprocess. The "handling" process would be a usertask and the whole subprocess again. Because if the first holiday replacement declines and you choose another one that mabybe declines again, and again….&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I need a way to create such a handle process. Do you have any Ideas?&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 10 Apr 2015 10:39:51 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/support-for-throw-catch-intermediate-events-and-others/m-p/46166#M25856</guid>
      <dc:creator>intercept1r</dc:creator>
      <dc:date>2015-04-10T10:39:51Z</dc:date>
    </item>
    <item>
      <title>Re: Support for Throw/Catch intermediate events and others</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/support-for-throw-catch-intermediate-events-and-others/m-p/46167#M25857</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;After thinking about the Subprocess and your answer i figured out that you are right jbarrez. The solution ist to add a new task for the first user within the subprocess. &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Thank you very much!&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;intercept1r&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Apr 2015 14:04:03 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/support-for-throw-catch-intermediate-events-and-others/m-p/46167#M25857</guid>
      <dc:creator>intercept1r</dc:creator>
      <dc:date>2015-04-11T14:04:03Z</dc:date>
    </item>
  </channel>
</rss>

