Project Info
Screenshots
Download
Forums
License
SourceForge
Feedback
 
 
SourceForge Logo
 
 
 
 
 
 
 
 
 
 
 
 
 

What is it?

Flow4J-Eclipse is an Eclipse Plug-in to model process flows with the help of the Eclipse-GEF GUI framework.
Have a look at the screenshots to get a first idea.

A flow can contain components, called flowlets, like tasks, decisions, jumps, templates etc.
Flows are managed in Eclipse projects with JDT capabilities.

Saving a flow stores the flow's model in an XML file;
Building the Flow4J Eclipse project creates java source code that is compiled by the JDT java compiler automatically. Thus all possibilities that the JDT Plug-ins offer, like debugging and build-path management, are available by default.

Setup and build a Flow4J Eclipse project

  • download the Plug-in and drop the expanded Plug-in folder in the .../ECLIPSE_HOME/plugins folder
  • start/restart Eclipse
  • create new Flow4J Project. This creates a project with the following top level folders:
    • flows - place your flow files in this folder or in a subfolder
    • java - the FlowBuilder places the flow's java source code in this folder
    • bin - the automatically triggered JavaBuilder places the flow's compiled bytecode in the appropriate package structure in this folder
  • add the pluginfolder/flow4jruntime.jar to the projects classpath, so that the runtime classes can be accessed by the JavaBuilder
  • create Start, Task, End and other needed flowlets
  • change the flowlet's labels in the properties view. Especially the task flowlet's label must be set to the fully qualified class path of the executable class that implements IFlowlet

After the project was built successfully, you can run the flow with code like this:

  Map dictionary = new HashMap();
  dictionary.put("name", "Alex");
  new flows.SayHello().execute("Start", dictionary);
or as it will be prefered in the future:
  FlowManager.registerFlow(flows.SayHello.class);
  FlowManager.executeFlow("hello", "Start", dictionary);

Running the flow processes all task flowlets in the flow with the dictionary as parameter. So task flowlets can read data from it or even manipulate and put new data into it.

Development status

The Plug-in is under heavy development. Currently Im working on basic functionality, but tasks can be created and combined in a flow. These flowws can then be executed. Here is a list whats coming next:

  • template-Flowlet that can return code for JSP pages
  • exception handling
  • additional flowlet properties like SMTP address of a SendMail flowlet

Prerequisites

  • The Flow4J Plug-in is developed and tested on Eclipse 2.1.1. The following additional package is needed for correct functioning:
    • GEF-SDK contains two Eclipse Plug-ins (draw2d and GEF). You can download version 2.1.1. Installation is quite simple, just extract the GEF archive and put the plug-in folders in .../ECLIPSE_HOME/plugins. Further information on istalling GEF can be found here .
    • The Plug-in uses the JDT Plug-ins for the compilation, so it should be installed on your Eclipse IDE.
  • Ant 1.5.x, if you want to build the Plug-in yourself

Thanks for your interest and enjoy or give feedback.

07.12.2003
v0.3.1 - Adding Flow4J nature to existing projects

04.12.2003
v0.3.0 - Flows accessible from servlets
sample webapp: flow4jwebapp.zip

20.11.2003
v0.2.4 - many improvements

06.11.2003
v0.2.3 - bytecode is java 1.3.1 compatible

05.11.2003
v0.2.2 - Implemented Call and Join Flowlet

31.10.2003
v0.2.1 - Implemented Join Flowlet

29.10.2003
v0.2.0 - Implemented Decision Flowlet
XSD and file format has changed!!!

26.10.2003
v0.1.9 - Handles reconnections and free anchor indication correctly

24.10.2003
v0.1.8 - Handles connection creation correctly

22.10.2003
v0.1.7 - IFlow interface changed! Many minor improvements.

21.10.2003
v0.1.6 - introduced EndFlowlet. Flows should always be terminated with this.

19.10.2003
v0.1.5 - created new icons and figures look better now

18.10.2003
v0.1.4 - first release that can process flows with task flowlets

11.10.2003
added JDT capabilities to Flow4J projects

10.10.2003
generating java source code from flows

09.10.2003
successful tests on windows and Mac OS X Eclipse 2.1.1
added abylity to use incemental and full build

08.10.2003
loading and saving of flows works

07.10.2003
created the xsd and embedded castor as a binding framework

Alex Greif