Hi Marc,<br><br>You're welcome. I've attached it to the other mail before. Here it is again...<br><br>Rgds<br>David<br><br>-----------------<br>readme.txt<br>######################################################<br>
## opencmsmodule-com.bearingpoint.opencms.workflow2 ##<br>## BearingPoint Infonova, 2007                      ##<br>######################################################<br><br>BearingPoint OpenCms Workflow2 Module<br>----------------------------------------------------------------
<br>This module extends OpenCms by adding basic workflow related<br>features as:<br><br>     - Definition of worklow states (defined as common <br>         OpenCms projects)     <br>     - Assignment of VFS resources to specific workflow states
<br>     - Integrated user/role management    <br>     - Additional Interfaces for attaching a workflow engine<br> <br>The Workflow2 module works by overlapping several OpenCms projects.<br>Each of these projects represents one workflow state:
<br><br>       project "Offline", assigned to root folder  <br>       project "REVIEW", assigned to root folder<br>       project "APPROVAL", assigned to root folder<br><br>As you see the Workflow2 module you can simply create n-eye workflow 
<br>mechanisms.<br><br>When creating a new resource in e.g. project one it's also visible <br>from project two. Indeed OpenCms is showing an icon that the resource<br>belongs to project1, but the main functionalities (context menu) are
<br>also available from the other projects. <br><br>This packages is solving that issue by adding certain behaviours and<br>rules. The transformation to other workflow states is done by moving <br>resources between the projects. 
<br>    <br>When attaching a workflow engine like JBPM following additional <br>features are available:<br><br>     - Assignment of Tasks to VFS resources<br>     - Dedicated task view<br><br>For details see chapter "Workflow Engine Interface".
<br><br><br>System Requirements<br>----------------------------------------------------------------<br><br>    - OpenCms 7.0.2 or later<br>    - bearingpoint commons modules:<br>        opencmsmodule-com.bearingpoint.opencms.commons
 <br>        opencmsmodule-com.bearingpoint.opencms.commons.springmanager<br>        <br>    <br>Installation<br>----------------------------------------------------------------<br><br>1. Build the workflow2 module<br>2. Deploy to OpenCms via module import mechanism
<br>3. Create a database where to store the workflow states.<br>4. Declare your new database inside the workflow2 spring configuration:<br>       a) Inside the OpenCms workbench switch to the root ("/") view<br>
       b) Edit /system/modules/com.bearingpoint.opencms.workflow2/config/spring/DataSource.xml<br>       c) Configure the database connection section (URL, user, password):<br>       <br>          <bean id="workflow.dataSource
