You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2009/01/23 07:06:46 UTC

svn commit: r736957 - in /camel/branches/camel-1.x: ./ components/camel-restlet/src/test/java/org/apache/camel/component/restlet/ components/camel-sql/src/main/java/org/apache/camel/component/sql/ components/camel-sql/src/test/java/org/apache/camel/com...

Author: davsclaus
Date: Thu Jan 22 22:06:46 2009
New Revision: 736957

URL: http://svn.apache.org/viewvc?rev=736957&view=rev
Log:
Merged revisions 736953 via svnmerge from 
https://svn.apache.org/repos/asf/camel/trunk

........
  r736953 | davsclaus | 2009-01-23 07:03:39 +0100 (Fri, 23 Jan 2009) | 1 line
  
  CAMEL-1292: SQL component should preserve headers from IN message
........

Added:
    camel/branches/camel-1.x/components/camel-sql/src/test/java/org/apache/camel/component/sql/SqlPreserveHeaderTest.java
      - copied unchanged from r736953, camel/trunk/components/camel-sql/src/test/java/org/apache/camel/component/sql/SqlPreserveHeaderTest.java
Modified:
    camel/branches/camel-1.x/   (props changed)
    camel/branches/camel-1.x/components/camel-restlet/src/test/java/org/apache/camel/component/restlet/RestletRouteBuilderTest.java   (props changed)
    camel/branches/camel-1.x/components/camel-sql/src/main/java/org/apache/camel/component/sql/SqlProducer.java

Propchange: camel/branches/camel-1.x/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Jan 22 22:06:46 2009
@@ -1,2 +1,2 @@
 /activemq/camel/trunk:732943,733749,734053,734057-734058,734064,734130,734309,734340-734342,734348,734392,734422,734727,734903,734932,735421,735427,735732
-/camel/trunk:735847,735888,736227,736562,736617-736620,736676
+/camel/trunk:735847,735888,736227,736562,736617-736620,736676,736953

Propchange: camel/branches/camel-1.x/
------------------------------------------------------------------------------
Binary property 'svnmerge-integrated' - no diff available.

Propchange: camel/branches/camel-1.x/components/camel-restlet/src/test/java/org/apache/camel/component/restlet/RestletRouteBuilderTest.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Jan 22 22:06:46 2009
@@ -1 +1 @@
-/camel/trunk/components/camel-restlet/src/test/java/org/apache/camel/component/restlet/RestletRouteBuilderTest.java:736676
+/camel/trunk/components/camel-restlet/src/test/java/org/apache/camel/component/restlet/RestletRouteBuilderTest.java:736676,736953

Modified: camel/branches/camel-1.x/components/camel-sql/src/main/java/org/apache/camel/component/sql/SqlProducer.java
URL: http://svn.apache.org/viewvc/camel/branches/camel-1.x/components/camel-sql/src/main/java/org/apache/camel/component/sql/SqlProducer.java?rev=736957&r1=736956&r2=736957&view=diff
==============================================================================
--- camel/branches/camel-1.x/components/camel-sql/src/main/java/org/apache/camel/component/sql/SqlProducer.java (original)
+++ camel/branches/camel-1.x/components/camel-sql/src/main/java/org/apache/camel/component/sql/SqlProducer.java Thu Jan 22 22:06:46 2009
@@ -54,8 +54,11 @@
                 } catch (NoTypeConversionAvailableException e) {
                     // ignored - assumed no parameters have to be used
                 }
-                if (argNumber - 1 != ps.getParameterMetaData().getParameterCount()) {
-                    throw new SQLException("To less parameters set");
+
+                // number of parameters must match
+                int expected = ps.getParameterMetaData().getParameterCount();
+                if (argNumber - 1 != expected) {
+                    throw new SQLException("Number of parameters mismatch. Expected: " + expected + ", was:" + (argNumber - 1));
                 }
                 
                 boolean isResultSet = ps.execute();
@@ -64,9 +67,13 @@
                     RowMapperResultSetExtractor mapper = new RowMapperResultSetExtractor(new ColumnMapRowMapper());
                     List<?> result = (List<?>) mapper.extractData(ps.getResultSet());
                     exchange.getOut().setBody(result);
+                    // preserve headers
+                    exchange.getOut().setHeaders(exchange.getIn().getHeaders());
                 } else {
                     exchange.getIn().setHeader(UPDATE_COUNT, ps.getUpdateCount());
                 }
+
+                // data is set on exchange so return null
                 return null;
             }
         });