@ -80,6 +80,7 @@ public class JmsMessageEndpointFactory extends AbstractMessageEndpointFactory {
@@ -80,6 +80,7 @@ public class JmsMessageEndpointFactory extends AbstractMessageEndpointFactory {
@ -93,10 +94,12 @@ public class JmsMessageEndpointFactory extends AbstractMessageEndpointFactory {
@@ -93,10 +94,12 @@ public class JmsMessageEndpointFactory extends AbstractMessageEndpointFactory {
messageListener.onMessage(message);
}
catch(RuntimeExceptionex){
endpointEx=ex;
onEndpointException(ex);
throwex;
}
catch(Errorerr){
endpointEx=err;
onEndpointException(err);
throwerr;
}
@ -106,7 +109,9 @@ public class JmsMessageEndpointFactory extends AbstractMessageEndpointFactory {
@@ -106,7 +109,9 @@ public class JmsMessageEndpointFactory extends AbstractMessageEndpointFactory {
afterDelivery();
}
catch(ResourceExceptionex){
thrownewJmsResourceException(ex);
if(endpointEx==null){
thrownewJmsResourceException(ex);
}
}
}
}
@ -114,7 +119,7 @@ public class JmsMessageEndpointFactory extends AbstractMessageEndpointFactory {
@@ -114,7 +119,7 @@ public class JmsMessageEndpointFactory extends AbstractMessageEndpointFactory {
@ -250,6 +250,7 @@ public abstract class AbstractMessageEndpointFactory implements MessageEndpointF
@@ -250,6 +250,7 @@ public abstract class AbstractMessageEndpointFactory implements MessageEndpointF
logger.debug("Transaction marked as rollback-only after endpoint exception",ex);
}
/**
@ -268,6 +269,7 @@ public abstract class AbstractMessageEndpointFactory implements MessageEndpointF
@@ -268,6 +269,7 @@ public abstract class AbstractMessageEndpointFactory implements MessageEndpointF
this.transactionDelegate.endTransaction();
}
catch(Throwableex){
logger.warn("Failed to complete transaction after endpoint delivery",ex);
thrownewApplicationServerInternalException("Failed to complete transaction",ex);
}
}
@ -279,7 +281,7 @@ public abstract class AbstractMessageEndpointFactory implements MessageEndpointF
@@ -279,7 +281,7 @@ public abstract class AbstractMessageEndpointFactory implements MessageEndpointF
this.transactionDelegate.endTransaction();
}
catch(Throwableex){
logger.error("Could not complete unfinished transaction on endpoint release",ex);
logger.warn("Could not complete unfinished transaction on endpoint release",ex);
}
}
}
@ -298,11 +300,10 @@ public abstract class AbstractMessageEndpointFactory implements MessageEndpointF
@@ -298,11 +300,10 @@ public abstract class AbstractMessageEndpointFactory implements MessageEndpointF
@ -96,24 +96,21 @@ public class GenericMessageEndpointFactory extends AbstractMessageEndpointFactor
@@ -96,24 +96,21 @@ public class GenericMessageEndpointFactory extends AbstractMessageEndpointFactor
@ -123,17 +120,23 @@ public class GenericMessageEndpointFactory extends AbstractMessageEndpointFactor
@@ -123,17 +120,23 @@ public class GenericMessageEndpointFactory extends AbstractMessageEndpointFactor