java - WSO2 BPS/SOAP - 如何使用 HumanTaskClientAPI 获取人工任务的结果?

标签 java soap wso2

我尝试过使用 getOuputResponse.getTaskData() 但它返回 XML 并且 GetOutcome 方法显然尚不受支持。还有其他我没有看到的方法还是这是唯一的方法?

到目前为止我的代码:

GetOutput getOutput = new GetOutput();
getOutput.setIdentifier(resultRow[0].getId());

GetOutputResponse output = null;

try {

        output = humanTaskClient.getOutput(getOutput);

    } catch (IllegalOperationFault | IllegalArgumentFault e) {
        e.printStackTrace();
    } catch (IllegalStateFault e) {
        e.printStackTrace();
    } catch (IllegalAccessFault e) {
        e.printStackTrace();
    }

    System.out.println("OUTPUT: " + output.getTaskData());

最佳答案

你是对的,getOutcome() 不起作用。输出是您为任务定义的 XML(即在人工任务定义的 WSDL 中)。所以你可以解析它:

TaskOperationsImpl ops = new TaskOperationsImpl();
String output = (String) ops.getOutput(new URI(taskIdString), null);
DocumentBuilderFactory dfactory = DocumentBuilderFactory.newInstance();
dfactory.setNamespaceAware(true);
DocumentBuilder docBuilder = dfactory.newDocumentBuilder();
Node xmldoc = docBuilder.parse(new ByteArrayInputStream(output.getBytes()));

然后您就可以处理结果了。

关于java - WSO2 BPS/SOAP - 如何使用 HumanTaskClientAPI 获取人工任务的结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30378113/

相关文章:

php - 无法从 Soap 响应中提取数据

java - pdfbox 请求后获取 ava.lang.ClassNotFoundException : org. apache.pdfbox.io.RandomAccessRead 控制台错误

java - 在JSP EL中生成序数字符

java - 如何使用 LambdaMetaFactory 调用构造函数?

php - 错误 : Fatal error: Uncaught SoapFault exception: [WSDL] SOAP-ERROR

wso2 - Siddhi - 尝试部署时业务规则管理器失败

java - Android Toast 不显示

xml - MICROS RES 3700 POS 集成 - 下订单调味品

WSO2 API 管理器 oAuth2 Secret_token 验证服务问题

wso2 - 导出 WSO2 API