fix calling session recover when client in client acknowledge mode

This commit is contained in:
Goran Siska
2019-06-18 10:35:02 +02:00
parent 81675a95cd
commit bbb38295f5
2 changed files with 20 additions and 2 deletions

View File

@@ -506,6 +506,10 @@ namespace Spring.Messaging.Ems.Listener
// Transacted session created by this container -> rollback
EmsUtils.RollbackIfNecessary(session);
}
else if (IsClientAcknowledge(session))
{
session.Recover();
}
}
/// <summary>
/// Perform a rollback, handling rollback excepitons properly.
@@ -526,7 +530,12 @@ namespace Spring.Messaging.Ems.Listener
}
EmsUtils.RollbackIfNecessary(session);
}
} catch (EMSException)
else if (IsClientAcknowledge(session))
{
session.Recover();
}
}
catch (EMSException)
{
logger.Error("Application exception overriden by rollback exception", ex);
throw;

View File

@@ -504,6 +504,10 @@ namespace Spring.Messaging.Nms.Listener
// Transacted session created by this container -> rollback
NmsUtils.RollbackIfNecessary(session);
}
else if (IsClientAcknowledge(session))
{
session.Recover();
}
}
/// <summary>
/// Perform a rollback, handling rollback excepitons properly.
@@ -524,7 +528,12 @@ namespace Spring.Messaging.Nms.Listener
}
NmsUtils.RollbackIfNecessary(session);
}
} catch (NMSException)
else if (IsClientAcknowledge(session))
{
session.Recover();
}
}
catch (NMSException)
{
logger.Error("Application exception overriden by rollback exception", ex);
throw;