You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ode.apache.org by "Vitaliy Tkachenko (JIRA)" <ji...@apache.org> on 2019/01/28 13:20:00 UTC

[jira] [Created] (ODE-1077) ODE doesn't distinguish between complex node selection and its text subnode

Vitaliy Tkachenko created ODE-1077:
--------------------------------------

             Summary: ODE doesn't distinguish between complex node selection and its text subnode
                 Key: ODE-1077
                 URL: https://issues.apache.org/jira/browse/ODE-1077
             Project: ODE
          Issue Type: Bug
          Components: BPEL Runtime
    Affects Versions: 1.3.8
            Reporter: Vitaliy Tkachenko


ODE doesn't distinguish either complex node is selected $extPLRequest.parameters/ns:userIdin or it's text subnode (per XPath specification, means "node inner text") $extPLRequest.parameters/ns:userIdin/text().

It was a bug created and fixed ODE-960 but the fix looks incorrect. When the selected node is intended to be replaced the whole selection should be replaced so having selected full complex node $extPLRequest.parameters/ns:userIdin all its content including subnodes should be replaced. Node attributes are meant as root node subnodes so should not be restored as it was done in 690's fix.

Instead if user wants to do the node text replacement only he should select not the whole complex node but its text subnode (inner text) only using the text() funciton per XPath specification.

But ODE doesn't distinguish between these 2 formulas and operates on the whole node similarly in both cases. To reproduce the bug rollback the fix made in 960 and apply text() function in lvalue accepting the replacement. The whole node will be replaced as in the case if no "text()" function is applied.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)