0

让 BPEL 流程创建人工任务,创建 RemoteTask 会引发以下异常(请注意,BPEL 流程运行正常,直到人工任务,我可以创建人工任务调用其 WS 端点)):

Error sending message to Axis2 for ODE mex 
{PartnerRoleMex#hqejbhcnphrbsqc3x2nneo [PID {http://b2bg2.imtech.realdolmen.com/bps/sample}HumanTaskTest-17] calling org.apache.ode.bpel.epr.WSAEndpoint@4e72a575.ErrorHandling(...) Status REQUEST}
org.apache.axis2.AxisFault: Transport error: 411 Error: Length Required
            at org.apache.axis2.transport.http.HTTPSender.handleResponse(HTTPSender.java:331)
            at org.apache.axis2.transport.http.HTTPSender.sendViaPost(HTTPSender.java:196)
            at org.apache.axis2.transport.http.HTTPSender.send(HTTPSender.java:77)
            at org.apache.axis2.transport.http.CommonsHTTPTransportSender.writeMessageWithCommons(CommonsHTTPTransportSender.java:451)
            at org.apache.axis2.transport.http.CommonsHTTPTransportSender.invoke(CommonsHTTPTransportSender.java:278)
            at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:442)
            at org.apache.axis2.description.OutOnlyAxisOperationClient.executeImpl(OutOnlyAxisOperation.java:297)
            at org.apache.axis2.client.OperationClient.execute(OperationClient.java:149)
            at org.wso2.carbon.bpel.core.ode.integration.utils.AxisServiceUtils.invokeService(AxisServiceUtils.java:316)
            at org.wso2.carbon.bpel.core.ode.integration.PartnerService.invoke(PartnerService.java:324)
            at org.wso2.carbon.bpel.core.ode.integration.BPELMessageExchangeContextImpl.invokePartner(BPELMessageExchangeContextImpl.java:43)
            at org.apache.ode.bpel.engine.BpelRuntimeContextImpl.invoke(BpelRuntimeContextImpl.java:897)
            at org.apache.ode.bpel.runtime.INVOKE.run(INVOKE.java:130)
            at sun.reflect.GeneratedMethodAccessor65.invoke(Unknown Source)
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
            at java.lang.reflect.Method.invoke(Method.java:498)
            at org.apache.ode.jacob.vpu.JacobVPU$JacobThreadImpl.run(JacobVPU.java:451)
            at org.apache.ode.jacob.vpu.JacobVPU.execute(JacobVPU.java:139)
            at org.apache.ode.bpel.engine.BpelRuntimeContextImpl.execute(BpelRuntimeContextImpl.java:1002)
            at org.apache.ode.bpel.engine.PartnerLinkMyRoleImpl.invokeNewInstance(PartnerLinkMyRoleImpl.java:208)
            at org.apache.ode.bpel.engine.BpelProcess$1.invoke(BpelProcess.java:283)
            at org.apache.ode.bpel.engine.BpelProcess.invokeProcess(BpelProcess.java:224)
            at org.apache.ode.bpel.engine.BpelProcess.invokeProcess(BpelProcess.java:279)
            at org.apache.ode.bpel.engine.BpelProcess.handleJobDetails(BpelProcess.java:434)
            at org.apache.ode.bpel.engine.BpelEngineImpl.onScheduledJob

(BpelEngineImpl.java:558)
        at org.apache.ode.bpel.engine.BpelServerImpl.onScheduledJob(BpelServerImpl.java:467)
        at org.apache.ode.scheduler.simple.SimpleScheduler$RunJob$1.call(SimpleScheduler.java:633)
        at org.apache.ode.scheduler.simple.SimpleScheduler$RunJob$1.call(SimpleScheduler.java:627)
        at org.apache.ode.scheduler.simple.SimpleScheduler.execTransaction(SimpleScheduler.java:298)
        at org.apache.ode.scheduler.simple.SimpleScheduler.execTransaction(SimpleScheduler.java:253)
        at org.apache.ode.scheduler.simple.SimpleScheduler$RunJob.call(SimpleScheduler.java:627)
        at org.apache.ode.scheduler.simple.SimpleScheduler$RunJob.call(SimpleScheduler.java:611)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:745)

对我来说,当在 BPEL 流程和 HT 实现之间内部调用 Web 服务时,看起来 Content-Length 标头既不存在“分块”也不存在

4

1 回答 1

0

显然,HT(人工任务)的 WSDL 必须在服务声明中具有有效的服务端点地址。Eclipse (WSO2 DEV) 创建的默认 WSDL 将端点设置为 www.example.org。

我假设使用了内部传输(因为它在进程之间),但显然它不是真的:(

于 2016-11-28T09:09:46.433 回答