2 Replies Latest reply on Jan 24, 2007 8:36 PM by dslevine

    anyone define swimlanes externally (DB, shared xml, etc?)


      Has anyone defined swimlanes externally to the process definition? (Does that even make sense?) I have many workflows that involve the same swimlanes, and right now I am cutting and pasting the XML into each process, which is not the idea situation for many reasons, the most obvious of which is that if I need to make a change I have to go through every file to do it.

      But, I am not sure what the appropriate "other way" would be. Swimlanes do need to be associated with a specific version of a process definition, but maybe instead of defining the swimlanes in the process definition xml just the reference to a swimlanes definition file (new concept) could be in the process definition xml and the jbpm engine could process it when it loads the process definition from the XML (into memory or into the DB).

      Any thoughts on the pros/cons of this or other methods to achieve this end?

        • 1. Re: anyone define swimlanes externally (DB, shared xml, etc?
          Alejandro Guizar Master

          Well, you can always use XML entity expansion and achieve what you want in a simple way.

          Otherwise we'd have to introduce something "above" the process definition, be it a process definition group or a repository. I reckon a typical project has multiple process definitions, which will probably have common actions, swimlanes, etc. However, this is definitely not a simple addition.

          On the other hand, entity expansion does exactly what you state in the second paragraph: the process definition document references an external swimlanes document entity. Upon deployment, the XML parser expands the swimlanes entity. To jBPM, this looks exactly like the swimlanes were in the process definition document.

          • 2. Re: anyone define swimlanes externally (DB, shared xml, etc?

            That seems like the perfect solution, and I just wasn't aware of that XML parsing functionality. I'll test it out. Thanks Alex!