" <br>                  class="org.springframework.jdbc.datasource.DriverManagerDataSource"><br><br>            <property name="driverClassName"><value>com.mysql.jdbc.Driver</value></property>
<br>            <property name="url"><value>jdbc:mysql://localhost:3306/workflow2?useServerPrepStmts=false&amp;jdbcCompliantTruncation=false</value></property><br>            <property name="username"><value>root</value></property>
<br>            <property name="password"><value>rootx</value></property><br>          </bean><br>       <br>       d) In some cases you also have to change the Hibernate settings within
<br>          this file (Especially when you are using an database other than MySQL)<br>       e) Save and quit the editor. Publish the VFS resource.<br>       <br>5. Configure the opencms-workplace.xml for new context menu entries to approve/reject resources
<br>   respectively to create tasks if an workflow engine is attached. Inside the folder <patches><br>   you can find an example opencms-workplace.xml. There is also a patch to modify your OpenCms<br>   sources within Eclipse. If you have a zipped OpenCms distrubution and/or a customized 
<br>   workplace configuration it is recommended to do it manually:<br>   <br>       a) To approve/reject resources/task this packages offers a new context menu entry.<br>          To add the context menu action you have to add following definiton to your
<br>          workplace-config.xml:<br>          <br>            <!-- WORKFLOW2 ITEM --><br>            <entry key="GUI_EXPLORER_CONTEXT_COPYTOPROJECT_0" uri="commons/movetoproject.jsp" rule="movetoproject"/>
<br>          <br>          Note: Unfortunately workflow for folder doesn't work at the moment. For that <br>          reason bypass the entry at the folder-section.<br>          <br>          b) The workflow2 packages introduces a new menu item rule (MIR) which is called
<br>          <br>                  "com.bearingpoint.opencms.workflow2.cms.CmsMirPrBelongsToOtherInvisible"    <br>                  <br>                This rule deactives the regarding context menu items if the refering resource 
<br>                doesn't belong to the current project.  <br>                <br>                For example this type of rule would be <br>                applied to the "Publish" functionality if the current user is just an author
<br>                and no publisher.                                <br>                 <br>                Insert the new rule at the menu rules section:<br>                <br>                  <menurule name="movetoproject">
<br>              <menuitemrule class="com.bearingpoint.opencms.workflow2.cms.CmsMirPrBelongsToOtherInvisible" /><br>            </menurule><br>                 <br>              c) Furthermore all other context menu actions should not be available if the
<br>                 resource belongs to another project. For that reason we have to insert the<br>                 "CmsMirPrBelongsToOtherInvisible" rule to all menu rule definitions <br>                 (note: it has to be at the first position if there are other MIRs).
<br>                 <br>6. Restart your OpenCms Server<br><br><br>Configuration<br>----------------------------------------------------------------<br><br>As an example workflow we create three workflow stages:<br>    * Authoring (Default offline project)
<br>    * Review<br>    * Approval<br><br>Each workflow stage needs a related OpenCms project. <br>This means you have to move to the OpenCms Administration View<br>and create those projects. Afterwards the Workflow has to be 
<br>defined:<br><br>1. Inside the CMS administration select workflow2 --> Show Project Flow<br>2. Here you click "New Workflow Stage"<br>3. Select Project "Authoring" and stage 0. Confirm by clicking Ok.
<br>4. Go on the same way with the other projects. The stage number represents<br>   the position of the project within flow.<br>5. When you are finished you should have following configuration:<br><br>Offline  ---->  Review   ---->  Approval
<br>Stage 0           Stage 1         Stage 2<br><br>6. Now you can start pushing resources between the projects.<br>   Just right-click on a resource within the explorer view and<br>   select "Approve/Reject".<br>
   <br>   Note: It's recommended that the resource is unlocked when you<br>   are moving it.       <br><br><br>Workflow Engine Interface<br>----------------------------------------------------------------<br><br>Task functionalities are just available if an 3rd party 
<br>workflow engine or an self implmented engine is attached.<br><br>To attach a third party workflow engine (e.g. JBoss JBPM) <br>the workflow2 module provides an interface to be implemented:<br><br>    com.bearingpoint.opencms.workflow2.engine.I_WorkflowEngine.java
<br><br>The implementation of that interface should contain simple delegation<br>methods to the engine.<br><br>2. Add the Workflow Engine Beans declaration to your spring-config.xml<br>   a) Inside the OpenCms workbench switch to the root ("/") view
<br>   b) Edit /system/modules/com.bearingpoint.opencms.workflow2/config/spring/spring-config.xml<br>   c) Add following line to the other Spring Config Locations:<br>   <br>      <SpringConfigFileLocation>opencms:WorkflowEngineBeans.xml
</SpringConfigFileLocation><br><br>   d) Save & Exit editor + publish VFS resource.<br>3. Set the correct Workflow Engine Connector Class:<br>   a) Inside the OpenCms workbench switch to the root ("/") view
<br>   b) Edit /system/modules/com.bearingpoint.opencms.workflow2/config/spring/WorkflowEngineBeans.xml.xml<br>   c) Update the class attribute with your desired class file:<br>   <br>        <bean id="workflow.workflowEngine
"<br>           class="com.bearingpoint.opencms.workflow2.engine.jbpm.JBPMEngineFacade"><br>        </bean><br>   d) Save & Exit editor + publish VFS resource.<br>4. Restart OpenCms Server<br><br>
FAQ<br>----------------------------------------------------------------<br>Q: When importing any of these OpenCms Modules I receive an error<br>   message like "Caused by: com.mysql.jdbc.PacketTooBigException: <br>   Packet for query is too large (1980691 > 1048576)."
<br><br>A: The packet size of your database is to small! =) For example in <br>   case of an MySQL database you have to change this value inside<br>   the my.ini file. E.g. insert "max_allowed_packet = 16M" at the end
<br>   of your MySQL configuration.<br>--<br><br>Q: When switching to the Workflow2 Administration Panel I get an <br>   error message saying: "java.lang.NullPointerException<br>    at com.bearingpoint.opencms.commons.springmanager.SpringManager
<br>        .getBean(SpringManager.java:160)" <br>        or "ERROR initializing SpringManager: Error creating bean.."<br>        <br>A: Possibly the configuration for your Workflow Engine connector is <br>
   not valid respectively the configured class file is not available.<br>   If you don't have any engine implementation you have to avoid the <br>   loading of your engine bean definition (!) inside the spring-config.xml
