summaryrefslogtreecommitdiffstats
path: root/java/sca/modules/builder/src/main
diff options
context:
space:
mode:
Diffstat (limited to 'java/sca/modules/builder/src/main')
-rw-r--r--java/sca/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/PolicyAttachmentBuilderImpl.java5
1 files changed, 4 insertions, 1 deletions
diff --git a/java/sca/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/PolicyAttachmentBuilderImpl.java b/java/sca/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/PolicyAttachmentBuilderImpl.java
index df98ec89b7..59cfdc7393 100644
--- a/java/sca/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/PolicyAttachmentBuilderImpl.java
+++ b/java/sca/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/PolicyAttachmentBuilderImpl.java
@@ -118,7 +118,7 @@ public class PolicyAttachmentBuilderImpl implements CompositeBuilder {
}
}
}
- Document document = saveAsDOM(composite);
+ Document document = null;
for (PolicySet ps : definitions.getPolicySets()) {
// First calculate the applicable nodes
@@ -135,6 +135,9 @@ public class PolicyAttachmentBuilderImpl implements CompositeBuilder {
*/
XPathExpression exp = ps.getAttachToXPathExpression();
if (exp != null) {
+ if (document == null) {
+ document = saveAsDOM(composite);
+ }
NodeList nodes = (NodeList)exp.evaluate(document, XPathConstants.NODESET);
for (int i = 0; i < nodes.getLength(); i++) {
Node node = nodes.item(i);