[
https://issues.apache.org/jira/browse/OPENEJB-1307?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
David Blevins resolved OPENEJB-1307.
------------------------------------
Resolution: Fixed
Fix Version/s: 4.0-beta-1
Assignee: Gurkan Erdogdu
> System Interceptors must not be instantiated by the ObjectReceipe
> -----------------------------------------------------------------
>
> Key: OPENEJB-1307
> URL: https://issues.apache.org/jira/browse/OPENEJB-1307
> Project: OpenEJB
> Issue Type: Bug
> Reporter: Gurkan Erdogdu
> Assignee: Gurkan Erdogdu
> Fix For: 4.0-beta-1
>
> Attachments: OPENEJB-1307.patch
>
>
> Currently StatsInterceptor instance has added directly to the bean via
> // Add the stats interceptor instance and other already created
> interceptor instances
> for (InterceptorInstance interceptorInstance :
> deploymentInfo.getSystemInterceptors()) {
> Class clazz =
> interceptorInstance.getData().getInterceptorClass();
> interceptorInstances.put(clazz.getName(),
> interceptorInstance.getInterceptor());
> }
> . And instance interceptors are added via ObjecttReceipe. Codes work normal.
> But when one calls the followings
> deploymentInfo.getCallBackInterceptors(); --> include system interceptors
> deploymentInfo.setCallBackInterceptors(); --> it adds system interceptors to
> instance interceptors.
> After that when instance interceptor is created by the ObjectReceipe, it
> throws exception (for example, StatsInterceptor has no public default
> constrcutor).
> Therefore it is a good idea to put guard code before ObjectReceipe
> instantiates interceptor instance.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira