1 /** 2 * EasyBeans 3 * Copyright (C) 2006 Bull S.A.S. 4 * Contact: easybeans@objectweb.org 5 * 6 * This library is free software; you can redistribute it and/or 7 * modify it under the terms of the GNU Lesser General Public 8 * License as published by the Free Software Foundation; either 9 * version 2.1 of the License, or any later version. 10 * 11 * This library is distributed in the hope that it will be useful, 12 * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 14 * Lesser General Public License for more details. 15 * 16 * You should have received a copy of the GNU Lesser General Public 17 * License along with this library; if not, write to the Free Software 18 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 19 * USA 20 * 21 * -------------------------------------------------------------------------- 22 * $Id: PostConstructCatchException00.java 830 2006-07-11 09:51:35Z studzine $ 23 * -------------------------------------------------------------------------- 24 */ 25 package org.objectweb.easybeans.tests.common.interceptors.lifecycle.postconstruct; 26 27 import javax.annotation.PostConstruct; 28 import javax.interceptor.InvocationContext; 29 30 import org.objectweb.easybeans.log.JLog; 31 import org.objectweb.easybeans.log.JLogFactory; 32 import org.objectweb.easybeans.tests.common.ejbs.base.ItfCheckPostConstruct; 33 import org.objectweb.easybeans.tests.common.exception.IllegalException; 34 35 36 /** 37 * PostConstruct is used to get an IllegalException. 38 * @author Eduardo Studzinski Estima de Castro 39 * @author Gisele Pinheiro Souza 40 * 41 */ 42 public class PostConstructCatchException00 { 43 44 /** 45 * Log helper. 46 */ 47 private JLog logger = JLogFactory.getLog(PostConstructCatchException00.class); 48 49 /** 50 * Catches an CatchedException from another interceptor. 51 * @param ic context 52 */ 53 @PostConstruct 54 public void catchException(final InvocationContext ic){ 55 logger.debug("PostConstruct started."); 56 try{ 57 logger.debug("Calling proceed."); 58 ic.proceed(); 59 }catch(IllegalException e){ 60 logger.debug("PostConstruct callback was invoked."); 61 if (ic.getTarget() instanceof ItfCheckPostConstruct){ 62 ((ItfCheckPostConstruct) ic.getTarget()).setStatus(true); 63 } 64 }catch(Exception e){ 65 logger.debug("IllegalStateException."); 66 throw new IllegalStateException("The expected exception was not thrown."); 67 } 68 } 69 } 70