You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by wt...@apache.org on 2009/02/27 05:59:46 UTC
svn commit: r748393 - in /camel/branches/camel-1.x: ./
components/camel-restlet/src/main/java/org/apache/camel/component/restlet/DefaultRestletBinding.java
components/camel-restlet/src/test/java/org/apache/camel/component/restlet/RestletFaultTest.java
Author: wtam
Date: Fri Feb 27 04:59:45 2009
New Revision: 748393
URL: http://svn.apache.org/viewvc?rev=748393&view=rev
Log:
Merged revisions 748392 via svnmerge from
https://svn.apache.org/repos/asf/camel/trunk
........
r748392 | wtam | 2009-02-26 23:55:02 -0500 (Thu, 26 Feb 2009) | 1 line
[CAMEL-1400] Restlet default binding does not acknowledge Fault message in the exchange when creating a response
........
Added:
camel/branches/camel-1.x/components/camel-restlet/src/test/java/org/apache/camel/component/restlet/RestletFaultTest.java
- copied unchanged from r748392, camel/trunk/components/camel-restlet/src/test/java/org/apache/camel/component/restlet/RestletFaultTest.java
Modified:
camel/branches/camel-1.x/ (props changed)
camel/branches/camel-1.x/components/camel-restlet/src/main/java/org/apache/camel/component/restlet/DefaultRestletBinding.java
Propchange: camel/branches/camel-1.x/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Fri Feb 27 04:59:45 2009
@@ -1 +1 @@
-/camel/trunk:736980,739733,739904,740251,740295,740306,740596,740663,741848,742231,742705,742739,742854,742856,742898,742906,743613,743762,743773,743920,743959-743960,744123,745105,745367,745541,745751,745826,745978,746269,746872,746895,746962,747258,747678-747704
+/camel/trunk:736980,739733,739904,740251,740295,740306,740596,740663,741848,742231,742705,742739,742854,742856,742898,742906,743613,743762,743773,743920,743959-743960,744123,745105,745367,745541,745751,745826,745978,746269,746872,746895,746962,747258,747678-747704,748392
Propchange: camel/branches/camel-1.x/
------------------------------------------------------------------------------
Binary property 'svnmerge-integrated' - no diff available.
Modified: camel/branches/camel-1.x/components/camel-restlet/src/main/java/org/apache/camel/component/restlet/DefaultRestletBinding.java
URL: http://svn.apache.org/viewvc/camel/branches/camel-1.x/components/camel-restlet/src/main/java/org/apache/camel/component/restlet/DefaultRestletBinding.java?rev=748393&r1=748392&r2=748393&view=diff
==============================================================================
--- camel/branches/camel-1.x/components/camel-restlet/src/main/java/org/apache/camel/component/restlet/DefaultRestletBinding.java (original)
+++ camel/branches/camel-1.x/components/camel-restlet/src/main/java/org/apache/camel/component/restlet/DefaultRestletBinding.java Fri Feb 27 04:59:45 2009
@@ -17,6 +17,8 @@
package org.apache.camel.component.restlet;
import java.io.IOException;
+import java.io.PrintWriter;
+import java.io.StringWriter;
import java.util.Map;
import javax.xml.transform.dom.DOMSource;
@@ -166,8 +168,26 @@
public void populateRestletResponseFromExchange(Exchange exchange,
Response response) {
+ Message out = null;
+ if (exchange.isFailed()) {
+ // 500 for internal server error which can be overridden by response code in header
+ response.setStatus(Status.valueOf(500));
+ out = exchange.getFault(false);
+ if (out == null) {
+ Throwable t = exchange.getException();
+ if (t != null) {
+ StringWriter sw = new StringWriter();
+ PrintWriter pw = new PrintWriter(sw);
+ t.printStackTrace(pw);
+ response.setEntity(sw.toString(), MediaType.TEXT_PLAIN);
+ return;
+ }
+ }
+ } else {
+ out = exchange.getOut();
+ }
+
// get content type
- Message out = exchange.getOut();
MediaType mediaType = out.getHeader(RestletConstants.MEDIA_TYPE, MediaType.class);
if (mediaType == null) {
Object body = out.getBody();