<br>   For details see chapter "Workflow Engine Interface".<br><br>  <br>Legal / License<br>----------------------------------------------------------------<br>This package is distributed under the LGPL and without any 
<br>warranty. For details see license.txt<br><br>Contact<br>----------------------------------------------------------------<br>If you have any concerns, questions or contributions contact<br>me at "david.trattnig (at) gmail (dot) com"
<br><br><br><br><div class="gmail_quote">On Nov 28, 2007 8:55 PM, Marc Fiévet <<a href="mailto:marc@fievet.be">marc@fievet.be</a>> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">






<div>
<div><span><font color="#0000ff" face="Arial" size="2">Hi,</font></span></div>
<div><span><font color="#0000ff" face="Arial" size="2"></font></span> </div>
<div><span><font color="#0000ff" face="Arial" size="2">Thanks 
for you clear explanations but, in attachment I dont's see a readme.txt. I 
only see opencms-workplace.xml and 
opencms7_workplace-patch_workflow2.txt</font></span></div>
<div><span><font color="#0000ff" face="Arial" size="2"></font></span> </div>
<div><span><font color="#0000ff" face="Arial" size="2">Kind 
regards,</font></span></div>
<div><span><font color="#0000ff" face="Arial" size="2">MARC</font></span></div>
<blockquote dir="ltr" style="margin-right: 0px;">
  <div></div>
  <div dir="ltr" align="left" lang="fr"><font face="Tahoma" size="2"><div class="Ih2E3d">-----Message d'origine-----<br><b>De :</b> 
  <a href="mailto:opencms-dev-bounces@opencms.org" target="_blank">opencms-dev-bounces@opencms.org</a> [mailto:<a href="mailto:opencms-dev-bounces@opencms.org" target="_blank">opencms-dev-bounces@opencms.org</a>] <b>De 
  la part de</b> David Trattnig<br></div><b>Envoyé :</b> mercredi 28 novembre 
  2007 9:29<div class="Ih2E3d"><br><b>À :</b> The OpenCms mailing list<br></div><b>Objet :</b> 
  Re: [opencms-dev] RE : New OpenCms 7 Workflow 
  Module<br><br></font></div><div><div></div><div class="Wj3C7c">Another note: If you don't want to customize the 
  opencms-workplace.xml manually the modified one can be found in the patches 
  folder inside SVN. I've also attached it plus an eclipse patch file.<br><br>If 
  anything is unclear just ask ;-) <br><br>cheers<br>david<br><br><br>
  <div class="gmail_quote">On Nov 28, 2007 9:16 AM, David Trattnig <<a href="mailto:david.trattnig@gmail.com" target="_blank">david.trattnig@gmail.com</a>> 
  wrote:<br>
  <blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">Right, 
    installation is nearly as simple:<br><br>1) import following 
    modules:<br>     bearingpoint commons (<a href="http://downloads.sourceforge.net/bp-cms-commons/com.bearingpoint.opencms.commons_0.9.5.zip?use_mirror=heanet" target="_blank"> 
    http://downloads.sourceforge.net/bp-cms-commons/com.bearingpoint.opencms.commons_0.9.5.zip?use_mirror=heanet</a>)<br>     
    bearingpoint commons springmanager (<a href="http://downloads.sourceforge.net/bp-cms-commons/com.bearingpoint.opencms.commons.springmanager_0.9.5.zip?use_mirror=heanet" target="_blank"> 
    http://downloads.sourceforge.net/bp-cms-commons/com.bearingpoint.opencms.commons.springmanager_0.9.5.zip?use_mirror=heanet</a>)<br>     
    bearingpoint workflow2 (<a href="http://downloads.sourceforge.net/bp-cms-commons/com.bearingpoint.opencms.workflow2_0.3.8.zip?use_mirror=osdn" target="_blank"> 
    http://downloads.sourceforge.net/bp-cms-commons/com.bearingpoint.opencms.workflow2_0.3.8.zip?use_mirror=osdn</a>)<br><br>2) 
    set your database URL/user/password for workflow related things (--> see 
    attached readme.txt), if the target database doesn't exist you have to 
    create it. <br><br>3) add some context menu entries to your 
    "opencms-workplace.xml" or replace with the provided one (--> see 
    attached readme.txt)<br><br>4) restart your tomcat / OpenCms 
    server<br><br>all framework libraries as Spring, Hibernate and so on are 
    included. <br><br>rgds<br>david
    <div>
    <div></div>
    <div><br><br><br>
    <div class="gmail_quote">On Nov 27, 2007 8:18 PM, Marc Fiévet <<a href="mailto:marc@fievet.be" target="_blank">marc@fievet.be</a>> wrote:<br>
    <blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
      <div>
      <div><span><font color="#0000ff" face="Arial" size="2">Hi 
      list,</font></span></div>
      <div><span><font color="#0000ff" face="Arial" size="2"></font></span> </div>
      <div><span><font color="#0000ff" face="Arial" size="2">The installation is 
      managed by the import/ module function? Any other file / Framework is 
      mandatory to use it?</font></span></div>
      <div><span><font color="#0000ff" face="Arial" size="2"></font></span> </div>
      <div><span><font color="#0000ff" face="Arial" size="2">Thanks 
      </font></span></div>
      <div><span><font color="#0000ff" face="Arial" size="2"></font></span> </div>
      <div><span><font color="#0000ff" face="Arial" size="2">Regards</font></span></div>
      <div><span><font color="#0000ff" face="Arial" size="2">MARC</font></span></div>
      <blockquote style="margin-right: 0px;">
        <div></div>
        <div dir="ltr" align="left" lang="fr"><font face="Tahoma" size="2">-----Message 
        d'origine-----<br><b>De :</b> <a href="mailto:opencms-dev-bounces@opencms.org" target="_blank">opencms-dev-bounces@opencms.org</a> [mailto:<a href="mailto:opencms-dev-bounces@opencms.org" target="_blank">opencms-dev-bounces@opencms.org
</a>] <b>De la part de</b> 
        David Trattnig<br><b>Envoyé :</b> mardi 27 novembre 2007 
        9:38<br><b>À :</b> The OpenCms mailing list<br><b>Objet :</b> 
        Re: [opencms-dev] New OpenCms 7 Workflow Module<br><br></font></div>
        <div>
        <div></div>
        <div>Okay :) Here you go - Featurelist:<br><br>* Administration panel 
        for setting up workflows: Workflows are defined as a specific order of 
        OpenCms projects. So you can easily configure 4 to N eyes workflows 
        within OpenCms. The main advantage of this implementation is that it 
        utilizes exiting OpenCms functionalities. <br><br>* Within the OpenCms 
        Explorer you can move resources between the projects with a new context 
        menu entry "Approve/Reject" which means changing the workflow state. 
        Here the different projects (workflow states) should be overlapping. So 
        you can see within e.g. workflow state "Offline" which resources are in 
        e.g workflow state/project "Review" but you can't edit them until you 
        switch to project "Review". Precondition is that you have the proper 
        rights for this project. <br><br>* This is another pro: As the OpenCms 
        Groups/Permissions can be applied to projects they are also affecting 
        workflow states.<br><br>* By using the Project List functionalities 
        within the OpenCms administration panel you can get a quick overview 
        which resources are in an specific workflow state. <br><br>* The module 
        offers a Java Interface for implementing a connection to your favourite 
        workflow engine. For example I'm using it to access JBPM. If you have 
        implemented this interface you can attach it to the workflow module via 
        a given Spring configuration file. From now on the workflow module 
        features are extended by an Taskview (GUI not finished yet) inside the 
        OpenCms view dropdown box (Explorer / Administration / Tasks). This 
        taskview lists all personal task / your groups tasks. In case of an 
        Administrator it lists all available tasks. <br><br>* Events: It's 
        possible to catch workflow state change events.<br><br>As I have not 
        much time at the moment I can't give details on development plans. But 
        bugs should be fixed as soon as possible and I'm open for improvement 
        discussions. For a list of things which would be nice for a final 
        release check out the " todo.txt" within the 
        SVN.<br><br>Cheers,<br>David<br><br>
        <div class="gmail_quote">On Nov 26, 2007 6:03 PM, Roedel, Mark <<a href="mailto:MarkRoedel@letu.edu" target="_blank">MarkRoedel@letu.edu</a>> wrote:<br>
        <blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
          <div link="blue" vlink="purple" lang="EN-US">
          <div>
          <p><span style="font-size: 11pt; color: rgb(31, 73, 125);">Congratulations on the 
          release!  Is there anything you'd like to tell us about its 
          features, capabilities, your goals for development, etc.?</span></p>
          <p><span style="font-size: 11pt; color: rgb(31, 73, 125);"></span> </p>
          <p><span style="font-size: 11pt; color: rgb(31, 73, 125);">--</span></p>
          <p><span style="font-size: 11pt; color: rgb(31, 73, 125);">Mark 
          Roedel</span></p>
          <p><span style="font-size: 11pt; color: rgb(31, 73, 125);">Senior 
          Programmer / Analyst</span></p>
          <p><span style="font-size: 11pt; color: rgb(31, 73, 125);">LeTourneau 
          University</span></p>
          <p><span style="font-size: 11pt; color: rgb(31, 73, 125);"></span> </p>
          <p><span style="font-size: 11pt; color: rgb(31, 73, 125);"></span> </p>
          <div style="border-style: solid none none; border-color: rgb(181, 196, 223) -moz-use-text-color -moz-use-text-color; border-width: 1pt medium medium; padding: 3pt 0in 0in;">
          <p><b><span style="font-size: 10pt;">From:</span></b><span style="font-size: 10pt;"> <a href="mailto:opencms-dev-bounces@opencms.org" target="_blank">opencms-dev-bounces@opencms.org</a> [mailto:<a href="mailto:opencms-dev-bounces@opencms.org" target="_blank">
 
          opencms-dev-bounces@opencms.org</a>] <b>On Behalf Of </b>David 
          Trattnig<br><b>Sent:</b> Monday, November 26, 2007 7:59 
          AM<br><b>To:</b> The OpenCms mailing list<br><b>Subject:</b> 
          [opencms-dev] New OpenCms 7 Workflow Module</span></p></div>
          <div>
          <div></div>
          <div>
          <p> </p>
          <p>Here you can find the first release of my OpenCms Workflow 
          package:<br><a href="https://sourceforge.net/project/showfiles.php?group_id=180314&package_id=245006&release_id=557034" target="_blank">https://sourceforge.net/project/showfiles.php?group_id=180314&package_id=245006&release_id=557034 
          </a><br clear="all"><br>cheers<br>David<br><br></p></div></div></div></div><br><br>_______________________________________________<br>This 
          mail is sent to you from the opencms-dev mailing list<br>To change 
          your list options, or to unsubscribe from the list, please visit<br><a href="http://lists.opencms.org/mailman/listinfo/opencms-dev" target="_blank">http://lists.opencms.org/mailman/listinfo/opencms-dev</a><br></blockquote>
</div><br><br clear="all"></div></div></blockquote></div><br><br>_______________________________________________<br>This 
      mail is sent to you from the opencms-dev mailing list<br>To change your 
      list options, or to unsubscribe from the list, please visit<br><a href="http://lists.opencms.org/mailman/listinfo/opencms-dev" target="_blank">http://lists.opencms.org/mailman/listinfo/opencms-dev</a><br></blockquote>
</div><br><br clear="all"><br></div></div></blockquote></div></div></div></blockquote></div>
<br><br>_______________________________________________<br>This mail is sent to you from the opencms-dev mailing list<br>To change your list options, or to unsubscribe from the list, please visit<br><a href="http://lists.opencms.org/mailman/listinfo/opencms-dev" target="_blank">
http://lists.opencms.org/mailman/listinfo/opencms-dev</a><br></blockquote></div><br><br clear="all"><br>-- <br>David Trattnig<br><br>tel   | +43 650 8855388<br>w1  | <a href="http://www.bearingpoint.com">www.bearingpoint.com
</a><br>w2  | <a href="http://www.bitfusion.org">www.bitfusion.org</a><br>px   | <a href="http://www.flickr.com/photos/david-trattnig">www.flickr.com/photos/david-trattnig</a>