Updated Branches: refs/heads/ode-1.3.6.x 98f2c006c -> e2185e89f
fixing ODE-960, thanks Denis for the patch! Project: http://git-wip-us.apache.org/repos/asf/ode/repo Commit: http://git-wip-us.apache.org/repos/asf/ode/commit/e2185e89 Tree: http://git-wip-us.apache.org/repos/asf/ode/tree/e2185e89 Diff: http://git-wip-us.apache.org/repos/asf/ode/diff/e2185e89 Branch: refs/heads/ode-1.3.6.x Commit: e2185e89f0b1121fb52153812d1921445bf382a4 Parents: 98f2c00 Author: Tammo van Lessen <[email protected]> Authored: Sat Sep 14 14:06:19 2013 +0200 Committer: Tammo van Lessen <[email protected]> Committed: Sat Sep 14 14:06:19 2013 +0200 ---------------------------------------------------------------------- .../java/org/apache/ode/bpel/runtime/ASSIGN.java | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ode/blob/e2185e89/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/ASSIGN.java ---------------------------------------------------------------------- diff --git a/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/ASSIGN.java b/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/ASSIGN.java index d2a69e5..378003a 100644 --- a/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/ASSIGN.java +++ b/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/ASSIGN.java @@ -518,17 +518,23 @@ class ASSIGN extends ACTIVITY { NodeList nl = src.getChildNodes(); for (int i = 0; i < nl.getLength(); ++i) replacement.appendChild(doc.importNode(nl.item(i), true)); - NamedNodeMap attrs = src.getAttributes(); - for (int i = 0; i < attrs.getLength(); ++i) { - Attr attr = (Attr)attrs.item(i); - replacement.setAttributeNodeNS((Attr)doc.importNode(attr, true)); - } + copyAttributes(doc, ptr, replacement); + copyAttributes(doc, src, replacement); parent.replaceChild(replacement, ptr); DOMUtils.copyNSContext(ptr, replacement); return (lval == ptr) ? replacement : lval; } + private void copyAttributes(Document doc, Element original, + Element replacement) { + NamedNodeMap attrs = original.getAttributes(); + for (int i = 0; i < attrs.getLength(); ++i) { + Attr attr = (Attr)attrs.item(i); + replacement.setAttributeNodeNS((Attr)doc.importNode(attr, true)); + } + } + private Element copyInto(Element lval, Element ptr, Element src) { ptr.appendChild(ptr.getOwnerDocument().importNode(src, true)); return lval;
