[
https://issues.apache.org/jira/browse/ODE-991?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Work on ODE-991 started by Tammo van Lessen.
--------------------------------------------
> ode:delete fails when removing multiple elements
> ------------------------------------------------
>
> Key: ODE-991
> URL: https://issues.apache.org/jira/browse/ODE-991
> Project: ODE
> Issue Type: Bug
> Components: BPEL Runtime
> Affects Versions: 1.3.2
> Environment: Currently running r832808 with a couple of local patches.
> Reporter: Ciaran Jessup
> Assignee: Tammo van Lessen
> Priority: Minor
> Fix For: 1.3.7
>
> Attachments: FixDeleteForMultipleElements.patch
>
>
> If ode:delete($Foo/x:child) returns multiple elements for deletion my
> workflow fails with a selectionFailure :(
> It seems to be caused by the Delete method being passed a SequenceExtent
> rather than the expected List etc.
> Whilst adding in support for that type (not sure why this only affects me ?)
> I also found that the logic for removing child elements from the cloned
> element that the function returns was squiffy. It seemed as if it was
> mutating the collection so the position offsets were incorrect and the wrong
> elements would get removed from the parent element. I've updated the code to
> resolve that too (there is a better solution as alluded to in my code
> comments in the patch)
> Ironically? I've stopped using ode:delete even with my 'fixes' and moved to
> use an XSL transform as this turned out to be more memory efficient when
> doing multiple deletes so I'm just providing my fixes back in case anyone
> else needs / wants them.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)