You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cxf.apache.org by dk...@apache.org on 2012/11/27 20:09:44 UTC
svn commit: r1414318 - in /cxf/branches/2.6.x-fixes:
rt/bindings/soap/src/main/java/org/apache/cxf/binding/soap/saaj/
rt/core/src/main/java/org/apache/cxf/test/
rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/ext/xml/
rt/frontend/jaxrs/src/main/ja...
Author: dkulp
Date: Tue Nov 27 19:09:40 2012
New Revision: 1414318
URL: http://svn.apache.org/viewvc?rev=1414318&view=rev
Log:
Merged revisions 1413973 via git cherry-pick from
https://svn.apache.org/repos/asf/cxf/trunk
........
r1413973 | dkulp | 2012-11-26 21:22:41 -0500 (Mon, 26 Nov 2012) | 2 lines
Bunches of fixes that should allow things to work "better" with Saxon. May need to force a dom in some cases.
........
Modified:
cxf/branches/2.6.x-fixes/rt/bindings/soap/src/main/java/org/apache/cxf/binding/soap/saaj/SAAJInInterceptor.java
cxf/branches/2.6.x-fixes/rt/core/src/main/java/org/apache/cxf/test/XPathAssert.java
cxf/branches/2.6.x-fixes/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/ext/xml/XMLSource.java
cxf/branches/2.6.x-fixes/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/model/wadl/WadlGenerator.java
cxf/branches/2.6.x-fixes/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/provider/XPathProvider.java
cxf/branches/2.6.x-fixes/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/provider/XSLTJaxbProvider.java
cxf/branches/2.6.x-fixes/rt/frontend/jaxrs/src/test/java/org/apache/cxf/jaxrs/ext/xml/XMLSourceTest.java
cxf/branches/2.6.x-fixes/rt/frontend/jaxrs/src/test/java/org/apache/cxf/jaxrs/provider/XPathProviderTest.java
cxf/branches/2.6.x-fixes/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/JAXRSClientServerBookTest.java
cxf/branches/2.6.x-fixes/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/JAXRSClientServerSpringBookTest.java
cxf/branches/2.6.x-fixes/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/JAXRSSoapBookTest.java
cxf/branches/2.6.x-fixes/systests/jaxws/src/test/java/org/apache/cxf/systest/jaxws/ClientServerRPCLitTest.java
cxf/branches/2.6.x-fixes/tools/corba/src/test/java/org/apache/cxf/tools/corba/utils/WSDLGenerationTester.java
cxf/branches/2.6.x-fixes/tools/javato/ws/src/test/java/org/apache/cxf/tools/java2wsdl/processor/internal/jaxws/JaxwsServiceBuilderTest.java
Modified: cxf/branches/2.6.x-fixes/rt/bindings/soap/src/main/java/org/apache/cxf/binding/soap/saaj/SAAJInInterceptor.java
URL: http://svn.apache.org/viewvc/cxf/branches/2.6.x-fixes/rt/bindings/soap/src/main/java/org/apache/cxf/binding/soap/saaj/SAAJInInterceptor.java?rev=1414318&r1=1414317&r2=1414318&view=diff
==============================================================================
--- cxf/branches/2.6.x-fixes/rt/bindings/soap/src/main/java/org/apache/cxf/binding/soap/saaj/SAAJInInterceptor.java (original)
+++ cxf/branches/2.6.x-fixes/rt/bindings/soap/src/main/java/org/apache/cxf/binding/soap/saaj/SAAJInInterceptor.java Tue Nov 27 19:09:40 2012
@@ -182,14 +182,8 @@ public class SAAJInInterceptor extends A
}
final SOAPPart part = soapMessage.getSOAPPart();
Document node = (Document) message.getContent(Node.class);
- if (node != part) {
- if (node == null) {
- // replicate 2.1 behavior.
- part.setContent(new DOMSource(null));
- } else {
- //part.setContent(new DOMSource(node));
- StaxUtils.copy(node, new SAAJStreamWriter(part));
- }
+ if (node != part && node != null) {
+ StaxUtils.copy(node, new SAAJStreamWriter(part));
}
message.setContent(Node.class, soapMessage.getSOAPPart());
Modified: cxf/branches/2.6.x-fixes/rt/core/src/main/java/org/apache/cxf/test/XPathAssert.java
URL: http://svn.apache.org/viewvc/cxf/branches/2.6.x-fixes/rt/core/src/main/java/org/apache/cxf/test/XPathAssert.java?rev=1414318&r1=1414317&r2=1414318&view=diff
==============================================================================
--- cxf/branches/2.6.x-fixes/rt/core/src/main/java/org/apache/cxf/test/XPathAssert.java (original)
+++ cxf/branches/2.6.x-fixes/rt/core/src/main/java/org/apache/cxf/test/XPathAssert.java Tue Nov 27 19:09:40 2012
@@ -137,17 +137,25 @@ public final class XPathAssert {
Node node,
Map<String, String> namespaces)
throws Exception {
- Node result = (Node)createXPath(namespaces).evaluate(xpath, node, XPathConstants.NODE);
- if (result == null) {
- throw new AssertionFailedError("No nodes were found for expression: "
- + xpath
- + " in document "
- + writeNodeToString(node));
+ Object o = createXPath(namespaces).compile(xpath)
+ .evaluate(node, XPathConstants.NODE);
+ if (o instanceof Node) {
+ Node result = (Node)o;
+ String value2 = DOMUtils.getContent(result);
+ Assert.assertEquals(value, value2);
+ return;
+ } else {
+ o = createXPath(namespaces).compile(xpath)
+ .evaluate(node, XPathConstants.STRING);
+ if (o instanceof String) {
+ Assert.assertEquals(value, (String)o);
+ return;
+ }
}
-
- String value2 = DOMUtils.getContent(result);
-
- Assert.assertEquals(value, value2);
+ throw new AssertionFailedError("No nodes were found for expression: "
+ + xpath
+ + " in document "
+ + writeNodeToString(node));
}
public static void assertNoFault(Node node) throws Exception {
@@ -178,7 +186,6 @@ public final class XPathAssert {
if (namespaces != null) {
xpath.setNamespaceContext(new MapNamespaceContext(namespaces));
}
-
return xpath;
}
Modified: cxf/branches/2.6.x-fixes/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/ext/xml/XMLSource.java
URL: http://svn.apache.org/viewvc/cxf/branches/2.6.x-fixes/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/ext/xml/XMLSource.java?rev=1414318&r1=1414317&r2=1414318&view=diff
==============================================================================
--- cxf/branches/2.6.x-fixes/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/ext/xml/XMLSource.java (original)
+++ cxf/branches/2.6.x-fixes/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/ext/xml/XMLSource.java Tue Nov 27 19:09:40 2012
@@ -19,7 +19,6 @@
package org.apache.cxf.jaxrs.ext.xml;
import java.io.ByteArrayOutputStream;
-import java.io.IOException;
import java.io.InputStream;
import java.io.UnsupportedEncodingException;
import java.lang.reflect.Array;
@@ -28,64 +27,58 @@ import java.util.Collections;
import java.util.Iterator;
import java.util.LinkedHashMap;
import java.util.Map;
-import java.util.ResourceBundle;
-import java.util.logging.Logger;
import javax.xml.bind.JAXBContext;
import javax.xml.bind.Unmarshaller;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.namespace.NamespaceContext;
import javax.xml.namespace.QName;
+import javax.xml.stream.XMLStreamException;
import javax.xml.transform.Source;
import javax.xml.transform.dom.DOMSource;
+import javax.xml.transform.stream.StreamSource;
import javax.xml.xpath.XPath;
import javax.xml.xpath.XPathConstants;
import javax.xml.xpath.XPathExpressionException;
import javax.xml.xpath.XPathFactory;
+import org.w3c.dom.Document;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
import org.xml.sax.InputSource;
-import org.apache.cxf.common.i18n.BundleUtils;
-import org.apache.cxf.common.logging.LogUtils;
import org.apache.cxf.helpers.CastUtils;
-import org.apache.cxf.helpers.IOUtils;
import org.apache.cxf.helpers.XMLUtils;
import org.apache.cxf.jaxrs.provider.JAXBElementProvider;
import org.apache.cxf.jaxrs.utils.InjectionUtils;
+import org.apache.cxf.staxutils.StaxUtils;
/**
* Utility class for manipulating XML response using XPath and XSLT
*
*/
public class XMLSource {
- private static final Logger LOG = LogUtils.getL7dLogger(XMLSource.class);
- private static final ResourceBundle BUNDLE = BundleUtils.getBundle(XMLSource.class);
private static final String XML_NAMESPACE = "http://www.w3.org/XML/1998/namespace";
- private InputStream stream;
- private boolean buffering;
- private boolean markFailed;
+ private InputStream stream;
+ private Document doc;
public XMLSource(InputStream is) {
stream = is;
}
/**
- * Allows for multiple queries against the same stream
- * @param enable if set to true then multiple queries will be supported.
+ * Allows for multiple queries against the same stream by buffering to DOM
*/
- public void setBuffering(boolean enable) {
- buffering = enable;
- if (!stream.markSupported()) {
- try {
- stream = IOUtils.loadIntoBAIS(stream);
- } catch (IOException ex) {
- LOG.warning(new org.apache.cxf.common.i18n.Message("NO_SOURCE_MARK", BUNDLE).toString());
- }
+ public void setBuffering() {
+ try {
+ doc = StaxUtils.read(new StreamSource(stream));
+ stream = null;
+ } catch (XMLStreamException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
}
}
@@ -114,15 +107,19 @@ public class XMLSource {
*/
@SuppressWarnings("unchecked")
public <T> T getNode(String expression, Map<String, String> namespaces, Class<T> cls) {
- Node node = (Node)evaluate(expression, namespaces, XPathConstants.NODE);
- if (node == null) {
+ Object obj = evaluate(expression, namespaces, XPathConstants.NODE);
+ if (obj == null) {
return null;
}
- if (cls.isPrimitive() || cls == String.class) {
- return (T)readPrimitiveValue(node, cls);
- } else {
- return readNode(node, cls);
+ if (obj instanceof Node) {
+ Node node = (Node)obj;
+ if (cls.isPrimitive() || cls == String.class) {
+ return (T)readPrimitiveValue(node, cls);
+ } else {
+ return readNode(node, cls);
+ }
}
+ return cls.cast(evaluate(expression, namespaces, XPathConstants.STRING));
}
/**
@@ -290,7 +287,11 @@ public class XMLSource {
XPath xpath = XPathFactory.newInstance().newXPath();
xpath.setNamespaceContext(new NamespaceContextImpl(namespaces));
try {
- return xpath.evaluate(expression, getSource(), type);
+ if (stream == null) {
+ return xpath.compile(expression).evaluate(doc, type);
+ } else {
+ return xpath.compile(expression).evaluate(new InputSource(stream), type);
+ }
} catch (XPathExpressionException ex) {
throw new IllegalArgumentException("Illegal XPath expression '" + expression + "'", ex);
}
@@ -374,23 +375,5 @@ public class XMLSource {
throw new RuntimeException(ex);
}
}
-
- private InputSource getSource() {
- if (!markFailed && buffering) {
- try {
- stream.reset();
- stream.mark(stream.available());
- } catch (IOException ex) {
- LOG.fine(new org.apache.cxf.common.i18n.Message("NO_SOURCE_MARK", BUNDLE).toString());
- markFailed = true;
- try {
- stream = IOUtils.loadIntoBAIS(stream);
- } catch (IOException ex2) {
- throw new RuntimeException(ex2);
- }
- }
- }
-
- return new InputSource(stream);
- }
+
}
Modified: cxf/branches/2.6.x-fixes/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/model/wadl/WadlGenerator.java
URL: http://svn.apache.org/viewvc/cxf/branches/2.6.x-fixes/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/model/wadl/WadlGenerator.java?rev=1414318&r1=1414317&r2=1414318&view=diff
==============================================================================
--- cxf/branches/2.6.x-fixes/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/model/wadl/WadlGenerator.java (original)
+++ cxf/branches/2.6.x-fixes/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/model/wadl/WadlGenerator.java Tue Nov 27 19:09:40 2012
@@ -1312,7 +1312,7 @@ public class WadlGenerator implements Re
}
ByteArrayInputStream bis = IOUtils.loadIntoBAIS(is);
XMLSource source = new XMLSource(bis);
- source.setBuffering(true);
+ source.setBuffering();
String targetNs = source.getValue("/*/@targetNamespace");
Map<String, String> nsMap =
@@ -1396,7 +1396,7 @@ public class WadlGenerator implements Re
// we'll need to do the proper schema caching eventually
for (String s : schemas) {
XMLSource source = new XMLSource(new ByteArrayInputStream(s.getBytes()));
- source.setBuffering(true);
+ source.setBuffering();
Map<String, String> locs = getLocationsMap(source, "import", links, ui);
locs.putAll(getLocationsMap(source, "include", links, ui));
String actualSchema = !locs.isEmpty() ? transformSchema(s, locs) : s;
Modified: cxf/branches/2.6.x-fixes/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/provider/XPathProvider.java
URL: http://svn.apache.org/viewvc/cxf/branches/2.6.x-fixes/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/provider/XPathProvider.java?rev=1414318&r1=1414317&r2=1414318&view=diff
==============================================================================
--- cxf/branches/2.6.x-fixes/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/provider/XPathProvider.java (original)
+++ cxf/branches/2.6.x-fixes/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/provider/XPathProvider.java Tue Nov 27 19:09:40 2012
@@ -43,6 +43,7 @@ public class XPathProvider<T> implements
private Map<String, String> classExpressions;
private String globalExpression;
private String className;
+ private boolean forceDOM;
private Map<String, String> globalNamespaces =
Collections.emptyMap();
@@ -53,6 +54,10 @@ public class XPathProvider<T> implements
public List<String> getConsumeMediaTypes() {
return consumeMediaTypes;
}
+
+ public void setForceDOM(boolean b) {
+ forceDOM = b;
+ }
public void setExpression(String expr) {
globalExpression = expr;
@@ -86,6 +91,9 @@ public class XPathProvider<T> implements
throw new WebApplicationException(500);
}
XMLSource source = new XMLSource(is);
+ if (forceDOM) {
+ source.setBuffering();
+ }
return source.getNode(expression, globalNamespaces, cls);
}
Modified: cxf/branches/2.6.x-fixes/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/provider/XSLTJaxbProvider.java
URL: http://svn.apache.org/viewvc/cxf/branches/2.6.x-fixes/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/provider/XSLTJaxbProvider.java?rev=1414318&r1=1414317&r2=1414318&view=diff
==============================================================================
--- cxf/branches/2.6.x-fixes/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/provider/XSLTJaxbProvider.java (original)
+++ cxf/branches/2.6.x-fixes/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/provider/XSLTJaxbProvider.java Tue Nov 27 19:09:40 2012
@@ -29,6 +29,7 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Properties;
+import java.util.logging.Level;
import java.util.logging.Logger;
import javax.ws.rs.Consumes;
@@ -167,7 +168,14 @@ public class XSLTJaxbProvider<T> extends
if (t == null && supportJaxbOnly) {
return super.unmarshalFromInputStream(unmarshaller, is, mt);
}
- XMLFilter filter = factory.newXMLFilter(t);
+ XMLFilter filter = null;
+ try {
+ filter = factory.newXMLFilter(t);
+ } catch (TransformerConfigurationException ex) {
+ TemplatesImpl ti = (TemplatesImpl)t;
+ filter = factory.newXMLFilter(ti.getTemplates());
+ trySettingProperties(filter, ti);
+ }
SAXSource source = new SAXSource(filter, new InputSource(is));
if (systemId != null) {
source.setSystemId(systemId);
@@ -179,6 +187,25 @@ public class XSLTJaxbProvider<T> extends
}
}
+ private void trySettingProperties(Object filter, TemplatesImpl ti) {
+ try {
+ //Saxon doesn't allow creating a Filter or Handler from anything other than it's original
+ //Templates. That then requires setting the paramaters after the fact, but there
+ //isn't a standard API for that, so we have to grab the Transformer via reflection to
+ //set the parameters.
+ Transformer tr = (Transformer)filter.getClass().getMethod("getTransformer").invoke(filter);
+ tr.setURIResolver(ti.resolver);
+ for (Map.Entry<String, Object> entry : ti.transformParameters.entrySet()) {
+ tr.setParameter(entry.getKey(), entry.getValue());
+ }
+ for (Map.Entry<String, String> entry : ti.outProps.entrySet()) {
+ tr.setOutputProperty(entry.getKey(), entry.getValue());
+ }
+ } catch (Exception e) {
+ LOG.log(Level.WARNING, "Could not set properties for transfomer", e);
+ }
+ }
+
protected Object unmarshalFromReader(Unmarshaller unmarshaller, XMLStreamReader reader, MediaType mt)
throws JAXBException {
CachedOutputStream out = new CachedOutputStream();
@@ -217,8 +244,14 @@ public class XSLTJaxbProvider<T> extends
super.marshalToOutputStream(ms, obj, os, mt);
return;
}
-
- TransformerHandler th = factory.newTransformerHandler(t);
+ TransformerHandler th = null;
+ try {
+ th = factory.newTransformerHandler(t);
+ } catch (TransformerConfigurationException ex) {
+ TemplatesImpl ti = (TemplatesImpl)t;
+ th = factory.newTransformerHandler(ti.getTemplates());
+ this.trySettingProperties(th, ti);
+ }
Result result = new StreamResult(os);
if (systemId != null) {
result.setSystemId(systemId);
@@ -388,6 +421,10 @@ public class XSLTJaxbProvider<T> extends
this.resolver = resolver;
}
+ public Templates getTemplates() {
+ return templates;
+ }
+
public void setTransformerParameter(String name, Object value) {
transformParameters.put(name, value);
}
Modified: cxf/branches/2.6.x-fixes/rt/frontend/jaxrs/src/test/java/org/apache/cxf/jaxrs/ext/xml/XMLSourceTest.java
URL: http://svn.apache.org/viewvc/cxf/branches/2.6.x-fixes/rt/frontend/jaxrs/src/test/java/org/apache/cxf/jaxrs/ext/xml/XMLSourceTest.java?rev=1414318&r1=1414317&r2=1414318&view=diff
==============================================================================
--- cxf/branches/2.6.x-fixes/rt/frontend/jaxrs/src/test/java/org/apache/cxf/jaxrs/ext/xml/XMLSourceTest.java (original)
+++ cxf/branches/2.6.x-fixes/rt/frontend/jaxrs/src/test/java/org/apache/cxf/jaxrs/ext/xml/XMLSourceTest.java Tue Nov 27 19:09:40 2012
@@ -46,17 +46,19 @@ public class XMLSourceTest extends Asser
public void testNodeStringValue() {
InputStream is = getClass().getResourceAsStream("/book1.xsd");
XMLSource xp = new XMLSource(is);
+ xp.setBuffering();
Map<String, String> nsMap =
Collections.singletonMap("xs", XmlSchemaConstants.XSD_NAMESPACE_URI);
String value = xp.getNode("/xs:schema", nsMap, String.class);
assertFalse(value.contains("<?xml"));
- assertTrue(value.startsWith("<xs:schema"));
+ assertTrue(value, value.startsWith("<xs:schema"));
}
@Test
public void testAttributeValue() {
InputStream is = new ByteArrayInputStream("<foo><bar attr=\"baz\">barValue</bar></foo>".getBytes());
XMLSource xp = new XMLSource(is);
+ xp.setBuffering();
assertEquals("baz", xp.getValue("/foo/bar/@attr"));
}
@@ -64,6 +66,7 @@ public class XMLSourceTest extends Asser
public void testAttributeValueAsNode() {
InputStream is = new ByteArrayInputStream("<foo><bar attr=\"baz\">barValue</bar></foo>".getBytes());
XMLSource xp = new XMLSource(is);
+ xp.setBuffering();
Node node = xp.getNode("/foo/bar/@attr", Node.class);
assertNotNull(node);
assertEquals("baz", node.getTextContent());
@@ -73,6 +76,7 @@ public class XMLSourceTest extends Asser
public void testNodeTextValue() {
InputStream is = new ByteArrayInputStream("<foo><bar attr=\"baz\">barValue</bar></foo>".getBytes());
XMLSource xp = new XMLSource(is);
+ xp.setBuffering();
assertEquals("barValue", xp.getValue("/foo/bar"));
}
@@ -81,6 +85,7 @@ public class XMLSourceTest extends Asser
InputStream is = new ByteArrayInputStream(
"<foo><bar attr=\"baz\">bar1</bar><bar attr=\"baz2\">bar2</bar></foo>".getBytes());
XMLSource xp = new XMLSource(is);
+ xp.setBuffering();
List<String> values = Arrays.asList(xp.getValues("/foo/bar/@attr"));
assertEquals(2, values.size());
assertTrue(values.contains("baz"));
@@ -92,6 +97,7 @@ public class XMLSourceTest extends Asser
InputStream is = new ByteArrayInputStream(
"<foo><bar attr=\"baz\">bar1</bar><bar attr=\"baz2\">bar2</bar></foo>".getBytes());
XMLSource xp = new XMLSource(is);
+ xp.setBuffering();
List<String> values = Arrays.asList(xp.getValues("/foo/bar/text()"));
assertEquals(2, values.size());
assertTrue(values.contains("bar1"));
@@ -103,6 +109,7 @@ public class XMLSourceTest extends Asser
InputStream is = new ByteArrayInputStream(
"<foo><bar attr=\"1\"/><bar attr=\"2\"/></foo>".getBytes());
XMLSource xp = new XMLSource(is);
+ xp.setBuffering();
Integer[] values = xp.getNodes("/foo/bar/@attr", Integer.class);
assertEquals(2, values.length);
assertTrue(values[0] == 1 && values[1] == 2 || values[0] == 2 && values[1] == 1);
@@ -112,6 +119,7 @@ public class XMLSourceTest extends Asser
public void testGetNodeNoNamespace() {
InputStream is = new ByteArrayInputStream("<foo><bar/></foo>".getBytes());
XMLSource xp = new XMLSource(is);
+ xp.setBuffering();
Bar bar = xp.getNode("/foo/bar", Bar.class);
assertNotNull(bar);
}
@@ -120,6 +128,7 @@ public class XMLSourceTest extends Asser
public void testGetNodeAsElement() {
InputStream is = new ByteArrayInputStream("<foo><bar/></foo>".getBytes());
XMLSource xp = new XMLSource(is);
+ xp.setBuffering();
Element element = xp.getNode("/foo/bar", Element.class);
assertNotNull(element);
}
@@ -128,6 +137,7 @@ public class XMLSourceTest extends Asser
public void testGetNodeAsSource() {
InputStream is = new ByteArrayInputStream("<foo><bar/></foo>".getBytes());
XMLSource xp = new XMLSource(is);
+ xp.setBuffering();
Source element = xp.getNode("/foo/bar", Source.class);
assertNotNull(element);
}
@@ -136,6 +146,7 @@ public class XMLSourceTest extends Asser
public void testGetNodeNull() {
InputStream is = new ByteArrayInputStream("<foo><bar/></foo>".getBytes());
XMLSource xp = new XMLSource(is);
+ xp.setBuffering();
assertNull(xp.getNode("/foo/bar1", Element.class));
}
@@ -143,6 +154,7 @@ public class XMLSourceTest extends Asser
public void testGetNodeAsJaxbElement() {
InputStream is = new ByteArrayInputStream("<foo><bar name=\"foo\"/></foo>".getBytes());
XMLSource xp = new XMLSource(is);
+ xp.setBuffering();
Bar3 bar = xp.getNode("/foo/bar", Bar3.class);
assertNotNull(bar);
assertEquals("foo", bar.getName());
@@ -153,6 +165,7 @@ public class XMLSourceTest extends Asser
String data = "<x:foo xmlns:x=\"http://baz\"><x:bar/></x:foo>";
InputStream is = new ByteArrayInputStream(data.getBytes());
XMLSource xp = new XMLSource(is);
+ xp.setBuffering();
Map<String, String> map = new LinkedHashMap<String, String>();
map.put("x", "http://baz");
Bar2 bar = xp.getNode("/x:foo/x:bar", map, Bar2.class);
@@ -164,7 +177,7 @@ public class XMLSourceTest extends Asser
String data = "<x:foo xmlns:x=\"http://baz\"><x:bar/></x:foo>";
InputStream is = new ByteArrayInputStream(data.getBytes());
XMLSource xp = new XMLSource(is);
- xp.setBuffering(true);
+ xp.setBuffering();
Map<String, String> map = new LinkedHashMap<String, String>();
map.put("x", "http://baz");
Bar2 bar = xp.getNode("/x:foo/x:bar", map, Bar2.class);
@@ -178,6 +191,7 @@ public class XMLSourceTest extends Asser
String data = "<z:foo xmlns:z=\"http://baz\"><z:bar/></z:foo>";
InputStream is = new ByteArrayInputStream(data.getBytes());
XMLSource xp = new XMLSource(is);
+ xp.setBuffering();
Map<String, String> map = new LinkedHashMap<String, String>();
map.put("x", "http://baz");
Bar2 bar = xp.getNode("/x:foo/x:bar", map, Bar2.class);
@@ -189,6 +203,7 @@ public class XMLSourceTest extends Asser
String data = "<x:foo xmlns:x=\"http://foo\" xmlns:z=\"http://baz\"><z:bar/></x:foo>";
InputStream is = new ByteArrayInputStream(data.getBytes());
XMLSource xp = new XMLSource(is);
+ xp.setBuffering();
Map<String, String> map = new LinkedHashMap<String, String>();
map.put("x", "http://foo");
map.put("y", "http://baz");
@@ -201,6 +216,7 @@ public class XMLSourceTest extends Asser
String data = "<foo xmlns=\"http://baz\"><bar/></foo>";
InputStream is = new ByteArrayInputStream(data.getBytes());
XMLSource xp = new XMLSource(is);
+ xp.setBuffering();
Map<String, String> map = new LinkedHashMap<String, String>();
map.put("x", "http://baz");
Bar2 bar = xp.getNode("/x:foo/x:bar", map, Bar2.class);
@@ -211,6 +227,7 @@ public class XMLSourceTest extends Asser
public void testGetNodesNoNamespace() {
InputStream is = new ByteArrayInputStream("<foo><bar/><bar/></foo>".getBytes());
XMLSource xp = new XMLSource(is);
+ xp.setBuffering();
Bar[] bars = xp.getNodes("/foo/bar", Bar.class);
assertNotNull(bars);
assertEquals(2, bars.length);
@@ -222,6 +239,7 @@ public class XMLSourceTest extends Asser
String data = "<x:foo xmlns:x=\"http://baz\"><x:bar/><x:bar/></x:foo>";
InputStream is = new ByteArrayInputStream(data.getBytes());
XMLSource xp = new XMLSource(is);
+ xp.setBuffering();
Map<String, String> map = new LinkedHashMap<String, String>();
map.put("x", "http://baz");
Bar2[] bars = xp.getNodes("/x:foo/x:bar", map, Bar2.class);
Modified: cxf/branches/2.6.x-fixes/rt/frontend/jaxrs/src/test/java/org/apache/cxf/jaxrs/provider/XPathProviderTest.java
URL: http://svn.apache.org/viewvc/cxf/branches/2.6.x-fixes/rt/frontend/jaxrs/src/test/java/org/apache/cxf/jaxrs/provider/XPathProviderTest.java?rev=1414318&r1=1414317&r2=1414318&view=diff
==============================================================================
--- cxf/branches/2.6.x-fixes/rt/frontend/jaxrs/src/test/java/org/apache/cxf/jaxrs/provider/XPathProviderTest.java (original)
+++ cxf/branches/2.6.x-fixes/rt/frontend/jaxrs/src/test/java/org/apache/cxf/jaxrs/provider/XPathProviderTest.java Tue Nov 27 19:09:40 2012
@@ -62,6 +62,7 @@ public class XPathProviderTest extends A
XPathProvider<Book> provider = new XPathProvider<Book>();
provider.setExpression("/Book");
provider.setClassName(Book.class.getName());
+ provider.setForceDOM(true);
Book book = (Book)provider.readFrom(Book.class, null, null, null, null,
new ByteArrayInputStream(value.getBytes()));
assertNotNull(book);
Modified: cxf/branches/2.6.x-fixes/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/JAXRSClientServerBookTest.java
URL: http://svn.apache.org/viewvc/cxf/branches/2.6.x-fixes/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/JAXRSClientServerBookTest.java?rev=1414318&r1=1414317&r2=1414318&view=diff
==============================================================================
--- cxf/branches/2.6.x-fixes/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/JAXRSClientServerBookTest.java (original)
+++ cxf/branches/2.6.x-fixes/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/JAXRSClientServerBookTest.java Tue Nov 27 19:09:40 2012
@@ -521,7 +521,7 @@ public class JAXRSClientServerBookTest e
InputStream is = (InputStream)r.getEntity();
assertNotNull(is);
XMLSource source = new XMLSource(is);
- source.setBuffering(true);
+ source.setBuffering();
assertEquals(124L, Long.parseLong(source.getValue("Book/id")));
assertEquals("CXF rocks", source.getValue("Book/name"));
}
Modified: cxf/branches/2.6.x-fixes/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/JAXRSClientServerSpringBookTest.java
URL: http://svn.apache.org/viewvc/cxf/branches/2.6.x-fixes/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/JAXRSClientServerSpringBookTest.java?rev=1414318&r1=1414317&r2=1414318&view=diff
==============================================================================
--- cxf/branches/2.6.x-fixes/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/JAXRSClientServerSpringBookTest.java (original)
+++ cxf/branches/2.6.x-fixes/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/JAXRSClientServerSpringBookTest.java Tue Nov 27 19:09:40 2012
@@ -204,6 +204,7 @@ public class JAXRSClientServerSpringBook
WebClient wc = WebClient.create(endpointAddress);
wc.accept("application/xhtml+xml").path(666).matrix("name2", 2).query("name", "Action - ");
XMLSource source = wc.get(XMLSource.class);
+ source.setBuffering();
Map<String, String> namespaces = new HashMap<String, String>();
namespaces.put("xhtml", "http://www.w3.org/1999/xhtml");
Book2 b = source.getNode("xhtml:html/xhtml:body/xhtml:ul/xhtml:Book", namespaces, Book2.class);
Modified: cxf/branches/2.6.x-fixes/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/JAXRSSoapBookTest.java
URL: http://svn.apache.org/viewvc/cxf/branches/2.6.x-fixes/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/JAXRSSoapBookTest.java?rev=1414318&r1=1414317&r2=1414318&view=diff
==============================================================================
--- cxf/branches/2.6.x-fixes/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/JAXRSSoapBookTest.java (original)
+++ cxf/branches/2.6.x-fixes/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/JAXRSSoapBookTest.java Tue Nov 27 19:09:40 2012
@@ -392,7 +392,7 @@ public class JAXRSSoapBookTest extends A
WebClient client = WebClient.create(baseAddress);
client.path("/bookstore/123").accept(MediaType.APPLICATION_XML_TYPE);
XMLSource source = client.get(XMLSource.class);
- source.setBuffering(true);
+ source.setBuffering();
Book b = source.getNode("/Book", Book.class);
assertEquals(123, b.getId());
assertEquals("CXF in Action", b.getName());
Modified: cxf/branches/2.6.x-fixes/systests/jaxws/src/test/java/org/apache/cxf/systest/jaxws/ClientServerRPCLitTest.java
URL: http://svn.apache.org/viewvc/cxf/branches/2.6.x-fixes/systests/jaxws/src/test/java/org/apache/cxf/systest/jaxws/ClientServerRPCLitTest.java?rev=1414318&r1=1414317&r2=1414318&view=diff
==============================================================================
--- cxf/branches/2.6.x-fixes/systests/jaxws/src/test/java/org/apache/cxf/systest/jaxws/ClientServerRPCLitTest.java (original)
+++ cxf/branches/2.6.x-fixes/systests/jaxws/src/test/java/org/apache/cxf/systest/jaxws/ClientServerRPCLitTest.java Tue Nov 27 19:09:40 2012
@@ -55,6 +55,7 @@ import org.apache.cxf.binding.soap.Soap1
import org.apache.cxf.helpers.XMLUtils;
import org.apache.cxf.helpers.XPathUtils;
import org.apache.cxf.message.Message;
+import org.apache.cxf.staxutils.StaxUtils;
import org.apache.cxf.staxutils.W3CNamespaceContext;
import org.apache.cxf.testutil.common.AbstractBusClientServerTestBase;
import org.apache.cxf.testutil.common.AbstractBusTestServerBase;
@@ -141,7 +142,7 @@ public class ClientServerRPCLitTest exte
Source resp = disp.invoke(source);
assertNotNull(resp);
- Node nd = XMLUtils.fromSource(resp);
+ Node nd = StaxUtils.read(resp);
if (nd instanceof Document) {
nd = ((Document)nd).getDocumentElement();
}
Modified: cxf/branches/2.6.x-fixes/tools/corba/src/test/java/org/apache/cxf/tools/corba/utils/WSDLGenerationTester.java
URL: http://svn.apache.org/viewvc/cxf/branches/2.6.x-fixes/tools/corba/src/test/java/org/apache/cxf/tools/corba/utils/WSDLGenerationTester.java?rev=1414318&r1=1414317&r2=1414318&view=diff
==============================================================================
--- cxf/branches/2.6.x-fixes/tools/corba/src/test/java/org/apache/cxf/tools/corba/utils/WSDLGenerationTester.java (original)
+++ cxf/branches/2.6.x-fixes/tools/corba/src/test/java/org/apache/cxf/tools/corba/utils/WSDLGenerationTester.java Tue Nov 27 19:09:40 2012
@@ -131,7 +131,7 @@ public class WSDLGenerationTester {
private void compareCharacters(QName elName, XMLStreamReader orig, XMLStreamReader actual)
throws Exception {
Assert.assertEquals("Element Characters not matched " + elName,
- orig.getText(), actual.getText());
+ orig.getText().trim(), actual.getText().trim());
}
public File writeDefinition(File targetDir, File defnFile) throws Exception {
Modified: cxf/branches/2.6.x-fixes/tools/javato/ws/src/test/java/org/apache/cxf/tools/java2wsdl/processor/internal/jaxws/JaxwsServiceBuilderTest.java
URL: http://svn.apache.org/viewvc/cxf/branches/2.6.x-fixes/tools/javato/ws/src/test/java/org/apache/cxf/tools/java2wsdl/processor/internal/jaxws/JaxwsServiceBuilderTest.java?rev=1414318&r1=1414317&r2=1414318&view=diff
==============================================================================
--- cxf/branches/2.6.x-fixes/tools/javato/ws/src/test/java/org/apache/cxf/tools/java2wsdl/processor/internal/jaxws/JaxwsServiceBuilderTest.java (original)
+++ cxf/branches/2.6.x-fixes/tools/javato/ws/src/test/java/org/apache/cxf/tools/java2wsdl/processor/internal/jaxws/JaxwsServiceBuilderTest.java Tue Nov 27 19:09:40 2012
@@ -329,8 +329,8 @@ public class JaxwsServiceBuilderTest ext
s = IOUtils.toString(new FileInputStream(logical));
- assertTrue(s.indexOf("<import namespace=\"http://foo.com/HelloWorld\" "
- + "schemaLocation=\"HelloService_schema1.xsd\"/>") != -1);
+ assertTrue(s.indexOf("<import namespace=\"http://foo.com/HelloWorld\"") != -1);
+ assertTrue(s.indexOf("schemaLocation=\"HelloService_schema1.xsd\"/>") != -1);
assertTrue(s.indexOf("targetNamespace=\"http://foo.com/HelloWorld\"") != -1);
s = IOUtils.toString(new FileInputStream(schema));