I tried modifying the assign statement in BPEL to read like this:
<bpel:assign>
<bpel:copy>
<bpel:from variable="ca-response" part="payload"/>
<bpel:to variable="response" part="payload"/>
</bpel:copy>
</bpel:assign>
with this I see the following exception, I'm obviously doing something wrong,
but haven't been able to point out the issue:
ERROR - JacobVPU - Method "run" in class
"org.apache.ode.bpel.runtime.ASSIGN" threw an unexpe
cted exception.
java.lang.IllegalArgumentException: null parent
at org.apache.ode.utils.DOMUtils.findChildByName(DOMUtils.java:740)
at org.apache.ode.utils.DOMUtils.findChildByName(DOMUtils.java:735)
at org.apache.ode.bpel.runtime.ASSIGN.evalQuery(ASSIGN.java:566)
at org.apache.ode.bpel.runtime.ASSIGN.evalRValue(ASSIGN.java:166)
at org.apache.ode.bpel.runtime.ASSIGN.copy(ASSIGN.java:356)
at org.apache.ode.bpel.runtime.ASSIGN.run(ASSIGN.java:79)
at sun.reflect.GeneratedMethodAccessor40.invoke(Unknown Source)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
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:817)
at
org.apache.ode.bpel.engine.BpelProcess.handleWorkEvent(BpelProcess.java:310)
at
org.apache.ode.bpel.engine.BpelEngineImpl.onScheduledJob(BpelEngineImpl.java:311)
at
org.apache.ode.bpel.engine.BpelServerImpl.onScheduledJob(BpelServerImpl.java:390)
at
org.apache.ode.bpel.scheduler.quartz.QuartzSchedulerImpl.doExecute(QuartzSchedulerImpl.java:351)
at
org.apache.ode.bpel.scheduler.quartz.QuartzSchedulerImpl.access$000(QuartzSchedulerImpl.java:65)
at
org.apache.ode.bpel.scheduler.quartz.QuartzSchedulerImpl$1$1.call(QuartzSchedulerImpl.java:234)
at
org.apache.ode.bpel.scheduler.quartz.QuartzSchedulerImpl.execTransaction(QuartzSchedulerImpl.java:275)
at
org.apache.ode.bpel.scheduler.quartz.QuartzSchedulerImpl$2.call(QuartzSchedulerImpl.java:303)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:269)
at java.util.concurrent.FutureTask.run(FutureTask.java:123)
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
at java.lang.Thread.run(Thread.java:595)
ERROR - BpelEngineImpl - Scheduled job failed;
jobDetail={type=INVOKE_RESPONSE, inmem=true, mexid=4
611686018427387906, channel=26, iid=1}
java.lang.RuntimeException: java.lang.IllegalArgumentException: null parent
at
org.apache.ode.jacob.vpu.JacobVPU$JacobThreadImpl.run(JacobVPU.java:464)
at org.apache.ode.jacob.vpu.JacobVPU.execute(JacobVPU.java:139)
at
org.apache.ode.bpel.engine.BpelRuntimeContextImpl.execute(BpelRuntimeContextImpl.java:817)
at
org.apache.ode.bpel.engine.BpelProcess.handleWorkEvent(BpelProcess.java:310)
at
org.apache.ode.bpel.engine.BpelEngineImpl.onScheduledJob(BpelEngineImpl.java:311)
at
org.apache.ode.bpel.engine.BpelServerImpl.onScheduledJob(BpelServerImpl.java:390)
at
org.apache.ode.bpel.scheduler.quartz.QuartzSchedulerImpl.doExecute(QuartzSchedulerImpl.java:351)
at
org.apache.ode.bpel.scheduler.quartz.QuartzSchedulerImpl.access$000(QuartzSchedulerImpl.java:65)
at
org.apache.ode.bpel.scheduler.quartz.QuartzSchedulerImpl$1$1.call(QuartzSchedulerImpl.java:234)
at
org.apache.ode.bpel.scheduler.quartz.QuartzSchedulerImpl.execTransaction(QuartzSchedulerImpl.java:275)
at
org.apache.ode.bpel.scheduler.quartz.QuartzSchedulerImpl$2.call(QuartzSchedulerImpl.java:303)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:269)
at java.util.concurrent.FutureTask.run(FutureTask.java:123)
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
at java.lang.Thread.run(Thread.java:595)
Caused by: java.lang.IllegalArgumentException: null parent
at org.apache.ode.utils.DOMUtils.findChildByName(DOMUtils.java:740)
at org.apache.ode.utils.DOMUtils.findChildByName(DOMUtils.java:735)
at org.apache.ode.bpel.runtime.ASSIGN.evalQuery(ASSIGN.java:566)
at org.apache.ode.bpel.runtime.ASSIGN.evalRValue(ASSIGN.java:166)
at org.apache.ode.bpel.runtime.ASSIGN.copy(ASSIGN.java:356)
at org.apache.ode.bpel.runtime.ASSIGN.run(ASSIGN.java:79)
at sun.reflect.GeneratedMethodAccessor40.invoke(Unknown Source)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at
org.apache.ode.jacob.vpu.JacobVPU$JacobThreadImpl.run(JacobVPU.java:451)
... 15 more
<<
Vishal Bhasin <[EMAIL PROTECTED]> wrote: Matthieu,
Many thanks for pointing out the issue..I made progress, am almost there but
encountering another issue now:
>>
ERROR - ASSIGN - Assignment Fault:
{http://docs.oasis-open.org/wsbpel/2.0/process/executabl
e}selectionFailure,lineNo=39
org.apache.ode.bpel.elang.xpath20.compiler.WrappedResolverException:
org.apache.ode.bpel.common.FaultException: Unk
nown variable ca-response.payload
at
org.apache.ode.bpel.elang.xpath20.runtime.JaxpVariableResolver.resolveVariable(JaxpVariableResolver.java
:109)
at
net.sf.saxon.xpath.JAXPVariable.evaluateVariable(JAXPVariable.java:117)
at
net.sf.saxon.expr.VariableReference.evaluateVariable(VariableReference.java:244)
at
net.sf.saxon.expr.VariableReference.iterate(VariableReference.java:217)
at
net.sf.saxon.xpath.XPathExpressionImpl.evaluate(XPathExpressionImpl.java:256)
at
org.apache.ode.bpel.elang.xpath20.runtime.XPath20ExpressionRuntime.evaluate(XPath20ExpressionRuntime.jav
a:175)
at
org.apache.ode.bpel.elang.xpath20.runtime.XPath20ExpressionRuntime.evaluate(XPath20ExpressionRuntime.jav
a:101)
at
org.apache.ode.bpel.runtime.ExpressionLanguageRuntimeRegistry.evaluate(ExpressionLanguageRuntimeRegistry
.java:80)
at org.apache.ode.bpel.runtime.ASSIGN.evalRValue(ASSIGN.java:192)
at org.apache.ode.bpel.runtime.ASSIGN.copy(ASSIGN.java:356)
at org.apache.ode.bpel.runtime.ASSIGN.run(ASSIGN.java:79)
at sun.reflect.GeneratedMethodAccessor40.invoke(Unknown Source)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
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:817)
at
org.apache.ode.bpel.engine.BpelProcess.handleWorkEvent(BpelProcess.java:310)
at
org.apache.ode.bpel.engine.BpelEngineImpl.onScheduledJob(BpelEngineImpl.java:311)
at
org.apache.ode.bpel.engine.BpelServerImpl.onScheduledJob(BpelServerImpl.java:390)
at
org.apache.ode.bpel.scheduler.quartz.QuartzSchedulerImpl.doExecute(QuartzSchedulerImpl.java:351)
at
org.apache.ode.bpel.scheduler.quartz.QuartzSchedulerImpl.access$000(QuartzSchedulerImpl.java:65)
at
org.apache.ode.bpel.scheduler.quartz.QuartzSchedulerImpl$1$1.call(QuartzSchedulerImpl.java:234)
at
org.apache.ode.bpel.scheduler.quartz.QuartzSchedulerImpl.execTransaction(QuartzSchedulerImpl.java:275)
at
org.apache.ode.bpel.scheduler.quartz.QuartzSchedulerImpl$2.call(QuartzSchedulerImpl.java:303)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:269)
at java.util.concurrent.FutureTask.run(FutureTask.java:123)
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
at java.lang.Thread.run(Thread.java:595)
Caused by: org.apache.ode.bpel.common.FaultException: Unknown variable
ca-response.payload
at
org.apache.ode.bpel.elang.xpath20.runtime.JaxpVariableResolver.resolveVariable(JaxpVariableResolver.java
:95)
... 29 more
ERROR - ASSIGN - Assignment Fault:
{http://docs.oasis-open.org/wsbpel/2.0/process/executabl
e}selectionFailure,lineNo=39
<<
Here is the BPEL:
>>
targetNamespace="urn:sabre:soa:airavail"
expressionLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath2.0"
xmlns:tns="urn:sabre:soa:airavail"
xmlns:ca="urn:logicblaze:soa:creditagency"
xmlns:bk="urn:logicblaze:soa:bank"
xmlns:svc="urn:logicblaze:soa:service"
xmlns:bpel="http://docs.oasis-open.org/wsbpel/2.0/process/executable">
$request.payload
$ca-request.payload
$ca-response.payload
$response.payload
<<
and here is the response from external web service:
>>
SUN
SUN
SUN
SUN
SUN
=== message truncated ===
Regards,
Vishal Bhasin
---------------------------------
Yahoo! oneSearch: Finally, mobile search that gives answers, not web links.