Documentation
From Wiki
Contents |
User Guide
Welcome to the WEEP Engine User Guide
Installing WEEP Engine
Prerequisite Software
- OS: UNIX/Windows
- Java Runtime Environment (tested with JDK 5.0)
- Apache Ant-1.7.x
- Globus Toolkit 4.0.x (recommended version 4.0.7)
- Maven 2.x (needed to build from source)
Environment Settings
Be sure that your environment variables JAVA_HOME, ANT_HOME, MAVEN_HOME and GLOBUS_LOCATION point to the respective installation directories.
For successful installation and running of the WEEP Engine under Globus Toolkit 4 (GT4) follow all the next steps in sequence:
Globus Toolkit 4
Deploy WEEP Services into GT4 Container
- To deploy the services execute (unix | windows):
./bin/globus-deploy.sh | bin/globus-deploy.bat
Start WEEP Database
- To start the database execute the following command (unix | windows):
./bin/db-start | bin/db-start.bat
Start GT4 Container
- Execute the following command from /path/to/your/globus/bin (unix | windows)
./globus-start-container -nosec | globus-start-container.bat -nosec
Using WEEP Client
- Standard format of ant tasks "ant client-<CommandName> [-DParameter]"
- To get complete list of supported tasks run:
ant client-help
- The currently supported ant task are:
ant client-createTemplate -Dgwa.url=URL ant client-listTemplates ant client-createEngine -DtemplateId=ID ant client-engineState -DengineId=ID ant client-engineVariables -DengineId=ID ant client-run -Dgwa.url=URL ant client-startEngine -DengineId=ID ant client-listEngines ant client-templateDefinitions -DtemplateId=D
By default, the URLs of the TemplateEngineFactory, ProcessEngineFactory and ProcessEngineService services are set to the localhost! You can change their values using the following parameters for any ant task.
-Dtemplate.factory.url=http://localhost:8080/wsrf/services/gridminer/weep/ProcessTemplateFactory -Dengine.factory.url=http://localhost:8080/wsrf/services/gridminer/weep/ProcessEngineFactory -Dengine.service.url=http://localhost:8080/wsrf/services/gridminer/weep/ProcessEngineService
Tasks Description
- This command takes an URL of Grid Workflow Archive file (GWA) as a parameter and creates new ProcessTemplateResource with a unique ID.
ant client-createTemplate -Dgwa.url=URLofGWA
- This command lists all available ProcessTemplateResources. It takes no parameters.
ant client-listTemplates
- This creates a new ProcessResource with a unique engine ID. It takes as parameter the ID of ProcessTemplateResource.
ant client-createEngine -DtemplateId=ID
- This command is for checking the state of the engine. Every engine has four states: Runnable, Running, Failed and Completed. In the parameter part of this command it takes the ID of a ProcessResource.
ant client-engineState -DengineId=ID
- As the command shows, its functionality is to start the process and it takes the ID of ProcessResource as parameter.
ant client-startEngine -DengineId=ID
- The purpose of this command is to display the ProcessResource variables along with their names and current values.
ant client-engineVariables -DengineId=ID
- This command is used for listing all the ProcessResources, along with their Names and IDs. It takes no parameter.
ant client-listEngines -DtemplateID=ID
- This command displays BPEL and WSDL related to the specified ProcessTemplateResource.
ant client-templateDefinitions -DtemplateId=ID
- This command creates new ProcessTemplateResource, ProcessResource and finally starts the process.
ant client-run -Dgwa.url=ID
To invoke demo example run the following command:
ant client-run \ -Dtemplate.factory.url=http://localhost:8080/wsrf/services/gridminer/weep/ProcessTemplateFactory \ -Dengine.factory.url=http://localhost:8080/wsrf/services/gridminer/weep/ProcessEngineFactory \ -Dengine.service.url=http://localhost:8080/wsrf/services/gridminer/weep/ProcessEngineService \ -Dgwa.url=http://weep.gridminer.org/examples/process_example_01.gwa
The archive file contains:
Engine Interaction Example
In this section we explain the functionality of WEEP client in interaction with the WEEP Engine. To complete the example successfully follow the below described steps in sequence.
1) Create a ProcessTemplateResource First create a ProcessTemplateResource by executing :
ant client-createTemplate -Dgwa.url=http://weep.gridminer.org/examples/process_example_01.gwa
This will create a ProcessTemplateResource along with its ID: TemplateId
2) View a list of created templates
To get list of ProcessTemplateResources run:
ant client-listTemplates
This gives the list of all created ProcessTemplateResources with their IDs and Names.
3) Create engine
After creating the ProcessTemplateREsource, the next step is to create an engine instance represented as a WS-REsource. To create the resource execute:
ant client-createEngine -DtemplateId=templateEngineId
This will create the engine with a engine ID:engineId_1
Note: -DtemplateId=templateEngineId, templateEngineId is the ID of the template engine we created in
the first step.
4) List engines
To see the list of all engines run:
ant client-listEngines
5) View state of created engine
To check the state of created engine run:
ant client-engineState -DengineId=engineId_1
This gives one of the states of the engine i.e. runnable, running, failed, pending or completed.
Note: -DengineId=engineId_1, is the ID of the ProcessResource, created in the third step.
6) Start process
To start the process run:
ant client-startEngine -DengineId=engineId_1
Note: -DengineId=engineId_1, is the ID of the ProcessResource, created in the third step.
7) Check variables
To check the final values of process variables run:
ant client-engineVariables -DengineId=engineId_1
Hurrah!!! if all worked fine the counter value is 20.
WEEP Tools
Dynamic Invoker GUI
The dynamic invoker is a basic component of the WEEP engine for interaction with the partner services. The invoker can be started:
./bin/invoker | bin/invoker.bat
JMX Interface
The WEEP Engine can be interactively controlled using its JMX HTML adaptor - running on port 8082
WS-BPEL Visualization
The BPEL files in version 2.0 can be easily converted to the SVG and PNG format
Workflow Archive File
The workflow archive file is a 'jar' file containing process definition files like e.g. BPEL, WSDL. Moreover, it can contain additional files like XSD schemas or XSLT files etc. required by the BPEL or WSDL files. To create the demo archive file run java jar command as follows.
jar -vxfM process_example_01.gwa process_example_01.bpel CounterService.wsdl
Deploying Composite Service to GT4
...coming soon.
Building from Source Code
To build the the required packages from the source distribution run:
./bin/build | bin/build.bat
! Ignore the maven2 WARNING messages if any
Project Structure
The project consists of several modules based on Project Object Model. Each parent module contains a pom.xml file including all the library dependencies. The POM files allow to compile and install WEEP to the local maven2 repository usually located in 'path/to/users/home/directory/.m2/repository'. Additionally, some submodules contain ant build scripts, which allow to run module specific tools. The "bin" directory of the WEEP distribution holds a set of handy shell scripts, which allow to invoke some of the ant targets.
The source code project consists of the following Maven2 modules:
- beans-bpel
- core-bpel
- core-invocation
- core-enactment
- core-management
- core-persistence
- globus-client
- globus-stubs
- globus-service
- standalone
- visualization (BPEL)
- webapps (Portal)
