[ 
https://issues.apache.org/jira/browse/ODE-541?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Mark Ford updated ODE-541:
--------------------------

    Attachment: HelloWorld2.zip

Attached is the HelloWorld2 process from the examples directory with a small 
modification to demonstrate the problem. My change to the process was to switch 
the final to-spec to be an XQuery expression as opposed to the standard 
variable/part copy.

i.e.

<to variable="myVar" part="TestPart"/>

becomes

<to 
expressionLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xquery1.0">$myVar.TestPart</to>

The process responds with a selection failure. Note that the to-spec is valid 
and will work if you drop the expressionLanguage attribute and force it back to 
XPath 2.0 which is the default for this example process. 


> NPE in to-spec when default language is XQuery
> ----------------------------------------------
>
>                 Key: ODE-541
>                 URL: https://issues.apache.org/jira/browse/ODE-541
>             Project: ODE
>          Issue Type: Bug
>          Components: BPEL Runtime
>    Affects Versions: 1.3.2
>            Reporter: Mark Ford
>            Priority: Minor
>             Fix For: 1.4
>
>         Attachments: HelloWorld2.zip
>
>
> The expression language for the process has been set to 
> urn:oasis:names:tc:wsbpel:2.0:sublang:xquery1.0. The code below throws a NPE 
> because the xpath variable in the class is null. Looks like the subclass 
> OXQuery10ExpressionBPEL20 needs to override the getVariable method or perhaps 
> encapsulate access to the expression variable.
> I suspect that the simple workaround is to override the expressionLanguage 
> for the to-spec to force XPath 1.0. 
> Caused by: java.lang.NullPointerException
>       at 
> org.apache.ode.bpel.elang.xpath10.o.OXPath10Expression.getVariable(OXPath10Expression.java:182)
>       at 
> org.apache.ode.bpel.o.OAssign$LValueExpression.getVariable(OAssign.java:135)
>       at org.apache.ode.bpel.runtime.ASSIGN.evalLValue(ASSIGN.java:127)
>       at org.apache.ode.bpel.runtime.ASSIGN.copy(ASSIGN.java:361)
>       at org.apache.ode.bpel.runtime.ASSIGN.run(ASSIGN.java:81)
>       at sun.reflect.GeneratedMethodAccessor72.invoke(Unknown Source)
>       at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>       at java.lang.reflect.Method.invoke(Method.java:597)
>       at 
> org.apache.ode.jacob.vpu.JacobVPU$JacobThreadImpl.run(JacobVPU.java:451)
>       ... 15 more

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to