// Return non-Tx value
if (txLocal.getTransaction() == null) return invocation.invokeNext();
// just in case we have a primitive, we can't return null so set txLocal to be the current nonTx value
if (txLocal.get() == null)
{
txLocal.set(invocation.invokeNext());
}
return txLocal.get();