1 6 7 package org.jfox.examples.ejb.stateless; 8 9 import java.io.FileInputStream ; 10 import java.io.FileOutputStream ; 11 import java.io.ObjectInputStream ; 12 import java.io.ObjectOutputStream ; 13 import javax.ejb.EJBMetaData ; 14 import javax.ejb.Handle ; 15 import javax.ejb.HomeHandle ; 16 import javax.naming.Context ; 17 import javax.naming.InitialContext ; 18 19 import junit.framework.TestCase; 20 21 24 25 public class TestMain extends TestCase { 26 private static TestStatelessHome home = null; 27 private static TestStateless statelessBean = null; 28 29 static { 30 try { 31 Context ctx = new InitialContext (); 32 Object obj = ctx.lookup("TestStatelessEJB"); 33 home = (TestStatelessHome) javax.rmi.PortableRemoteObject.narrow(obj, TestStatelessHome.class); 34 statelessBean = home.create(); 35 } 36 catch(Exception e) { 37 e.printStackTrace(); 38 } 39 } 40 41 protected void setUp() throws Exception { 43 } 44 45 public void testToString() { 46 System.out.println(home.toString()); 47 System.out.println(statelessBean); 48 } 49 50 51 public void testGetEJBMetaData() { 52 try { 53 System.out.print("test getEJBMetaData()..."); 54 EJBMetaData meta = home.getEJBMetaData(); 55 System.out.println("EJBMetaData: " + meta); 56 } 57 catch(Exception e) { 58 e.printStackTrace(); 59 fail(e.toString()); 60 } 61 62 } 63 64 public void testGetVoice() { 65 try { 66 System.out.print("test method getVoice()..."); 67 Thread.sleep(10000); 68 assertTrue(statelessBean.getVoice().equals("Hello,Stateless SessionBean!")); 69 System.out.println("OK!"); 70 } 71 catch(Exception e) { 72 e.printStackTrace(); 73 fail(e.toString()); 74 } 75 } 76 77 public void testHomeHandle() { 78 try { 79 System.out.print("test HomeHandle serialize & deserialize..."); 80 HomeHandle homeHandle = home.getHomeHandle(); 81 writeHandle(homeHandle); 82 homeHandle = (HomeHandle ) readHandle(); 83 home = (TestStatelessHome) homeHandle.getEJBHome(); 84 statelessBean = home.create(); 85 assertTrue(statelessBean.getVoice().equals("Hello,Stateless SessionBean!")); 86 System.out.println("OK!"); 87 } 88 catch(Exception e) { 89 e.printStackTrace(); 90 fail(e.toString()); 91 } 92 } 93 94 public void testHandle() { 95 try { 96 System.out.print("test Handle serialize & deserialize..."); 97 Handle handle = statelessBean.getHandle(); 98 writeHandle(handle); 99 handle = (Handle ) readHandle(); 100 statelessBean = (TestStateless) handle.getEJBObject(); 101 assertTrue(statelessBean.getVoice().equals("Hello,Stateless SessionBean!")); 102 System.out.println("OK!"); 103 } 104 catch(Exception e) { 105 e.printStackTrace(); 106 fail(e.toString()); 107 } 108 } 109 110 public void testGetWorld() { 111 try { 112 System.out.print("test getCount()..."); 113 int count = statelessBean.getCount(); 114 System.out.println(count + " OK!"); 115 } 116 catch(Exception e) { 117 e.printStackTrace(); 118 fail(e.toString()); 119 } 120 } 121 122 private void writeHandle(Object obj) throws Exception { 123 ObjectOutputStream out = new ObjectOutputStream (new FileOutputStream (this.getClass() + ".ser")); 124 out.writeObject(obj); 125 out.close(); 126 } 127 128 private Object readHandle() throws Exception { 129 ObjectInputStream in = new ObjectInputStream (new FileInputStream (this.getClass() + ".ser")); 130 Object handle = in.readObject(); 131 in.close(); 132 return handle; 133 } 134 135 public static void main(String [] args) { 136 junit.textui.TestRunner.run(TestMain.class); 137 } 138 139 } 140 | Popular Tags |