Author: antelder
Date: Tue Feb 17 16:48:32 2009
New Revision: 745140

URL: http://svn.apache.org/viewvc?rev=745140&view=rev
Log:
TUSCANY-2845: Change JMS binding so unchecked exceptions are returned as 
RuntimeExceptions

Modified:
    
tuscany/branches/sca-java-1.x/itest/jms-nonscaclient-exceptions/src/test/java/org/apache/tuscany/sca/binding/jms/ExceptionsTestCase.java
    
tuscany/branches/sca-java-1.x/itest/jms/src/test/java/org/apache/tuscany/sca/binding/jms/ExceptionsTestCase.java
    
tuscany/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/AbstractMessageProcessor.java

Modified: 
tuscany/branches/sca-java-1.x/itest/jms-nonscaclient-exceptions/src/test/java/org/apache/tuscany/sca/binding/jms/ExceptionsTestCase.java
URL: 
http://svn.apache.org/viewvc/tuscany/branches/sca-java-1.x/itest/jms-nonscaclient-exceptions/src/test/java/org/apache/tuscany/sca/binding/jms/ExceptionsTestCase.java?rev=745140&r1=745139&r2=745140&view=diff
==============================================================================
--- 
tuscany/branches/sca-java-1.x/itest/jms-nonscaclient-exceptions/src/test/java/org/apache/tuscany/sca/binding/jms/ExceptionsTestCase.java
 (original)
+++ 
tuscany/branches/sca-java-1.x/itest/jms-nonscaclient-exceptions/src/test/java/org/apache/tuscany/sca/binding/jms/ExceptionsTestCase.java
 Tue Feb 17 16:48:32 2009
@@ -42,7 +42,6 @@
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
-import org.osoa.sca.ServiceRuntimeException;
 import org.xml.sax.SAXException;
 
 /**
@@ -103,7 +102,9 @@
         
         // FIXME: what should the response message be for unchecked exceptions 
with wireFormat.textXML???
         Object o = ((ObjectMessage)m).getObject();
-        assertTrue(o instanceof ServiceRuntimeException);
+        assertTrue(o instanceof RuntimeException);
+        
assertTrue("java.lang.RuntimeException".equals(o.getClass().getName()));
+        assertEquals("java.lang.RuntimeException: bla", 
((RuntimeException)o).getMessage());
     }
 
     @Test
@@ -147,9 +148,9 @@
         sendJMSObjectRequest("throwUnChecked");
         Message m = receiveJMSResponse();
         Object o = ((ObjectMessage)m).getObject();
-        assertTrue(o instanceof ServiceRuntimeException);
-        assertTrue(((ServiceRuntimeException)o).getCause() instanceof 
RuntimeException);
-        assertEquals("bla", 
((ServiceRuntimeException)o).getCause().getMessage());
+        assertTrue(o instanceof RuntimeException);
+        
assertTrue("java.lang.RuntimeException".equals(o.getClass().getName()));
+        assertEquals("java.lang.RuntimeException: bla", 
((RuntimeException)o).getMessage());
     }
 
     @After

Modified: 
tuscany/branches/sca-java-1.x/itest/jms/src/test/java/org/apache/tuscany/sca/binding/jms/ExceptionsTestCase.java
URL: 
http://svn.apache.org/viewvc/tuscany/branches/sca-java-1.x/itest/jms/src/test/java/org/apache/tuscany/sca/binding/jms/ExceptionsTestCase.java?rev=745140&r1=745139&r2=745140&view=diff
==============================================================================
--- 
tuscany/branches/sca-java-1.x/itest/jms/src/test/java/org/apache/tuscany/sca/binding/jms/ExceptionsTestCase.java
 (original)
+++ 
tuscany/branches/sca-java-1.x/itest/jms/src/test/java/org/apache/tuscany/sca/binding/jms/ExceptionsTestCase.java
 Tue Feb 17 16:48:32 2009
@@ -96,7 +96,7 @@
             service.throwUnChecked();
             fail();
         } catch (Exception e) {
-            assertEquals("bla", e.getCause().getCause().getMessage());
+            assertEquals("java.lang.RuntimeException: bla", 
e.getCause().getMessage());
         }
     }
 

Modified: 
tuscany/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/AbstractMessageProcessor.java
URL: 
http://svn.apache.org/viewvc/tuscany/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/AbstractMessageProcessor.java?rev=745140&r1=745139&r2=745140&view=diff
==============================================================================
--- 
tuscany/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/AbstractMessageProcessor.java
 (original)
+++ 
tuscany/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/AbstractMessageProcessor.java
 Tue Feb 17 16:48:32 2009
@@ -109,9 +109,11 @@
         try {
 
             ObjectMessage message = session.createObjectMessage();
-            if (o instanceof ServiceRuntimeException && 
((ServiceRuntimeException)o).getCause() instanceof InvocationTargetException) {
-                message.setObject(o.getCause() );
+            String causeMsg;
+            if (o instanceof RuntimeException) {
+                message.setObject(new RuntimeException(o.getMessage()));
             } else {
+                // for a checked exception return the checked exception
                 message.setObject(o);
             }
             message.setBooleanProperty(JMSBindingConstants.FAULT_PROPERTY, 
true);


Reply via email to