Author: ningjiang
Date: Wed Jul 14 02:14:42 2010
New Revision: 963925

URL: http://svn.apache.org/viewvc?rev=963925&view=rev
Log:
CXF-2892 write the right content type if XOP is not enabled

Modified:
    
cxf/trunk/rt/core/src/main/java/org/apache/cxf/attachment/AttachmentSerializer.java
    
cxf/trunk/rt/core/src/test/java/org/apache/cxf/attachment/AttachmentSerializerTest.java

Modified: 
cxf/trunk/rt/core/src/main/java/org/apache/cxf/attachment/AttachmentSerializer.java
URL: 
http://svn.apache.org/viewvc/cxf/trunk/rt/core/src/main/java/org/apache/cxf/attachment/AttachmentSerializer.java?rev=963925&r1=963924&r2=963925&view=diff
==============================================================================
--- 
cxf/trunk/rt/core/src/main/java/org/apache/cxf/attachment/AttachmentSerializer.java
 (original)
+++ 
cxf/trunk/rt/core/src/main/java/org/apache/cxf/attachment/AttachmentSerializer.java
 Wed Jul 14 02:14:42 2010
@@ -129,7 +129,7 @@ public class AttachmentSerializer {
         StringBuilder mimeBodyCt = new StringBuilder();
         String bodyType = getHeaderValue("Content-Type", null);
         if (bodyType == null) {
-            mimeBodyCt.append("application/xop+xml; charset=")
+            mimeBodyCt.append((xop ? "application/xop+xml" : "text/xml") + "; 
charset=")
                 .append(encoding)
                 .append("; type=\"")
                 .append(bodyCt)

Modified: 
cxf/trunk/rt/core/src/test/java/org/apache/cxf/attachment/AttachmentSerializerTest.java
URL: 
http://svn.apache.org/viewvc/cxf/trunk/rt/core/src/test/java/org/apache/cxf/attachment/AttachmentSerializerTest.java?rev=963925&r1=963924&r2=963925&view=diff
==============================================================================
--- 
cxf/trunk/rt/core/src/test/java/org/apache/cxf/attachment/AttachmentSerializerTest.java
 (original)
+++ 
cxf/trunk/rt/core/src/test/java/org/apache/cxf/attachment/AttachmentSerializerTest.java
 Wed Jul 14 02:14:42 2010
@@ -43,7 +43,16 @@ import org.junit.Test;
 public class AttachmentSerializerTest extends Assert {
     
     @Test
-    public void testMessageWrite() throws Exception {
+    public void testMessageWriteXopOn() throws Exception {
+        doTestMessageWrite(true);
+    }
+    
+    @Test
+    public void testMessageWriteXopOff() throws Exception {
+        doTestMessageWrite(false);
+    }
+    
+    private void doTestMessageWrite(boolean xop) throws Exception {
         MessageImpl msg = new MessageImpl();
         
         Collection<Attachment> atts = new ArrayList<Attachment>();
@@ -64,6 +73,10 @@ public class AttachmentSerializerTest ex
         msg.setContent(OutputStream.class, out);
         
         AttachmentSerializer serializer = new AttachmentSerializer(msg);
+        if (!xop) {
+            // default is "on"
+            serializer.setXop(xop);
+        }
         
         serializer.writeProlog();
 
@@ -84,8 +97,14 @@ public class AttachmentSerializerTest ex
         MimeMultipart multipart = (MimeMultipart) inMsg.getContent();
         
         MimeBodyPart part = (MimeBodyPart) multipart.getBodyPart(0);
-        assertEquals("application/xop+xml; charset=UTF-8; 
type=\"application/soap+xml\";", 
-                     part.getHeader("Content-Type")[0]);
+        if (xop) {
+            assertEquals("application/xop+xml; charset=UTF-8; 
type=\"application/soap+xml\";", 
+                         part.getHeader("Content-Type")[0]);
+        } else {
+            assertEquals("text/xml; charset=UTF-8; 
type=\"application/soap+xml\";", 
+                         part.getHeader("Content-Type")[0]);
+        }
+        
         assertEquals("binary", part.getHeader("Content-Transfer-Encoding")[0]);
         assertEquals("<[email protected]>", 
part.getHeader("Content-ID")[0]);
         
@@ -101,7 +120,7 @@ public class AttachmentSerializerTest ex
         assertEquals("application/octet-stream", 
part2.getHeader("Content-Type")[0]);
         assertEquals("binary", 
part2.getHeader("Content-Transfer-Encoding")[0]);
         assertEquals("<test.xml>", part2.getHeader("Content-ID")[0]);
-        
+
     }
     
     @Test


Reply via email to