U gebruikt de container om persistentie te beheren. Door transactie VEREIST te gebruiken, start JPA een nieuwe transactie voor elke aanroep naar de database. Daarom is het niet nodig om een transactie te starten of vast te leggen binnen de opgeslagen procedure. In feite is het een slecht idee.
Je vermeldt niet of je een nieuwe transactie start in de opgeslagen procedure, alleen dat je daar een commit hebt. Als je geen (nieuwe) transactie start, zal die commit voor problemen zorgen. Zelfs als je dat doet, is het niet nodig, dit is het soort dingen waar we JPA voor gebruiken om mee te beginnen.