News: OpenSymphony Workflow 2.1 Available
The OpenSymphony team is very happy to announce the latest release of the OSWorkflow project, version 2.1.
- Posted by: Patrick Lightbody
- Posted on: September 16 2002 18:18 EDT
You can read more about OSWorkfow here.
OpenSymphony is a group of highly skilled professionals seeking to better the opensource offerings for enterprise-class J2EE applications. Other projects by OpenSymphony include:
-OSCore - A set of small utility classes that is useful in J2EE and even non-J2EE applications.
-OSUser - A user management API that can bridge with any J2EE container, providing a common interface to container-managed security (something left out of the J2EE spec).
-PropertySet - Various implementations of a PropertySet interface that allows for dynamic persistence storage of data-typed properties.
-OSCache - JSP tag library and set of classes to perform fine grained dynamic caching of JSP content.
-SiteMesh - A servlet filter + tag library component that uses decorators to allow for excellent site layout and web app integration.
-WebWork - WebWork is a web application framework for J2EE based on a concept called "Pull HMVC" (Pull Hierarchical Model View Controller) and supports multiple view technologies.
-FormTags - JSP taglib designed to make integration of HTML forms and Javabeans relatively orthogonal and convenient.
-TransformTags - JSP taglib designed to provide tags to transform source content from one form to another, such as XSL transformation.
-OSAccess - An Entitlement security engine for fine grain security access.
- OpenSymphony Workflow 2.1 Available by gao jianbing on September 18 2002 05:42 EDT
- OpenSymphony Workflow 2.1 Available by Shane Crawford on September 18 2002 10:40 EDT
- OpenSymphony Workflow 2.1 Available by Paul Watson on September 18 2002 11:52 EDT
- OpenSymphony Workflow 2.1 Available by Pow Hwee Tan on September 19 2002 06:21 EDT
- Workflow links @ jinx.swiki.net by Sean Sullivan on September 23 2002 15:21 EDT
- OpenSymphony Workflow 2.1 Available by Steve Crossan on October 30 2002 12:35 EST
I want to download it,but I dont't access sourceforge.net.
have some other ways to download it??
Rooting to sourceforge.net is now banned in China because of some 'reactionary' project hosted on the site from the authorities viewpoint.
You can lookup some foreign proxy.
u can access the resources even from within china by the following URL
But, trying to figure out the example app is an exercise in itself. It looks like it is setup to run against a database. Why not use the MemoryWorkflowStore? I got this to work by changing osworkflow.xml of the example app to use:
<persistence class="com.opensymphony.workflow.spi.memory.MemoryWorkflowStore" />
and then in osuser.xml commented out the jdbc providers and added in the memory providers. This gets it up and running without having to configure a database. It's just an example after all.
Also, it seems that you need to create the group 'foos' and add a user to that group… but, this is about as far as I've gotten with it. What are the properties that can be used for the users and groups, which ones can be used and what do they do?
You're right, using the memory store would have made the demo simpler to get running, maybe I'll switch that for the next release. As you noted, the example app leaves a bit to be desired. Hopefully I'll be able to beef it up and maybe include a real-world example (like online order processing or something).
Yes, this example workflow relies on a user being in different groups [foos, bars, bazs] due to the fact it uses the OSUserGroupCondition. There is nothing you need to set for the user/group properties, the rest of that stuff is OSUser (which is a nice module) but outside the scope of OSWorkflow. You could make workflow transitions use a custom Condition other than OSUser for checking group membership or rights. For example, I'll be adding an OSAccessCondition very soon as well.
I am new to this field of workflow and I can not get the example who comes with OpenSymphony Workflow.
Can you point me to some resource to look for this kind of information ?
What is the mail list to talk about it ?
And a order processing sample is welcome too ...
You can use the mailing lists available at www.sourceforge.net/projects/opensymphony. I will be happy to assist you there.
With a little experience on workflow, I can see the benefits of being able to build upon an existing workflow 'engine', but I also think that the interactive aspect is a considerable part of workflow as well. From what I can understand from a brief look at the documentation, the 'engine' will execute within 'a' server, but how should the issue of how to notify clients/consumers of changes in status be addressed? For example, thinking about html clients, can this be addressed without resorting to some kind of push technology (and then implying it is not really an html client afterall)? Of course you could always let them refresh themselves, but then IMO it kind of defeats some of the ideas of workflow itself...
I'm not quite entirely sure what you are saying here. You are correct in that OSWorkflow cannot reach out to the HTML client to inform interested parties an item has changed state. But that's a problem with the nature of the stateless HTTP protocol, not OSWorkflow. If you were using a better client (say, swing) you could easily put in notification elements in your workflow that would notify interested parties via RMI or SOAP.
I haven't tried but from the site description it looks good.
How does OSWorkflow compare to the WfMC workflow reference model? Eg. Does a step correspond to an activity in WfMC terms?
I'd say that OSWorkflow is a little bit more "low level" than WfMC. Eventually I hope to write a bridge between the two.
I collected a bunch of Workflow links:
Is the OpenSymphony Workflow module compatible with, and extension of, or a replacement for, the ofbiz workflow module? The ofbiz one, as far as I know, is based on the WfMG specs. Is it possible to use that instead of OpenSymphony workflow in an OpenSymphony environment? And vice-versa?