WebService code creation E9 process

Download CXF

http://cxf.apache.org/download.html
Insert picture description here

Generate client code

tar -zxvf apache-cxf-3.2.7.tar.gz
cd apache-cxf-3.2.7/bin wsdl2java
-client -server -impl -p code package path -d code generation path wdsl service url or wdsl file path

  • Note: First start Famicom E9 and access wsdl. Can you successfully access
    http://127.0.0.1:80/services/WorkflowService?wsdl
    port and write your own port for accessing E9. The display effect is:
    Insert picture description here

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

  • Idea project opening effect
    Insert picture description here

Write test code

Modify the code in process 3 to the code of your own corresponding process
Insert picture description here

  • Error code corresponding to the parameter level of the creation process
    wsdl2java -d E:\code\ecology_zp\src\main\java -client http://localhost/services/WorkflowService?wsdla
  • Successful call returns result (process id):Insert picture description here
  • Log in to the created account to view the effect
    Insert picture description here

Specific code

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");//流程类型id
        workflowBaseInfo.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: The user id and process id can be checked in the database, and the name and type can be seen in the form
Insert picture description here

org.codehaus.xfire.jaxws.Provider

Guess you like

Origin blog.csdn.net/weixin_42292697/article/details/111308352