Al igual que las memorias caché locales de hebras, las memorias caché locales de transacciones sólo deben accederse cuando existe el contexto (transacción) correcto.
public void myMethod() { ... Cache<String, String> txnCache = CacheManagerEjb. getTransactionLocalCacheGroup().getCache("mycache"); String value = txnCache.get("key"); if(value == null) { // realizar operación costosa para calcular el valor - este // proceso sólo ocurre una vez por transacción ... // y almacenar el resultado txnCache.put("key", "value"); } ... }