一個方法必須被指定做為session beans或message driven bean一個周期回調攔截器方法來接收周期事件的通知.周期回調攔截器方法用PostConstructm,PreDestroy,PostActivate或者PrePassivate等標志符來標志.
一個攔截器類可以被使用來代替直接把回調方法定義在攔截器中的方法.
在bean類或者在攔截器類中的通過用元數據標志或者部署描述符為bean類進行靜態地配置周期回調方法.
在bean中定義的周期回調函數有以下特性:
public void <Method>{}
在攔截器中的周期回調函數有以下特性
public void <Method>(InvocationContext)
業務方法的攔截器方法可以為session bean的業務方法和message-driven bean的消息監聽方法定義.業務方法的攔截器方法是用AroundInvoke標志來表示.在bean中或者在任何一個給定的攔截器類中,只有一個AroundInvoke方法可以被表示.一個AroundInvoke方法不一定是一個業務方法.
業務方法的調用被bean中或攔截器類中的AroundInvoke方法調用.AroundInvoke方法總是會調用InvocationContect.proceed()方法或者業務方法和任何并發的攔截器AroundInvoke都不會被調用.
AroundInvoke方法有以下特性:
public object<Method> (InvocationContext) throws Exception
InvocationContext提供了攔截器方法所需要的元數據.