ode-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From <Juergen.Schumac...@empolis.com>
Subject RE: BPEL & SCA References
Date Fri, 18 Apr 2008 13:09:38 GMT
Hi Luciano,

Maybe this helps a bit:
I had a look into your test case. I think the transaction is OK, it's just seems
that the result message is not assembled correctly - the debug output says (formatted
for better readability):

::result message:: 
<?xml version="1.0" encoding="UTF-8"?> 
<message>
	<getGreetingsResponse>
		<return>Hello Luciano</return>
	</getGreetingsResponse>
</message>

but the BPEL afterwards wants to read a <parameters> elements from 
this response:

       <assign name="assignToHelloResponse">
          <copy>
              <from>$greetingsResponse.parameters</from>
              <to>$helloResponse.TestPart</to>
          </copy>
       </assign>

When I change this to (just for a test, I know that it's not correct ;-)

      	<from>$greetingsResponse</from>

the test case at least receives a result, but cannot find the expected string value:

junit.framework.ComparisonFailure: expected:<Hello Luciano> but was:<>
        at junit.framework.Assert.assertEquals(Assert.java:81)
        at junit.framework.Assert.assertEquals(Assert.java:87)
        at helloworld.HelloWorldTestCase.testServiceInvocation(HelloWorldTestCase.java:61)

However, I'm not sure at which point in the process is the error - I'm a bit 
confused about how which part of the WSDLs relate to which parts of the
messages and interfaces (-; I keep trying ...

Cheers,
Juergen


> -----Original Message-----
> From: Luciano Resende [mailto:luckbr1975@gmail.com] 
> Sent: Thursday, April 17, 2008 5:30 PM
> To: dev@ode.apache.org; tuscany-dev
> Subject: BPEL & SCA References
> 
> I'm working on finalizing the support to have references to 
> SCA components in a BPEL process. Currently, the reference 
> get invoked, but when ODE engine is trying to process the 
> results, looks like it does not find the contents of the 
> reply message. Based on some code available in ODE, I guess 
> I'm doing the proper schedule/transaction steps, but it would 
> be good to have a second opinion here and maybe some help to 
> see what's going wrong.
> 
> Below you will see a stack trace of the problem. And to 
> reproduce it, please invoke the HelloWorldTestCase available 
> in the Tuscany itests :
> sca/bpel/helloworld-reference module. The BPEL support is 
> available in sca/modules/implementation-bpel.
> 
> DEBUG - GeronimoLog.debug(66) | Invoking a partner operation: 
> getGreetings
> >>> Invoking a partner operation: getGreetings <?xml version="1.0" 
> >>> encoding="UTF-8"?>
> <message><parameters><getGreetings 
> xmlns="http://greetings"><message 
> xmlns="http://helloworld">Luciano</message></getGreetings></pa
> rameters></message>
> >>> <?xml version="1.0" encoding="UTF-8"?>
> <message xmlns="http://helloworld">Luciano</message>
> >>> Result : <?xml version="1.0" encoding="UTF-8"?>
> <return>Hello Luciano</return>
> ::result message:: <?xml version="1.0" encoding="UTF-8"?> 
> <message><getGreetingsResponse><return>Hello
> Luciano</return></getGreetingsResponse></message>
> 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.engine.BpelRuntimeContextImpl.getPartData(
> BpelRuntimeContextImpl.java:1213)
> 	at 
> org.apache.ode.bpel.engine.BpelRuntimeContextImpl.fetchVariabl
> eData(BpelRuntimeContextImpl.java:421)
> 	at 
> org.apache.ode.bpel.runtime.ExprEvaluationContextImpl.readVari
> able(ExprEvaluationContextImpl.java:85)
> 	at 
> org.apache.ode.bpel.elang.xpath20.runtime.JaxpVariableResolver
> .resolveVariable(JaxpVariableResolver.java:93)
> 	at 
> net.sf.saxon.xpath.JAXPVariable.evaluateVariable(JAXPVariable.
> java:117)
> 	at 
> net.sf.saxon.expr.VariableReference.evaluateVariable(VariableR
> eference.java:244)
> 	at 
> net.sf.saxon.expr.VariableReference.iterate(VariableReference.
> java:217)
> 	at 
> net.sf.saxon.xpath.XPathExpressionImpl.evaluate(XPathExpressio
> nImpl.java:256)
> 	at 
> org.apache.ode.bpel.elang.xpath20.runtime.XPath20ExpressionRun
> time.evaluate(XPath20ExpressionRuntime.java:179)
> 	at 
> org.apache.ode.bpel.elang.xpath20.runtime.XPath20ExpressionRun
> time.evaluate(XPath20ExpressionRuntime.java:97)
> 	at 
> org.apache.ode.bpel.runtime.ExpressionLanguageRuntimeRegistry.
> evaluate(ExpressionLanguageRuntimeRegistry.java:80)
> 	at 
> org.apache.ode.bpel.runtime.ASSIGN.evalRValue(ASSIGN.java:193)
> 	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.GeneratedMethodAccessor20.invoke(Unknown Source)
> 	at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMeth
> odAccessorImpl.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(Bpel
> RuntimeContextImpl.java:836)
> 	at 
> org.apache.ode.bpel.engine.BpelProcess.handleWorkEvent(BpelPro
> cess.java:336)
> 	at 
> org.apache.ode.bpel.engine.BpelEngineImpl.onScheduledJob(BpelE
> ngineImpl.java:318)
> 	at 
> org.apache.ode.bpel.engine.BpelServerImpl.onScheduledJob(BpelS
> erverImpl.java:364)
> 	at 
> org.apache.ode.scheduler.simple.SimpleScheduler$4$1.call(Simpl
> eScheduler.java:335)
> 	at 
> org.apache.ode.scheduler.simple.SimpleScheduler$4$1.call(Simpl
> eScheduler.java:334)
> 	at 
> org.apache.ode.scheduler.simple.SimpleScheduler.execTransactio
> n(SimpleScheduler.java:173)
> 	at 
> org.apache.ode.scheduler.simple.SimpleScheduler$4.call(SimpleS
> cheduler.java:333)
> 	at 
> org.apache.ode.scheduler.simple.SimpleScheduler$4.call(SimpleS
> cheduler.java:330)
> 	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(ThreadP
> oolExecutor.java:650)
> 	at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolE
> xecutor.java:675)
> 	at java.lang.Thread.run(Thread.java:595)
> DEBUG - GeronimoLog.debug(66) | Processing an async reply 
> from service {http://helloworld}HelloWorldService
> Status: FAULT
> 
> --
> Luciano Resende
> Apache Tuscany Committer
> http://people.apache.org/~lresende
> http://lresende.blogspot.com/
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
> For additional commands, e-mail: tuscany-dev-help@ws.apache.org
> 
> 

Mime
View raw message