下载CXF

http://cxf.apache.org/download.html

生成客户端代码

tar -zxvf apache-cxf-3.2.7.tar.gz
cd apache-cxf-3.2.7/bin wsdl2java
-client -server -impl -p 代码包路径 -d 代码生成路径 wdsl服务url或者wdsl文件路径

  • 说明:先启动泛微E9,访问 wsdl 是不是可以成功访问
    http://127.0.0.1:80/services/WorkflowService?wsdl
    端口写自己的访问E9的端口,展示效果为:

  • 样例:
    wsdl2java -d E:\code\createWorkflow\src -client http://127.0.0.1:80/services/WorkflowService?wsdl

  • idea 项目打开效果

编写测试代码

  • 参考网页
  • 流程接口文档

根据流程3 中的代码修改成自己对应流程的代码

  • 创建流程的参数一级对应的错误码
  • 调用成功返回结果(流程id):
  • 登陆创建的账号查看效果

具体代码

import cn.com.weaver.services.webservices.WorkflowService;
import weaver.workflow.webservices.*;/*** @program: ecology_zp* @author: Mr.zeng* @create: 2020-12-16 11:53* 创建流程测试**/
public class DoCreateRequestTest {public static void main(String[] args) {try{new DoCreateRequestTest().execute1();}catch (Exception e){e.printStackTrace();}}public void execute1() {ObjectFactory factory = new ObjectFactory();WorkflowService service = new WorkflowService();WorkflowRequestInfo workflowRequestInfo = new WorkflowRequestInfo();//工作流程请求信息int userid = 21;//用户ID  数据库中用户id//      workflowRequestInfo.setRequestId(String.valueOf(1918557));//流程请求ID-创建流程时自动产生 不需要传此项workflowRequestInfo.setCanView(true);//显示workflowRequestInfo.setCanEdit(true);//可编辑workflowRequestInfo.setRequestName(factory.createWorkflowRequestInfoRequestName("流程请求标题-webservice-test-axis2"));workflowRequestInfo.setRequestLevel(factory.createWorkflowRequestInfoRequestLevel("0"));//请求重要级别 0:正常 1:重要 2:紧急workflowRequestInfo.setCreatorId(factory.createWorkflowRequestInfoCreatorId("21"));//创建者ID 创建流程时为必输项WorkflowBaseInfo workflowBaseInfo = new WorkflowBaseInfo();//工作流信息workflowBaseInfo.setWorkflowId(factory.createWorkflowBaseInfoWorkflowId("22"));//流程ID workflowBaseInfo.setWorkflowName(factory.createWorkflowBaseInfoWorkflowName("测试webservice流程"));//流程名称//       workflowBaseInfo.setWorkflowTypeId("1951");//流程类型idworkflowBaseInfo.setWorkflowTypeName(factory.createWorkflowBaseInfoWorkflowTypeName("测试"));//流程类型名称workflowRequestInfo.setWorkflowBaseInfo(factory.createWorkflowRequestInfoWorkflowBaseInfo(workflowBaseInfo));/****************main table start*************/WorkflowMainTableInfo workflowMainTableInfo = new WorkflowMainTableInfo();//主表WorkflowRequestTableRecord[] workflowRequestTableRecord = new WorkflowRequestTableRecord[1];//主表字段只有一条记录WorkflowRequestTableField[] workflowRequestTableFields = new WorkflowRequestTableField[1];//主的4个字段workflowRequestTableFields[0]= new WorkflowRequestTableField();workflowRequestTableFields[0].setFieldName(factory.createWorkflowRequestTableFieldFieldName("fj"));//附件workflowRequestTableFields[0].setFieldType(factory.createWorkflowRequestTableFieldFieldType("http:baidu_sylogl.gif"));//http:开头代表该字段为附件 多附件用baidu_sylogl.gif|baidu_sylog1l.gif分隔workflowRequestTableFields[0].setFieldValue(factory.createWorkflowRequestTableFieldFieldValue("http://www.baidu.com/img/fddong_e2dd633ee46695630e60156c91cda80a.gif"));workflowRequestTableFields[0].setView(true);workflowRequestTableFields[0].setEdit(true);ArrayOfWorkflowRequestTableField arrayOfWorkflowRequestTableField=new ArrayOfWorkflowRequestTableField();arrayOfWorkflowRequestTableField.getWorkflowRequestTableField().add(workflowRequestTableFields[0]);WorkflowRequestTableRecord workflowRequestTableRecord1 = new WorkflowRequestTableRecord();workflowRequestTableRecord1.setWorkflowRequestTableFields(factory.createWorkflowRequestTableRecordWorkflowRequestTableFields(arrayOfWorkflowRequestTableField));ArrayOfWorkflowRequestTableRecord arrayOfWorkflowRequestTableRecord = new ArrayOfWorkflowRequestTableRecord();arrayOfWorkflowRequestTableRecord.getWorkflowRequestTableRecord().add(workflowRequestTableRecord1);workflowMainTableInfo.setRequestRecords(factory.createWorkflowMainTableInfoRequestRecords(arrayOfWorkflowRequestTableRecord));workflowRequestInfo.setWorkflowMainTableInfo(factory.createWorkflowRequestInfoWorkflowMainTableInfo(workflowMainTableInfo));//        ArrayOfWorkflowDetailTableInfo arrayOfWorkflowDetailTableInfo = new ArrayOfWorkflowDetailTableInfo();
//        arrayOfWorkflowDetailTableInfo.getWorkflowDetailTableInfo().add(workflowDetailTableInfo[0]);
//        arrayOfWorkflowDetailTableInfo.getWorkflowDetailTableInfo().add(workflowDetailTableInfo[1]);
//        workflowRequestInfo.setWorkflowDetailTableInfos(factory.createWorkflowRequestInfoWorkflowDetailTableInfos(arrayOfWorkflowDetailTableInfo));/****************detail table end*************/String response = service.getWorkflowServiceHttpPort().doCreateWorkflowRequest(workflowRequestInfo,userid);System.out.println("返回结果:"+response);}}

ps:用户id、流程id在数据库中查,名称和类型在表单中都可以看到

org.codehaus.xfire.jaxws.Provider

WebService 代码创建E9流程相关推荐

