We are using Sprong AOP for transaction management.
Some of the components are using the following config and rollback is happening as expected.
<property name="transactionAttributes"><props>
<prop key="retrieve*">PROPAGATION_REQUIRED,readOnly,-Exception</prop>
<prop key="get*">PROPAGATION_REQUIRED,readOnly,-Exception</prop>
<prop key="*">PROPAGATION_REQUIRED,-Exception</prop>
</props></property>
But in case of one module we are using this config
<property name="transactionAttributes">
<props><prop key="processMRPFeed">PROPAGATION_REQUIRED,-Exception</prop>
<prop key="processExcelFeed">PROPAGATION_REQUIRED,-Exception</prop>
<prop key="validateUnProcessedPOFeed">PROPAGATION_REQUIRED,-Exception</prop><prop key="triggerProcessInstance">PROPAGATION_REQUIRED,-Exception</prop>
</props></property>
This is method specific transaction attributes. This is not working and no rollback is happening.
Any guess on what must be wrong.