Whenever you want your calls to your EJB to be or not to be in a Transaction. There are many reasons why something might fail on your calls, and you would want any saved stuff to revert back to their original vales, Transactions handle that. Without transactions you could have some state in a bad state.