  1. 【JVM】Java对象创建的流程步骤

    · 本文摘要 · 罗列Java创建对象的各种方式: · 讲解Java对象创建的流程步骤: 一.Java创建对象的各种方式 · 1. 用关键字new,老少皆知的方法:StringBuffer sb = ...

  2. WebService 的创建,部署和使用

    WebService,即Web服务,能使得运行在不同机器上的不同应用无须借助,专门的第三方软件或硬件,就可相互交换数据或集成. 第一次选择WebService,是为了替代数据库远程连接.我们都知道当S ...

  3. 开源项目Hopsan代码梳理、流程分析

    Hosan开源项目是液压.电力等行业的仿真开源软件,由瑞典林平大学开发,可以仿真电力.液压等.更具体的了解,请参考:<Hopsan -- 液压.电力等行业的仿真开源软件>. Hosan开源 ...

  4. git 代码推送流程_Git 101:一个让您开始推送代码的Git工作流程

    git 代码推送流程 I'm going to explain Git the way I wish someone had explained to me back when I was first ...

  5. vs12新建ajax,VS2012下WebService 的创建,部署和使用

    WebService,即Web服务,能使得运行在不同机器上的不同应用无须借助,专门的第三方软件或硬件,就可相互交换数据或集成. 第一次选择WebService,是为了替代数据库远程连接.我们都知道当S ...

  6. SylixOS线程创建的流程分析

    概述 本文档的主要内容是分析SylixOS线程创建的流程,详细介绍了SylixOS的线程创建函数API_ThreadCreate. 环境和参数检查 在SylixOS中,线程的创建函数不能在中断中调用. ...

  7. 【高级PDF库】上海道宁为您提供先进的.Net库,完全控制您的PDF创建工作流程,在WEB或任何服务器系统上创建动态PDF

    Pdfium.Net SDK是 先进的.Net library 用于生成.操作和查看 可移植文档格式的文件 道宁专注于软件工具经销 为您带来高级PDF库 可完全控制您的PDF创建工作流程 提供高级c# ...

  8. 解决POI事件驱动模式读取不到Java代码创建的Excel表格数据问题

    场景 使用POI官网上的事件驱动模式的示例方法,读取单sheet单次创建的Excel表格文件(.xlsx),Microsoft Excel和WPS Excel创建的表格文件可以正常读取数据,但是jav ...

  9. 数字签名(代码签名)流程和数字签名的验证

    数字签名(代码签名)流程 数字签名(代码签名)流程 Authenticode : 这里翻译为数字认证代码.  code sign : 字面的翻译为代码签名,但是通常的我们称为数字签名,以下的文中均称为 ...

最新文章

  1. 方程组求解matlab实现(朴素高斯求解、LU分解、雅可比迭代方法、高斯-塞德尔方法、连续过松弛(SOR))
  2. 【Matlab】绘制3D 3维图
  3. 通过实际的例子,介绍 SAP ABAP 里的 Repository Information System 的使用技巧
  4. java 控制 crt_secureCRT关闭连接自动关闭tomcat服务
  5. c#语言float转换int,C#Float表达式:将结果float转换为int时的奇怪行为
  6. 每天CookBook之JavaScript-059
  7. python按行读取文件取消空白行_python去掉空白行的多种实现代码
  8. 图表中如何实现动态变更分类轴与系列值
  9. caj文件浏览器_史上最全:提高律师工作效率必不可少的27款浏览器插件
  10. perl脚本中的特殊字符也与V字符串
  11. css3弹性盒模型flex快速入门与上手(align-content与align-items)
  12. Maple公式推导教程
  13. 西门子cnc sinumerik_2020邯郸cnc加工中心编程要多久就是工厂傅
  14. 腾讯linux集成化界面,腾讯TOS系统今日开启内测:界面扁平化风格
  15. Keepserver 与 IFIX OPC PowerTool相互关联
  16. SQL 根据身份证号码提取出出生日期
  17. 浅聊古代————汉朝
  18. 真分数转埃及分数的和 (贪心)
  19. 记一次Electron 桌面应用实现调用打印机打印小票功能
  20. 解决rimraf使用时提示unexpected token “.”

热门文章

  1. GoFrame v1.6.0 发布,Go 应用开发框架
  2. yum -y install php-mysql 版本冲突
  3. jQuery中的read 和JavaScript中 的onload函数的区别
  4. 《机器人编程实战》一一1.2 给机器人指令
  5. 两化融合:唐山探路重工业城市智慧转型
  6. cursor游标(mysql)
  7. lspci | grep -i ethernet
  8. java提示单个cass怎么办,求助解决hibernate报错,java.lang.casscastexception
  9. 使用 IntraWeb (29) - 基本控件之 TIWAutherList、TIWAutherINI、TIWAutherEvent
  10. 三维点云学习(4)1- Spectral的理论推导与解释