Are nested transactions supported?
No. Because of the limited resources of current smart cards, Java Card 2.1.1 only supports one transaction level. If you call JCSystem.beginTransaction() when a transaction is already is progress, the VM will throw a TransactionException.
Using JCSystem.getTransactionDepth(), you can find out if a transaction is currently opened.