[jboss-svn-commits] JBL Code SVN: r29299 - in labs/jbossesb/branches/JBESB_4_4_GA_CP/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
Thu Sep 10 11:20:30 EDT 2009


Author: kevin.conner at jboss.com
Date: 2009-09-10 11:20:29 -0400 (Thu, 10 Sep 2009)
New Revision: 29299

Modified:
   labs/jbossesb/branches/JBESB_4_4_GA_CP/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/HttpRouter.java
   labs/jbossesb/branches/JBESB_4_4_GA_CP/product/rosetta/tests/src/org/jboss/soa/esb/actions/routing/http/HttpRouterUnitTest.java
Log:
Fix null HttpRouter input stream: JBESB-2821

Modified: labs/jbossesb/branches/JBESB_4_4_GA_CP/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/HttpRouter.java
===================================================================
--- labs/jbossesb/branches/JBESB_4_4_GA_CP/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/HttpRouter.java	2009-09-10 14:42:36 UTC (rev 29298)
+++ labs/jbossesb/branches/JBESB_4_4_GA_CP/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/HttpRouter.java	2009-09-10 15:20:29 UTC (rev 29299)
@@ -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,7 +127,15 @@
 
         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();

Modified: labs/jbossesb/branches/JBESB_4_4_GA_CP/product/rosetta/tests/src/org/jboss/soa/esb/actions/routing/http/HttpRouterUnitTest.java
===================================================================
--- labs/jbossesb/branches/JBESB_4_4_GA_CP/product/rosetta/tests/src/org/jboss/soa/esb/actions/routing/http/HttpRouterUnitTest.java	2009-09-10 14:42:36 UTC (rev 29298)
+++ labs/jbossesb/branches/JBESB_4_4_GA_CP/product/rosetta/tests/src/org/jboss/soa/esb/actions/routing/http/HttpRouterUnitTest.java	2009-09-10 15:20:29 UTC (rev 29299)
@@ -99,7 +99,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