001: /*
002: * JOnAS: Java(TM) Open Application Server
003: * Copyright (C) 1999 Bull S.A.
004: * Contact: jonas-team@objectweb.org
005: *
006: * This library is free software; you can redistribute it and/or
007: * modify it under the terms of the GNU Lesser General Public
008: * License as published by the Free Software Foundation; either
009: * version 2.1 of the License, or any later version.
010: *
011: * This library is distributed in the hope that it will be useful,
012: * but WITHOUT ANY WARRANTY; without even the implied warranty of
013: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
014: * Lesser General Public License for more details.
015: *
016: * You should have received a copy of the GNU Lesser General Public
017: * License along with this library; if not, write to the Free Software
018: * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
019: * USA
020: *
021: * --------------------------------------------------------------------------
022: * $Id: F_CatcherEC2.java 7292 2005-08-24 19:09:52Z ashah $
023: * --------------------------------------------------------------------------
024: */
025:
026: package org.objectweb.jonas.jtests.clients.exception;
027:
028: import java.rmi.RemoteException;
029: import javax.ejb.FinderException;
030: import javax.naming.NamingException;
031: import javax.rmi.PortableRemoteObject;
032: import junit.framework.Test;
033: import junit.framework.TestSuite;
034: import org.objectweb.jonas.jtests.beans.beanexc.AccountEHome;
035:
036: public class F_CatcherEC2 extends A_CatcherEntity {
037:
038: private static String BEAN_HOME = "beanexcAccountEC2Home";
039: protected static AccountEHome home = null;
040:
041: public F_CatcherEC2(String name) {
042: super (name);
043: }
044:
045: public AccountEHome getHome() {
046: if (home == null) {
047: try {
048: home = (AccountEHome) PortableRemoteObject.narrow(ictx
049: .lookup(BEAN_HOME), AccountEHome.class);
050: } catch (NamingException e) {
051: fail("Cannot get bean home");
052: }
053: }
054:
055: return home;
056: }
057:
058: protected void setUp() {
059: super .setUp();
060: try {
061: getHome().findByNoAccount(101);
062: } catch (FinderException fe) {
063: // init here tables if CMP2
064: try {
065: utx.begin();
066: home.create(101, "Antoine de St Exupery", 900);
067: home.create(102, "Alexandre Dumas fils", 500);
068: home.create(103, "Conan Doyle", 800);
069: home.create(104, "Alfred de Musset", 140);
070: home.create(105, "Phileas Lebegue", 235);
071: home.create(81, "Philippe Coq", 20);
072: home.create(82, "Philippe Durieux", 20);
073: home.create(83, "Helene Joanin", 20);
074: home.create(84, "Adriana Danes", 20);
075: home.create(85, "Francois Exertier", 20);
076: home.create(86, "John Doo", 20);
077: home.create(87, "Jim", 20);
078: home.create(999990, "For exception in ejbRemove", 20);
079: home.create(999991, "For exception in ejbRemove", 20);
080: home.create(999992, "For exception in ejbRemove", 20);
081: home.create(999993, "For exception in ejbRemove", 20);
082: utx.commit();
083: } catch (Exception i) {
084: throw new RuntimeException(i);
085: }
086: } catch (RemoteException re) {
087: throw new RuntimeException(re);
088: }
089: }
090:
091: /**
092: * This suite is all CMP version 2 test cases
093: */
094: public static Test suite() {
095: return new TestSuite(F_CatcherEC2.class);
096: }
097:
098: public static void main(String args[]) {
099: String testtorun = null;
100: // Get args
101: for (int argn = 0; argn < args.length; argn++) {
102: String s_arg = args[argn];
103: Integer i_arg;
104: if (s_arg.equals("-n")) {
105: testtorun = args[++argn];
106: }
107: }
108: if (testtorun == null) {
109: junit.textui.TestRunner.run(suite());
110: } else {
111: junit.textui.TestRunner.run(new F_CatcherEC2(testtorun));
112: }
113: }
114: }
|