[jboss-svn-commits] JBL Code SVN: r29068 - in labs/jbossesb/workspace/platform/branches/SOA-4.3.0.GA_CP01_SOA-1441/product/rosetta: tests/src/org/jboss/soa/esb/actions/routing/http and 1 other directory.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Wed Aug 26 09:27:57 EDT 2009


Author: mageshbk at jboss.com
Date: 2009-08-26 09:27:56 -0400 (Wed, 26 Aug 2009)
New Revision: 29068

Modified:
   labs/jbossesb/workspace/platform/branches/SOA-4.3.0.GA_CP01_SOA-1441/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/HttpRouter.java
   labs/jbossesb/workspace/platform/branches/SOA-4.3.0.GA_CP01_SOA-1441/product/rosetta/tests/src/org/jboss/soa/esb/actions/routing/http/HttpRouterUnitTest.java
Log:
[SOA-1441] fixed [JBESB-2797] HttpRouter fire java.lang.IllegalArgumentException if the Status Code is 304 (Not Modified)

Modified: labs/jbossesb/workspace/platform/branches/SOA-4.3.0.GA_CP01_SOA-1441/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/HttpRouter.java
===================================================================
--- labs/jbossesb/workspace/platform/branches/SOA-4.3.0.GA_CP01_SOA-1441/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/HttpRouter.java	2009-08-26 13:20:46 UTC (rev 29067)
+++ labs/jbossesb/workspace/platform/branches/SOA-4.3.0.GA_CP01_SOA-1441/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/HttpRouter.java	2009-08-26 13:27:56 UTC (rev 29068)
@@ -106,7 +106,7 @@
 
                 InputStream resultStream = method.getResponseBodyAsStream();
                 try {
-                    byte[] bytes = StreamUtils.readStream(resultStream);
+                    byte[] bytes = readStream(resultStream);
 
                     if(responseType == ResponseType.STRING) {
                         getPayloadProxy().setPayload(message, new String(bytes, method.getResponseCharSet()));
@@ -127,12 +127,21 @@
 
         return message;
     }
-    
+
+    byte[] readStream(final InputStream stream) throws IOException {
+        if (stream != null) {
+            return StreamUtils.readStream(stream);
+        }
+        else
+           return new byte[0];
+    }
+
     void closeStream(final Closeable c) throws IOException {
         if (c != null) {
             c.close();
         }
     }
+
     private String[] extractMappedHeaderListConfig() throws ConfigurationException {
         final String mappedHeaders = config.getAttribute("MappedHeaderList");
         if (mappedHeaders != null) {

Modified: labs/jbossesb/workspace/platform/branches/SOA-4.3.0.GA_CP01_SOA-1441/product/rosetta/tests/src/org/jboss/soa/esb/actions/routing/http/HttpRouterUnitTest.java
===================================================================
--- labs/jbossesb/workspace/platform/branches/SOA-4.3.0.GA_CP01_SOA-1441/product/rosetta/tests/src/org/jboss/soa/esb/actions/routing/http/HttpRouterUnitTest.java	2009-08-26 13:20:46 UTC (rev 29067)
+++ labs/jbossesb/workspace/platform/branches/SOA-4.3.0.GA_CP01_SOA-1441/product/rosetta/tests/src/org/jboss/soa/esb/actions/routing/http/HttpRouterUnitTest.java	2009-08-26 13:27:56 UTC (rev 29068)
@@ -36,6 +36,7 @@
 import org.jboss.soa.esb.helpers.ConfigTree;
 import org.jboss.soa.esb.message.Message;
 import org.jboss.soa.esb.message.format.MessageFactory;
+import org.jboss.soa.esb.message.format.MessageType;
 import org.junit.Before;
 import org.junit.Test;
 
@@ -99,7 +100,26 @@
             fail(e.getMessage());
         }
     }
-    
+
+    @Test
+    public void testRouter_NullBody() throws ConfigurationException, ActionProcessingException
+    {    
+        final ConfigTree tree = new ConfigTree("ValidMappedHeaderList");
+        tree.setAttribute("endpointUrl", "http://foo.bar");
+        tree.setAttribute("method", "post");
+        tree.setAttribute("MappedHeaderList", "SOAPAction, Content-Type, Accept, If-Modified-Since");
+        
+        HttpRouter router = new HttpRouter(tree);
+        try
+        {
+            router.readStream(null);
+        }
+        catch (final IOException e)
+        {
+            fail(e.getMessage());
+        }
+    }
+
     public static junit.framework.Test suite() {
         return new JUnit4TestAdapter(HttpRouterUnitTest.class);
     }



More information about the jboss-svn-commits mailing list