jbpm5.1介绍(11)

Jbpm-gwt-console源码编译

从svn下载,svn的下载地址是

http://anonsvn.jboss.org/repos/soag/bpm-console/tags/bpm-console-2.1

下载之后使用mvn进行编译

当中遇到本很多问题,可以通过以下的网站进行jar包的查找和处理

https://repository.sonatype.org/index.html#welcome             mvn仓库

http://www.java2s.com/                                                            jar包查找

http://grepcode.com/                                                               jar包查找

因为本地使用的是nexus,所以可能有一些jar包找不到,那么可以先下载jar包下来,根据提示加入到第三方jar仓库中就可以了。

经过一上午的折腾,基本上没什么问题了

导入到eclipse并且运行

程序结构

控制台由三个不同部分:UI的控制台,控制台服务器和集成层。

结构图

控制台用户界面是一个Ajax Web应用程序,使用HTTP进行通信。服务器模块本身,发布了一个REST门面给控制台用户调用来执行实际的请求。

流程引擎是通过一个集成层分离。集成API是控制台项目的一部分,而该层的实际执行情况与流程引擎所在。服务器模块在运行时使用一个服务加载机制,通过集成层的访问流程引擎。

在官方给的样例中使用的是GWT的RequestBuilder调用RPC的服务列表

GWT除了可以使用RPC来通信外,还可以使用普通的GET POST来发送请求。

    //创建请求的Builder  
    RequestBuilder builder=new RequestBuilder(RequestBuilder.POST,GWT.getHostPageBaseURL()+"a.txt");  
    //设置超时时间  
    builder.setTimeoutMillis(10000);  
    Request req=builder.sendRequest(null, new RequestCallback() {  
          
        @Override  
        public void onResponseReceived(Request request, Response response) {  
            //正常返回(code=200)  
            if(response.getStatusCode()==Response.SC_OK){  
                com.google.gwt.user.client.Window.alert(response.getText());  
            }  
              
        }  
          
        @Override  
        public void onError(Request request, Throwable exception) {  
            //如果发生超时异常  
            if(exception instanceof RequestTimeoutException){  
                  
            }  
              
        }  
    });  

发布的RPC接口列表

1,服务器信息
一般REST服务器信息

方式路径描述结果
GET/gwt-console-server/rs/server/status得到服务的运行状态application/json
GET/gwt-console-server/rs/server/resources得到服务的资源列表text/html





2,流程管理
流程相关数据

方式路径描述结果
POST/gwt-console-server/rs/process/definition/{id}/new_instance定义新的流程application/json
POST/gwt-console-server/rs/process/instance/{id}/state/{next}得到指定流程实例状态application/json
GET/gwt-console-server/rs/process/definition/{id}/image得到相关图片image/*
GET/gwt-console-server/rs/process/instance/{id}/activeNodeInfo得到所有活动结点信息application/json
GET/gwt-console-server/rs/process/definition/history/{id}/nodeInfo得到所有历史节点信息application/json
GET/gwt-console-server/rs/process/definitions得到流程定义application/json
POST/gwt-console-server/rs/process/definition/{id}/remove删除流程定义application/json
GET/gwt-console-server/rs/process/definition/{id}/instances得到流程中所有实例application/json
GET/gwt-console-server/rs/process/instance/{id}/dataset得到统计信息text/xml
POST/gwt-console-server/rs/process/instance/{id}/end/{result}实例执行结果application/json
POST/gwt-console-server/rs/process/instance/{id}/delete删除指定实例application/json
POST/gwt-console-server/rs/process/tokens/{id}/transition得到流程下一个状态application/json
POST/gwt-console-server/rs/process/tokens/{id}/transition/default得到流程默认状态application/json












 


3,任务列表
访问任务列表

方式路径描述结果
GET/gwt-console-server/rs/tasks/{idRef}任务列表application/json
GET/gwt-console-server/rs/tasks/{idRef}/participation参与的任务列表application/json





4,任务管理
管理任务实例

方式路径描述结果
POST/gwt-console-server/rs/task/{taskId}/assign/{ifRef}指定分配的任务application/json
POST/gwt-console-server/rs/task/{taskId}/release发布的任务application/json
POST/gwt-console-server/rs/task/{taskId}/close关闭的任务application/json
POST/gwt-console-server/rs/task/{taskId}/close/{outcome}来自外部关闭的任务application/json







5,用户管理
管理用户和组

方式路径描述结果
POST/gwt-console-server/rs/identity/sid/invalidate已经停止的用户text/plain
GET/gwt-console-server/rs/identity/sid得到用户的身份text/plain
GET/gwt-console-server/rs/identity/secure/sid得到安全的用户的身份text/plain
GET/gwt-console-server/rs/identity/user/roles得到用户的角色application/json
GET/gwt-console-server/rs/identity/user/{actorId}/groups/得到指定角色的用户和组application/json
GET/gwt-console-server/rs/identity/group/{groupName}/members得到指定组的成员application/json
GET/gwt-console-server/rs/identity/user/{actorId}/actors得到相同角色的用户application/json









6,流程引擎
流程的运行时状态

方式路径描述结果
GET/gwt-console-server/rs/engine/deployments已经部署的引擎application/json
POST/gwt-console-server/rs/engine/deployment/{id}/delete删除指定id的引擎application/json
POST/gwt-console-server/rs/engine/deployment/{id}/suspend暂停指定id的引擎application/json
GET/gwt-console-server/rs/engine/jobs得到正在工作的引擎application/json
POST/gwt-console-server/rs/engine/job/{id}/execute执行指定的引擎application/json
POST/gwt-console-server/rs/engine/deployment/{id}/resume恢复指定id的引擎application/json








7,表格处理
基于web的处理

方式路径描述结果
GET/gwt-console-server/rs/form/task/{id}/render指定id的任务text/html
GET/gwt-console-server/rs/form/process/{id}/render指定id的流程text/html
POST/gwt-console-server/rs/form/task/{id}/complete完成指定id的任务text/html
POST/gwt-console-server/rs/form/process/{id}/complete完成指定id的流程text/html







以上接口还有待测试。


转载于:https://www.cnblogs.com/skyme/archive/2011/11/17/2251327.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值