ZAWWW-2st1.2-w04.tresc-1.0-Slajd26
CMT: Wartości atrybutu transakcyjnego
Atrybut transakcyjny określa czy i w jakiej transakcji ma się wykonać wywołana metoda komponentu EJB, w zależności od tego czy klient wywołujący metodę jest w trakcie transakcji czy nie. Dopuszczalne wartości atrybutu transakcyjnego dla metod komponentu EJB to: NotSupported, Required, Supports, RequiresNew, Mandatory i Never. Znaczenie poszczególnych wartości jest następujące:
NotSupported – jeśli klient nie jest w transakcji, to kontener nie rozpoczyna nowej transakcji przed wywołaniem metody komponentu. Jeśli klient jest w transakcji, to transakcja jest zawieszana na czas działania metody.
Required - jeśli klient nie jest w transakcji, to kontener rozpoczyna nową transakcję przed wywołaniem metody komponentu. Jeśli klient jest w transakcji, to metoda komponentu wykona się w ramach tej transakcji.
Supports – jeśli klient nie jest w transakcji, to kontener nie rozpoczyna nowej transakcji przed wywołaniem metody komponentu. Jeśli klient jest w transakcji, to metoda komponentu wykona się w ramach tej transakcji.
RequiresNew – kontener rozpoczyna nową transakcję przed wywołaniem metody komponentu niezależnie od tego czy klient jest w transakcji czy nie. Jeśli klient jest w transakcji, to transakcja klienta jest zawieszana na czas wykonywania metody komponentu.
Mandatory – jeśli klient nie jest w transakcji, to kontener zgłasza wyjątek. Jeśli klient jest w transakcji, to metoda komponentu wykona się w ramach tej transakcji.
Never – jeśli klient nie jest w transakcji to metoda komponentu wykona się poza transakcją. Jeśli klient jest w transakcji, to kontener zgłasza wyjątek.