Author: veithen
Date: Fri Apr 8 20:19:38 2011
New Revision: 1090429
URL: http://svn.apache.org/viewvc?rev=1090429&view=rev
Log:
Neethi now supports DOM elements. Therefore we don't need to convert DOM
elements to stream any more. Alos, DOM2Writer seems to have a bug that causes
processing of some policies to fail.
Modified:
axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/util/PolicyUtil.java
Modified:
axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/util/PolicyUtil.java
URL:
http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/util/PolicyUtil.java?rev=1090429&r1=1090428&r2=1090429&view=diff
==============================================================================
---
axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/util/PolicyUtil.java
(original)
+++
axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/util/PolicyUtil.java
Fri Apr 8 20:19:38 2011
@@ -21,7 +21,6 @@ package org.apache.axis2.util;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
-import java.io.InputStream;
import java.util.Iterator;
import java.util.List;
@@ -29,7 +28,6 @@ import javax.xml.stream.FactoryConfigura
import javax.xml.stream.XMLOutputFactory;
import javax.xml.stream.XMLStreamException;
import javax.xml.stream.XMLStreamWriter;
-import javax.xml.transform.Transformer;
import org.apache.axiom.om.OMAbstractFactory;
import org.apache.axiom.om.OMElement;
@@ -46,8 +44,6 @@ import org.apache.neethi.PolicyComponent
import org.apache.neethi.PolicyEngine;
import org.apache.neethi.PolicyReference;
-import com.ibm.wsdl.util.xml.DOM2Writer;
-
public class PolicyUtil {
public static String getSafeString(String unsafeString) {
@@ -172,28 +168,15 @@ public class PolicyUtil {
public static PolicyComponent getPolicyComponent(org.w3c.dom.Element
element) {
if (Constants.isPolicyElement(element.getNamespaceURI(),
(element.getLocalName()))) {
- return PolicyEngine.getPolicy(nodeToStream(element));
+ return PolicyEngine.getPolicy(element);
} else if (Constants.isPolicyRef(element.getNamespaceURI(),
element.getLocalName())) {
- return
PolicyEngine.getPolicyReferene(nodeToStream(element));
+ return PolicyEngine.getPolicyReference(element);
}
throw new IllegalArgumentException(
"Argument is neither a <wsp:Policy> nor a
<wsp:PolicyReference> element");
}
- private static InputStream nodeToStream(org.w3c.dom.Element element) {
- ByteArrayOutputStream baos = new ByteArrayOutputStream();
- Transformer tf;
- try {
- // tf =
TransformerFactory.newInstance().newTransformer();
- // tf.transform(new DOMSource(element), new
StreamResult(baos));
- String nodeString = DOM2Writer.nodeToString(element);
- return new ByteArrayInputStream(nodeString.getBytes());
- } catch (Exception e) {
- throw new RuntimeException("Unable to process policy");
- }
- }
-
public static String policyComponentToString(PolicyComponent
policyComponent)
throws XMLStreamException, FactoryConfigurationError {