Are ruote-web and kisha compatibles?

0 views
Skip to first unread message

Diego Moreno

unread,
May 12, 2008, 3:21:10 PM5/12/08
to OpenWFEru users
Hi!
I am working on a web application on rails over openwferu. Also, I
need a REST api to interoperate with others modules. I am watching
ruote-web (web interface) and kisha (REST api). I need both features
but I dont know if they are compatibles with each other. I dont know
if I can have both applications running on different ports over the
same database. Is this possible?

In both projects the "workitems" and "fields" tables have the same
attributes. Then, it seems that it is possible...

Thanks!
Diego.

John Mettraux

unread,
May 12, 2008, 7:16:03 PM5/12/08
to openwfe...@googlegroups.com

Hello Diego,

well, Pat is working on that (http://github.com/cappelaere) but his
goal is to implement the wfxml-r interface
(http://geobliki.com/articles/2008/04/24/restful-wfxml-accepted-by-the-wfmc)
so he's adding OpenId and OAuth to the mix.

The idea of Pat seems to be to merge Kisha and Ruote-Web together.

I have for now decided to stop the development of Kisha and let Pat
handle that the way he wants. I just work on Ruote-Web and Ruote-Rest
(which is a Kisha--).

Back to your question, the problem with Kisha and Ruote-Web sharing
the same db is about locking workitems and also sharing the engine
rundata. The best way is probably to have a mix of Kisha and
Ruote-Web, with controllers for human consumption and controllers for
restful consumption.

My original idea was to strip the engine out of Ruote-Web and make it
rely on Kisha (or Ruote-Web) as a back-end. But well, I had no time
and it could get complicated to deploy.


So nothing out of the box for now.

Maybe Pat will have his say here.


Best regards,

--
John Mettraux - http://jmettraux.wordpress.com

Diego Moreno

unread,
May 13, 2008, 5:18:20 AM5/13/08
to OpenWFEru users
Thanks for the answer John.

What is the difference between functionality in kisha and ruote-web?

I've been watching the api of ruote-rest:
http://github.com/jmettraux/ruote-rest/tree/master/README.txt

In principle, I need a very basic rest api. I should be able to resume
a workitem passing parameters to it.
Is this possible with ruote-rest and "PUT /workitems/{wid}"?

I am assuming ruote-rest is compatible with ruote-web. Am I wrong?

Regards.
Diego.

On 13 mayo, 01:16, "John Mettraux" <jmettr...@openwfe.org> wrote:
> On Tue, May 13, 2008 at 4:21 AM, Diego Moreno <diegomor...@gmail.com> wrote:
>
> > I am working on a web application on rails over openwferu. Also, I
> > need a REST api to interoperate with others modules. I am watching
> > ruote-web (web interface) and kisha (REST api). I need both features
> > but I dont know if they are compatibles with each other. I dont know
> > if I can have both applications running on different ports over the
> > same database. Is this possible?
>
> > In both projects the "workitems" and "fields" tables have the same
> > attributes. Then, it seems that it is possible...
>
> Hello Diego,
>
> well, Pat is working on that (http://github.com/cappelaere) but his
> goal is to implement the wfxml-r interface
> (http://geobliki.com/articles/2008/04/24/restful-wfxml-accepted-by-the...)

John Mettraux

unread,
May 13, 2008, 5:27:31 AM5/13/08
to openwfe...@googlegroups.com
On Tue, May 13, 2008 at 6:18 PM, Diego Moreno <diego...@gmail.com> wrote:
>
> What is the difference between functionality in kisha and ruote-web?

Hi Diego,

They are both based on Rails. Kisha is not meant for human
consumption. Ruote-web is biased towards human consumption (browsers).


> I've been watching the api of ruote-rest:
> http://github.com/jmettraux/ruote-rest/tree/master/README.txt
>
> In principle, I need a very basic rest api. I should be able to resume
> a workitem passing parameters to it.
> Is this possible with ruote-rest and "PUT /workitems/{wid}"?

Yes : http://github.com/jmettraux/ruote-rest/tree/master/test/st_workitems.rb#L90-104


> I am assuming ruote-rest is compatible with ruote-web. Am I wrong?

Ruote-rest is based on Sinatra (http://sinatrarb.com) and not Rails.
Hence it's way smaller. Still it uses the same ActiveRecord based
participants that Ruote-web (and Kisha) use.

It's a bit difficult to say whether they are compatible or not. The
HTML interface of Ruote-rest is less shiny that the one of Ruote-web.
Especially the access control models of both applications are
completely different. There is no concept of user in Ruote-rest.


I hope this helps, best regards,

Diego Moreno

unread,
May 13, 2008, 6:40:30 AM5/13/08
to OpenWFEru users
Before I did the wrong question, sorry for the mistake. I wanted to
ask:
What is the difference between functionality in kisha and ruote-REST?

In the other hand, I don't know if there is a way to have ruote-web
and ruote-rest running over the same workflow engine. Is this
possible? Basically I need a basic REST interface over ruote-web.
Other solution is make it by myself. What do you recommend to me?

Thanks again, John.
Diego.

On May 13, 11:27 am, "John Mettraux" <jmettr...@openwfe.org> wrote:
> On Tue, May 13, 2008 at 6:18 PM, Diego Moreno <diegomor...@gmail.com> wrote:
>
> > What is the difference between functionality in kisha and ruote-web?
>
> Hi Diego,
>
> They are both based on Rails. Kisha is not meant for human
> consumption. Ruote-web is biased towards human consumption (browsers).
>
> > I've been watching the api of ruote-rest:
> > http://github.com/jmettraux/ruote-rest/tree/master/README.txt
>
> > In principle, I need a very basic rest api. I should be able to resume
> > a workitem passing parameters to it.
> > Is this possible with ruote-rest and "PUT /workitems/{wid}"?
>
> Yes :http://github.com/jmettraux/ruote-rest/tree/master/test/st_workitems....

Pat Cappelaere

unread,
May 12, 2008, 10:33:14 PM5/12/08
to openwfe...@googlegroups.com
I am getting close... Still a few more user stories to work out...
And some more git magic to learn before making it official.
I started with Densha and adding WfXML-R + OpenID + OAuth

Here is my question and it might be trivial but I just want to make sure:

1. I forked ruote-web (aka Densha) and installed the various rufuses using
the 'install_workflow_engine' task
2, I created a wfxml branch and started moving code from geobpms to it
3. I then created a remote entry back to the original ruote-web

So now I can fetch the new updates to ruote-web and merge them into my wfxml
branch.

My question is: how do I get updates for the many other RUFUSES projects?
Do I need to create seven remote entries? (ruote dollar eval lru mnemo
scheduler verbs) and do seven manual updates?
Re-running the install_workflow_engine everytime does not feel right
(wouldn't git lose track of the changes mine and yours?)

Just checking...

Thanks,

Pat.

John Mettraux

unread,
May 13, 2008, 11:34:04 AM5/13/08
to openwfe...@googlegroups.com
On Tue, May 13, 2008 at 7:40 PM, Diego Moreno <diego...@gmail.com> wrote:
>
> What is the difference between functionality in kisha and ruote-REST?

Hello Diego,

Kisha is a first draft, Ruote-rest is the "take 2" (see
http://jmettraux.wordpress.com/2008/05/07/restful-workflow-engine-on-sinatra/)

Kisha supports a beginning of AtomPub and if I remember correclty uses
ActiveResource XML [de]serialization while Ruote-rest uses the new
Ruote XML thing
(http://github.com/jmettraux/ruote/tree/master/lib/openwfe/util/xml.rb).

I can't remember if Kisha does JSON representations, but Ruote-Rest
certainly will.

Ruote-rest auth and auth is dead dumb (thus extremely flexible)
(http://github.com/jmettraux/ruote-rest/tree/master/conf/auth.rb)


> In the other hand, I don't know if there is a way to have ruote-web
> and ruote-rest running over the same workflow engine. Is this
> possible? Basically I need a basic REST interface over ruote-web.
> Other solution is make it by myself. What do you recommend to me?

I would say, take a look at what Pat is doing, maybe that's what you
need. Else take Ruote-web, fork it and with some inspiration from
Ruote-rest and Kisha include some restful controllers or adapt the
ones already present in Ruote-web.

Seems like Pat is building a restful thing for the web at large (oauth
&& openid) while I'm more like building something for the "intranet"
and the backend.

If you have any questions just fire them here on the list, I'll help
the best I can.


Best regards,

John Mettraux

unread,
May 13, 2008, 11:46:21 AM5/13/08
to openwfe...@googlegroups.com
On Tue, May 13, 2008 at 7:40 PM, Diego Moreno <diego...@gmail.com> wrote:
>
> Basically I need a basic REST interface over ruote-web.
> Other solution is make it by myself. What do you recommend to me?

Hello,

another question : what features of Ruote-web would you need ? For
instance, would you need its user management capabilities ?

(or would you replace it with another one found in a Rails plugin ?)

What are the core things in Ruote-web that you need ?

Diego Moreno

unread,
May 13, 2008, 12:20:11 PM5/13/08
to OpenWFEru users
Thank you very much for your attention, John.

> would you need its user management capabilities ?
> (or would you replace it with another one found in a Rails plugin ?)

Yes. I am thinking about changing the user management to other with
ldap support (project requirement). And I am planning to add roles,
permissions and user spaces.

The features than I need from ruote-web are:
* Launch process with certain parameters from web
* Look up the process status
* Resume workitems from user accounts adding fields to workitems.
* Abort some process if there is an error
* And... well, it is too early to have clear ideas, sorry :)

And I should add functionality to resume workitems from other
applications with REST.

Regards,
Diego.

On May 13, 5:46 pm, "John Mettraux" <jmettr...@openwfe.org> wrote:

Pat Cappelaere

unread,
May 13, 2008, 12:30:04 PM5/13/08
to openwfe...@googlegroups.com
Looks like you need the full WfXML/XForms then... :)
OpeniD would have to be replaced with LDAP and associated access control (or
combination of both depending on your user base and if you want to maintain
user credentials such as passwords or offer single sign-on)
Interesting...
Pat.


> From: Diego Moreno <diego...@gmail.com>
> Reply-To: <openwfe...@googlegroups.com>
> Date: Tue, 13 May 2008 09:20:11 -0700 (PDT)
> To: OpenWFEru users <openwfe...@googlegroups.com>
> Subject: [openwferu-users] Re: Are ruote-web and kisha compatibles?
>
>

John Mettraux

unread,
May 13, 2008, 7:15:40 PM5/13/08
to openwfe...@googlegroups.com
On Wed, May 14, 2008 at 1:30 AM, Pat Cappelaere <cappe...@gmail.com> wrote:
>
> Looks like you need the full WfXML/XForms then... :)

I can't remember having read the word XForms before in this thread.


> OpeniD would have to be replaced with LDAP and associated access control (or
> combination of both depending on your user base and if you want to maintain
> user credentials such as passwords or offer single sign-on)

Your fork of Ruote-web is kind of a specialization.


Best regards,

Pat Cappelaere

unread,
May 13, 2008, 10:03:45 PM5/13/08
to openwfe...@googlegroups.com
John,

> From: John Mettraux <jmet...@openwfe.org>
> Reply-To: <openwfe...@googlegroups.com>

> Date: Wed, 14 May 2008 08:15:40 +0900
> To: <openwfe...@googlegroups.com>
> Subject: [openwferu-users] Re: Are ruote-web and kisha compatibles?
>
>

> On Wed, May 14, 2008 at 1:30 AM, Pat Cappelaere <cappe...@gmail.com> wrote:
>>
>> Looks like you need the full WfXML/XForms then... :)
>
> I can't remember having read the word XForms before in this thread.

May be I read it between the lines:


"* Launch process with certain parameters from web"

This calls for a form associated with a process to be launched. This is
what XForms are good at (unless you want to customize your app for every
workflow...)

>
>> OpeniD would have to be replaced with LDAP and associated access control (or
>> combination of both depending on your user base and if you want to maintain
>> user credentials such as passwords or offer single sign-on)
>
> Your fork of Ruote-web is kind of a specialization.

How special do you think this is?

Pat.


Reply all
Reply to author
Forward
0 new messages