summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--branches/sca-java-1.x/modules/interface-java-jaxws/src/main/java/org/apache/tuscany/sca/interfacedef/java/jaxws/JAXWSFaultExceptionMapper.java10
1 files changed, 8 insertions, 2 deletions
diff --git a/branches/sca-java-1.x/modules/interface-java-jaxws/src/main/java/org/apache/tuscany/sca/interfacedef/java/jaxws/JAXWSFaultExceptionMapper.java b/branches/sca-java-1.x/modules/interface-java-jaxws/src/main/java/org/apache/tuscany/sca/interfacedef/java/jaxws/JAXWSFaultExceptionMapper.java
index 0cd6286c87..adb1224066 100644
--- a/branches/sca-java-1.x/modules/interface-java-jaxws/src/main/java/org/apache/tuscany/sca/interfacedef/java/jaxws/JAXWSFaultExceptionMapper.java
+++ b/branches/sca-java-1.x/modules/interface-java-jaxws/src/main/java/org/apache/tuscany/sca/interfacedef/java/jaxws/JAXWSFaultExceptionMapper.java
@@ -167,8 +167,14 @@ public class JAXWSFaultExceptionMapper implements FaultExceptionMapper {
ex = new FaultException(message, faultInfo, cause);
}
} catch (NoSuchMethodException e5) {
- ctor = exceptionClass.getConstructor();
- ex = ctor.newInstance();
+ try {
+ ctor = exceptionClass.getConstructor(Throwable.class);
+ ex = ctor.newInstance(cause);
+ populateException(ex, faultInfo);
+ } catch (NoSuchMethodException e6) {
+ ctor = exceptionClass.getConstructor();
+ ex = ctor.newInstance();
+ }
}
}
}