JBoss Tools SVN: r4865 - trunk/jbpm/docs/reference/en/modules.
by jbosstools-commits@lists.jboss.org
Author: ochikvina
Date: 2007-11-13 04:12:24 -0500 (Tue, 13 Nov 2007)
New Revision: 4865
Added:
trunk/jbpm/docs/reference/en/modules/Quick_Howto_Guide.xml
trunk/jbpm/docs/reference/en/modules/Test_Drive_Proc.xml
trunk/jbpm/docs/reference/en/modules/The_JBoss_jBPM_Int_Mech.xml
Log:
http://jira.jboss.com/jira/browse/RHDS-288 - converting chapter into xml file
Added: trunk/jbpm/docs/reference/en/modules/Quick_Howto_Guide.xml
===================================================================
--- trunk/jbpm/docs/reference/en/modules/Quick_Howto_Guide.xml (rev 0)
+++ trunk/jbpm/docs/reference/en/modules/Quick_Howto_Guide.xml 2007-11-13 09:12:24 UTC (rev 4865)
@@ -0,0 +1,57 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<chapter id="Quick_Howto_Guide" xreflabel="Quick_Howto_Guide">
+ <?dbhtml filename="Tutorial.html"?>
+ <chapterinfo>
+ <keywordset>
+ <keyword>jBPM</keyword>
+ <keyword/>
+ <keyword/>
+ <keyword/>
+ <keyword/>
+ </keywordset>
+ </chapterinfo>
+ <title>Quick Howto Guide</title>
+
+ <section>
+ <title>Change the Default Core jBPM Installation</title>
+
+ <para> You can change the default jBPM installation by means of the Eclipse preference
+ mechanism. Open the Preferences dialog by selecting
+ 'Window->Preferences' and select the 'JBoss jBPM'
+ category (???). Using this page you can add multiple jBPM installation locations and
+ change the default one. The default installation is used for the classpath settings when
+ creating a new Process Project. Changing the preferences has no influence on already
+ created projects. Getting rid of a jBPM installation that's being referenced by a
+ project however will cause the classpath to contain errors. </para>
+
+
+ <figure>
+ <title>The jBPM Preferences Page</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/Quick_Howto_Guide/defaltImage.png" scalefit="1"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </section>
+
+ <section>
+ <title>Configuring Task Nodes</title>
+
+ <para> You can add tasks to task nodes and then configure these last ones in a similar
+ manner as the Action configuration mechanism. The context menu of the tasks contains a
+ 'Properties' entry that opens a configuration dialog (???). </para>
+
+ <figure>
+ <title> The Task Configuration Dialog</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/Quick_Howto_Guide/defaltImage.png" scalefit="1"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </section>
+
+</chapter>
Added: trunk/jbpm/docs/reference/en/modules/Test_Drive_Proc.xml
===================================================================
--- trunk/jbpm/docs/reference/en/modules/Test_Drive_Proc.xml (rev 0)
+++ trunk/jbpm/docs/reference/en/modules/Test_Drive_Proc.xml 2007-11-13 09:12:24 UTC (rev 4865)
@@ -0,0 +1,105 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<chapter id="Test_Drive_Proc_Development" xreflabel="Test_Drive_Proc_Development">
+ <?dbhtml filename="Tutorial.html"?>
+ <chapterinfo>
+ <keywordset>
+ <keyword>jBPM</keyword>
+ <keyword/>
+ <keyword/>
+ <keyword/>
+ <keyword/>
+ </keywordset>
+ </chapterinfo>
+ <title>Test Driven Process Development</title>
+
+ <para> One of the most important advantages of JBoss jBPM's lightweight approach to BPM
+ and workflow management is that developers can easily leverage their usual programming
+ skills and techiques. One of these well-known techniques is unit testing and test driven
+ development. In this chapter we will show how developers, making use of the JBoss jBPM GPD
+ can use a technique we have baptised 'Test Driven Process Development' to
+ create process definitions and test their correctness. </para>
+
+ <para> When creating the 'Hello jBPM' project the create process project
+ wizard has already put in place all the library requirements we need to start writing jBPM
+ unit tests. These are contained in the jBPM Library container and the most important of it
+ is - suprisingly - the jar file containing the core jBPM classes. It must be noted that it
+ is possible to change the location of the core jBPM installation by changing the preference
+ settings. More on this later in the book. </para>
+
+ <para> With that extra knowledge on the project settings, you can create your first test. To do
+ this, we create the 'com.jbay' package in the
+ 'test/java' source folder. Then we bring up the context menu on this
+ package and select 'New->JUnit Test Case' (Figure 3.1, "Create a
+ Test" and Figure 3.2, "Create Test Dialog"). We call the test
+ class ''HelloTest'. </para>
+
+ <figure>
+ <title>Create a Test</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/Test_Drive_Proc/defaltImage.png" scalefit="1"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <figure>
+ <title>Create Test Dialog</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/Test_Drive_Proc/defaltImage.png" scalefit="1"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para> We write a simple test scenario as shown in Figure 3.3, "A First Test
+ Scenario". Let's study the code of this testcase. In the first line of the
+ method, a jBPM process archive object is created. We use a constructor accepting the
+ filename of the archive. In our case it is the 'hello.par' file we created
+ earlier and wich lives in the 'src' folder of our project. After asserting
+ that this object is really created, we extract a process definition object from it. This
+ object is fed to the constructor of a process instance object. We have a process instance
+ object, but this process is not yet started, so we can safely assert that its root token
+ still resides in the start node. After signalling the token will move to the next state and
+ the process will be in the 'auction' state. Finally another signal will
+ end the process. </para>
+
+ <figure>
+ <title>A First Test Scenario</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/Test_Drive_Proc/defaltImage.png" scalefit="1"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para> After writing this test we can check whether it works as expected by running it (Figure
+ 3.4, "Running the Process Test " and Figure 3.5, "Successful Test
+ Run") all went well: we have a green light. </para>
+
+ <figure>
+ <title>Running the Process Test</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/Test_Drive_Proc/defaltImage.png" scalefit="1"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <figure>
+ <title>Successful Test Run</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/Test_Drive_Proc/defaltImage.png" scalefit="1"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para> Of course, this simple scenario was not very interesting, but the purpose of it was to
+ show how you can reuse your development skills in a very straightforward way when doing
+ process development. To see how more interesting processes and process test scenario's can
+ be developed, we suggest you to read the JBoss jBPM User Guide and to study the API
+ reference. Moreover some more examples will be given later in this book.</para>
+
+</chapter>
Added: trunk/jbpm/docs/reference/en/modules/The_JBoss_jBPM_Int_Mech.xml
===================================================================
--- trunk/jbpm/docs/reference/en/modules/The_JBoss_jBPM_Int_Mech.xml (rev 0)
+++ trunk/jbpm/docs/reference/en/modules/The_JBoss_jBPM_Int_Mech.xml 2007-11-13 09:12:24 UTC (rev 4865)
@@ -0,0 +1,178 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<chapter id="The_JBoss_jBPM_Int_Mech" xreflabel="The_JBoss_jBPM_Int_Mech">
+ <?dbhtml filename="Tutorial.html"?>
+ <chapterinfo>
+ <keywordset>
+ <keyword>jBPM</keyword>
+ <keyword/>
+ <keyword/>
+ <keyword/>
+ <keyword/>
+ </keywordset>
+ </chapterinfo>
+ <title>Actions : The JBoss jBPM Integration Mechanism</title>
+
+ <para> In this chapter we will show how to do software integration with JBoss jBPM. The standard
+ mechanism to realize this is to wrap the functionality you want to integrate in a class that
+ implements the ActionHandler interface. </para>
+
+ <section>
+ <title>Creating a Hello World Action</title>
+
+ <para> Each Hello World process should integrate one or more Hello World actions, so this is
+ what we will be doing. We can integrate custom code at different points in the process
+ definition. To do this we have to specify an action handler, represented by an
+ implementation of the ActionHandler interface, and attach this piece of code to a
+ particular event. These events are amongst others, going over a transition, leaving or
+ enterning nodes, after and before signalling. </para>
+
+ <figure>
+ <title>A Simple Hello Action</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/The_JBoss_jBPM_Int_Mech/defaltImage.png" scalefit="1"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para> To make things a little bit more concrete, we will implement an action handler. To do
+ this, create a new class called HelloActionHandler, which implements the ActionHandler
+ interface and implement the execute method as shown in Figure 4.1, "A Simple
+ Hello Action" and Figure 4.2, "A Simple Hello Action". This
+ test will add a variable named 'greeting' to the collection of process
+ variables and puts a message in it : "Hello from ActionHandler". </para>
+
+ <figure>
+ <title>A Simple Hello Action</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/The_JBoss_jBPM_Int_Mech/defaltImage.png" scalefit="1"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </section>
+
+ <section>
+ <title>Integrating the Hello World Action</title>
+
+ <para> As good Testcity citizens we will first create a unit test that proves the behaviour
+ we want to achieve by adding the action handler to the process. So we implement another
+ test. Creating the process instance is code we already saw in the previous chapter. We
+ assert that no variable called greeting exist. Then we give the process a signal to move
+ it to the first state. We want to associate the execution of the action with the event
+ of going over the transition from the start state to the first state. So after the
+ signal, the process should be in the first state as in the previous scenario. But
+ moreover, the 'greeting' variable should exist and contain the string
+ "Hello from ActionHandler". That's what we assert in the last
+ lines of the test method shown in Figure 4.3, "Create the Hello Action
+ Test" </para>
+
+ <figure>
+ <title>Create the Hello Action Test</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/The_JBoss_jBPM_Int_Mech/defaltImage.png" scalefit="1"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para> Running the tests now results in a failure. This is shown in Figure 4.4,
+ "Test Results Before Integration" As a matter of fact, we did not
+ associate the action with any particular event in the process definition, so the process
+ variable did not get set. </para>
+
+ <figure>
+ <title>Test Results Before Integration</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/The_JBoss_jBPM_Int_Mech/defaltImage.png" scalefit="1"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para> Let's do something about it and add an action to the first transition of our
+ sample process. This is done by bringing up the context menu of the transition in the
+ tree page of the outline view, as shown in Figure 4.5, "Adding an Action to a
+ Transition". </para>
+
+ <figure>
+ <title>Adding an Action to a Transition</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/The_JBoss_jBPM_Int_Mech/defaltImage.png" scalefit="1"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ <para> Right-clicking the action brings up a popupmenu with an entry to edit the properties
+ of the selected action. Clicking on this menu entry opens a configuration dialog for
+ actions. For now we will only configure the name and class properties of this action.
+ The rest will be treated later. We enter 'hello' as the name of the
+ action and click on the 'Browse...' button to open a choose class
+ dialog where we can look for the classes implementing the ActionHandler interface in our
+ project's classpath (Figure 4.6, "The Choose Action Handler
+ Dialog"). </para>
+
+ <figure>
+ <title>The Choose Action Handler Dialog</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/The_JBoss_jBPM_Int_Mech/defaltImage.png" scalefit="1"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <figure>
+ <title> The Action Configuration Dialog</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/The_JBoss_jBPM_Int_Mech/defaltImage.png" scalefit="1"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+
+ <para> We choose our previously created 'HelloActionHandler' class and
+ push the 'OK' button (Figure 4.7, "The Action Configuration
+ Dialog"). After the selection of the action handler for the action, we can run
+ the test and observe it gives us a green light (Figure 4.8, "The Action
+ Configuration Dialog"). </para>
+
+ <figure>
+ <title>The Action Configuration Dialog</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/The_JBoss_jBPM_Int_Mech/defaltImage.png" scalefit="1"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </section>
+
+ <section>
+ <title> Integration Points</title>
+
+ <para> The different integration points in a process definition are thoroughly documented in
+ the JBoss jBPM User Guide. As you see on Figure 4.9, "Adding an Event Action" different
+ kinds of actions can be added to for instance nodes. Adding such an action will create
+ an event object in the outline view and add an action as a child of this newly created
+ event. In the same way, actions can be added to the process definition object. Moreover,
+ actions can directly be added to events. </para>
+
+ <figure>
+ <title> Adding an Event Action</title>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="images/The_JBoss_jBPM_Int_Mech/defaltImage.png" scalefit="1"/>
+ </imageobject>
+ </mediaobject>
+ </figure>
+ </section>
+
+</chapter>
17 years, 2 months
JBoss Tools SVN: r4864 - in trunk/jbpm/docs/reference/en/images: Quick_Howto_Guide and 2 other directories.
by jbosstools-commits@lists.jboss.org
Author: ochikvina
Date: 2007-11-13 04:10:54 -0500 (Tue, 13 Nov 2007)
New Revision: 4864
Added:
trunk/jbpm/docs/reference/en/images/Quick_Howto_Guide/
trunk/jbpm/docs/reference/en/images/Quick_Howto_Guide/defaltImage.png
trunk/jbpm/docs/reference/en/images/Test_Drive_Proc/
trunk/jbpm/docs/reference/en/images/Test_Drive_Proc/defaltImage.png
trunk/jbpm/docs/reference/en/images/The_JBoss_jBPM_Int_Mech/
trunk/jbpm/docs/reference/en/images/The_JBoss_jBPM_Int_Mech/defaltImage.png
Log:
http://jira.jboss.com/jira/browse/RHDS-288 - adding folder to images
Added: trunk/jbpm/docs/reference/en/images/Quick_Howto_Guide/defaltImage.png
===================================================================
(Binary files differ)
Property changes on: trunk/jbpm/docs/reference/en/images/Quick_Howto_Guide/defaltImage.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/jbpm/docs/reference/en/images/Test_Drive_Proc/defaltImage.png
===================================================================
(Binary files differ)
Property changes on: trunk/jbpm/docs/reference/en/images/Test_Drive_Proc/defaltImage.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/jbpm/docs/reference/en/images/The_JBoss_jBPM_Int_Mech/defaltImage.png
===================================================================
(Binary files differ)
Property changes on: trunk/jbpm/docs/reference/en/images/The_JBoss_jBPM_Int_Mech/defaltImage.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
17 years, 2 months
JBoss Tools SVN: r4863 - tags/jbosstools-2.0.0.CR1.
by jbosstools-commits@lists.jboss.org
Author: mculpepper(a)jboss.com
Date: 2007-11-12 12:16:04 -0500 (Mon, 12 Nov 2007)
New Revision: 4863
Added:
tags/jbosstools-2.0.0.CR1/common/
Log:
retagging common
Copied: tags/jbosstools-2.0.0.CR1/common (from rev 4862, trunk/common)
17 years, 2 months
JBoss Tools SVN: r4862 - tags/jbosstools-2.0.0.CR1.
by jbosstools-commits@lists.jboss.org
Author: mculpepper(a)jboss.com
Date: 2007-11-12 12:15:46 -0500 (Mon, 12 Nov 2007)
New Revision: 4862
Added:
tags/jbosstools-2.0.0.CR1/hibernatetools/
Log:
retagging hibernatetools
Copied: tags/jbosstools-2.0.0.CR1/hibernatetools (from rev 4861, trunk/hibernatetools)
17 years, 2 months
JBoss Tools SVN: r4861 - tags/jbosstools-2.0.0.CR1.
by jbosstools-commits@lists.jboss.org
Author: mculpepper(a)jboss.com
Date: 2007-11-12 12:15:07 -0500 (Mon, 12 Nov 2007)
New Revision: 4861
Added:
tags/jbosstools-2.0.0.CR1/seam/
Log:
retagging seam
Copied: tags/jbosstools-2.0.0.CR1/seam (from rev 4860, trunk/seam)
17 years, 2 months
JBoss Tools SVN: r4860 - tags/jbosstools-2.0.0.CR1.
by jbosstools-commits@lists.jboss.org
Author: mculpepper(a)jboss.com
Date: 2007-11-12 12:14:22 -0500 (Mon, 12 Nov 2007)
New Revision: 4860
Added:
tags/jbosstools-2.0.0.CR1/as/
Log:
retagging as
Copied: tags/jbosstools-2.0.0.CR1/as (from rev 4859, trunk/as)
17 years, 2 months
JBoss Tools SVN: r4859 - tags/jbosstools-2.0.0.CR1.
by jbosstools-commits@lists.jboss.org
Author: mculpepper(a)jboss.com
Date: 2007-11-12 12:13:45 -0500 (Mon, 12 Nov 2007)
New Revision: 4859
Removed:
tags/jbosstools-2.0.0.CR1/common/
Log:
retagging common
17 years, 2 months
JBoss Tools SVN: r4858 - tags/jbosstools-2.0.0.CR1.
by jbosstools-commits@lists.jboss.org
Author: mculpepper(a)jboss.com
Date: 2007-11-12 12:13:31 -0500 (Mon, 12 Nov 2007)
New Revision: 4858
Removed:
tags/jbosstools-2.0.0.CR1/hibernatetools/
Log:
retagging hibernatetools
17 years, 2 months