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 2008/05/29 19:44:36 UTC

svn commit: r661418 - in /cxf/trunk: common/common/src/main/java/org/apache/cxf/staxutils/StaxUtils.java rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/handler/logical/LogicalMessageImpl.java

Author: dkulp
Date: Thu May 29 10:44:36 2008
New Revision: 661418

URL: http://svn.apache.org/viewvc?rev=661418&view=rev
Log:
[CXF-1595] Skip over whitespace in logical message

Modified:
    cxf/trunk/common/common/src/main/java/org/apache/cxf/staxutils/StaxUtils.java
    cxf/trunk/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/handler/logical/LogicalMessageImpl.java

Modified: cxf/trunk/common/common/src/main/java/org/apache/cxf/staxutils/StaxUtils.java
URL: http://svn.apache.org/viewvc/cxf/trunk/common/common/src/main/java/org/apache/cxf/staxutils/StaxUtils.java?rev=661418&r1=661417&r2=661418&view=diff
==============================================================================
--- cxf/trunk/common/common/src/main/java/org/apache/cxf/staxutils/StaxUtils.java (original)
+++ cxf/trunk/common/common/src/main/java/org/apache/cxf/staxutils/StaxUtils.java Thu May 29 10:44:36 2008
@@ -182,6 +182,20 @@
             throw new RuntimeException("Couldn't parse stream.", e);
         }
     }
+    public static boolean toNextTag(XMLStreamReader reader) {
+        try {
+            // advance to first tag.
+            int x = reader.getEventType();
+            while (x != XMLStreamReader.START_ELEMENT
+                && x != XMLStreamReader.END_ELEMENT
+                && reader.hasNext()) {
+                x = reader.next();
+            }
+        } catch (XMLStreamException e) {
+            throw new RuntimeException("Couldn't parse stream.", e);
+        }
+        return true;
+    }
 
     public static boolean toNextTag(DepthXMLStreamReader reader, QName endTag) {
         try {

Modified: cxf/trunk/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/handler/logical/LogicalMessageImpl.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/handler/logical/LogicalMessageImpl.java?rev=661418&r1=661417&r2=661418&view=diff
==============================================================================
--- cxf/trunk/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/handler/logical/LogicalMessageImpl.java (original)
+++ cxf/trunk/rt/frontend/jaxws/src/main/java/org/apache/cxf/jaxws/handler/logical/LogicalMessageImpl.java Thu May 29 10:44:36 2008
@@ -98,6 +98,8 @@
                     try {
                         W3CDOMStreamWriter writer = new W3CDOMStreamWriter();
                         reader = message.getContent(XMLStreamReader.class);
+                        //content must be an element thing, skip over any whitespace
+                        StaxUtils.toNextTag(reader);
                         StaxUtils.copy(reader, writer);
                         source = new DOMSource(writer.getDocument().getDocumentElement());
                         reader = StaxUtils.createXMLStreamReader(writer.getDocument());