Hi, I want to create an interceptor to retry EJB that are using container 
managed transactions.  I am using Jboss 4.2.2, I have written a sample app to 
attempt to intercept the exceptions from the CMT, but am having problems in 
getting it working.  Any help would be greatly appreciated, or an alternative 
approach?

Currently I am getting a Null Pointer Exception.


  | 13:48:37,750 WARN  [ServiceController] Problem starting service 
jboss.j2ee:ear=RetryTest.ear,jar=RetryTest-ejb.jar,name=SimpleSessionBean,service=EJB3
  | java.lang.NullPointerException
  |         at java.util.Arrays$ArrayList.<init>(Arrays.java:2355)
  |         at java.util.Arrays.asList(Arrays.java:2341)
  |         at 
org.jboss.ejb3.stateless.StatelessRemoteProxyFactory.getInterfaces(StatelessRemoteProxyFactory.java:76)
  |         at 
org.jboss.ejb3.stateless.BaseStatelessProxyFactory.init(BaseStatelessProxyFactory.java:163)
  |         at 
org.jboss.ejb3.stateless.StatelessRemoteProxyFactory.init(StatelessRemoteProxyFactory.java:113)
  |         at 
org.jboss.ejb3.stateless.BaseStatelessProxyFactory.start(BaseStatelessProxyFactory.java:212)
  |         at 
org.jboss.ejb3.stateless.StatelessRemoteProxyFactory.start(StatelessRemoteProxyFactory.java:120)
  |         at org.jboss.ejb3.ProxyDeployer.start(ProxyDeployer.java:83)
  | 
  | 

This is my jboss.xml file


  | <?xml version="1.0" encoding="UTF-8"?>
  | <jboss>
  | 
  |     <container-configuration extends="Standard Stateless SessionBean">
  |          <container-name>Retry</container-name>
  |          <container-interceptors>
  |             
<interceptor>org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor</interceptor>
  |             <interceptor>org.jboss.ejb.plugins.LogInterceptor</interceptor>
  |             <interceptor>retrytest.RetryInterceptor</interceptor>
  |             
<interceptor>org.jboss.ejb.plugins.SecurityInterceptor</interceptor>
  |             <!-- CMT -->
  |             <interceptor 
transaction="Container">org.jboss.ejb.plugins.TxInterceptorCMT</interceptor>
  |             </container-interceptors>
  |         </container-configuration>
  | 
  | 
  | 
  | <enterprise-beans>
  |       <session>
  |         <ejb-name>SimpleSessionBean</ejb-name>
  |         <jndi-name>RetryTest/SimpleSessionBean</jndi-name>
  |         <configuration-name>Retry</configuration-name>
  |       </session>
  |     </enterprise-beans>
  | </jboss>
  | 

This the Interceptor



  | 
  | 
  | public class RetryInterceptor extends AbstractInterceptor 
  |     {
  |        private static Log log = LogFactory.getLog(RetryInterceptor.class);
  |        
  |     @Override
  |        public Object invokeHome(final Invocation mi) throws Exception
  |        {
  | 
  |           System.out.println("INVOKE HOME retry INTERCEPTOR");
  |           
  |           Object o = null;
  |                  //will wrap up with a retry loop 
  |           try{
  |               o = getNext().invokeHome(mi);
  |           }catch(Exception e){
  |               log.info("RetryInterceptor: retry got an exception "+e);
  |               e.printStackTrace();
  |           }
  |           
  |           return o;
  | 
  |        }
  | 
  |     @Override
  |        public Object invoke(final Invocation mi) throws Exception
  |        {
  |           System.out.println("INVOKE retry INTERCEPTOR");
  |           
  |           
  |           Object o = null;
  |          //will wrap up with a retry loop 
  |           try{
  |               o = getNext().invoke(mi);
  |           }catch(Exception e){
  |               log.debug("RetryInterceptor: retry got an exception "+e);
  |               e.printStackTrace();
  |           }
  |           
  |           return o;                         
  |        }    
  | }
  | 

View the original post : 
http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4246426#4246426

Reply to the post : 
http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=4246426
_______________________________________________
jboss-user mailing list
jboss-user@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/jboss-user

Reply via email to