You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by "David Blevins (JIRA)" <ji...@apache.org> on 2011/08/11 05:13:27 UTC

[jira] [Resolved] (OPENEJB-1307) System Interceptors must not be instantiated by the ObjectReceipe

     [ 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