EMPTY VARIABLE/EXPRESSION Result When Calling a Procedure That Returns More Than One Variable (Doc ID 972118.1)

Last updated on FEBRUARY 09, 2012

Applies to:

Oracle(R) BPEL Process Manager - Version: 10.1.3.1 to 10.1.3.3.1 - Release: AS10gR3 to AS10gR3
Information in this document applies to any platform.

Symptoms

BPEL  is not able to handle the variable assignment when a procedure returns more than one return variable [i.e. more than one output parameter].
 
BPEL returns the following error:

 "empty variable/expression result", empty variable/expression result.
xpath variable/expression expression "/ns2:OutputParameters/ns2:PO_NAME" is empty at line 90, when attempting reading/copying it.
Please make sure the variable/expression result "/ns2:OutputParameters/ns2:PO_NAME" is not empty."

In the domain.log you can see the following stack trace:
<2009-10-21 16:49:26,461> converting the resultset size 0
<2009-10-21 16:49:26,461> XPathQuery[/ns2:OutputParameters/ns2:PO_NAME], XPath Result is null
<2009-10-21 16:49:26,478> com.oracle.bpel.client.BPELFault: faultName: {{http://schemas.xmlsoap.org/ws/2003/03/business-process/}selectionFailure}
messageType: {null}
parts: {{summary=oracle.xml.parser.v2.XMLElement@1c05a1c}}

<2009-10-21 16:49:26,479> error thrown
com.oracle.bpel.client.BPELFault: faultName: {{http://schemas.xmlsoap.org/ws/2003/03/business-process/}selectionFailure}
messageType: {null}
parts: {{summary=oracle.xml.parser.v2.XMLElement@1c05a1c}}

at com.collaxa.cube.engine.ext.wmp.BPELAssignWMP.evalFromValue(BPELAssignWMP.java:666)
at com.collaxa.cube.engine.ext.wmp.BPELAssignWMP.__executeStatements(BPELAssignWMP.java:141)
at com.collaxa.cube.engine.ext.wmp.BPELActivityWMP.perform(BPELActivityWMP.java:195)
at com.collaxa.cube.engine.CubeEngine.performActivity(CubeEngine.java:3271)
at com.collaxa.cube.engine.CubeEngine.handleWorkItem(CubeEngine.java:1697)
at com.collaxa.cube.engine.dispatch.message.instance.PerformMessageHandler.handleLocal(PerformMessageHandler.java:75)
at com.collaxa.cube.engine.dispatch.DispatchHelper.handleLocalMessage(DispatchHelper.java:184)
at com.collaxa.cube.engine.dispatch.DispatchHelper.sendMemory(DispatchHelper.java:269)
at com.collaxa.cube.engine.CubeEngine.endRequest(CubeEngine.java:5244)
at com.collaxa.cube.engine.CubeEngine.createAndInvoke(CubeEngine.java:1083)
at com.collaxa.cube.engine.ejb.impl.CubeEngineBean.createAndInvoke(CubeEngineBean.java:132)
at com.collaxa.cube.engine.ejb.impl.CubeEngineBean.syncCreateAndInvoke(CubeEngineBean.java:161)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at com.evermind.server.ejb.interceptor.joinpoint.EJBJoinPointImpl.invoke(EJBJoinPointImpl.java:35)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.JAASInterceptor$1.run(JAASInterceptor.java:31)
at com.evermind.server.ThreadState.runAs(ThreadState.java:620)

Cause

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms