1 22 package org.jboss.tutorial.ssl.client; 23 24 import org.jboss.tutorial.ssl.bean.Calculator; 25 26 import javax.naming.Context ; 27 import javax.naming.InitialContext ; 28 import javax.ejb.EJBAccessException ; 29 import java.util.Properties ; 30 31 34 public class Client 35 { 36 public static void main(String [] args) throws Exception 37 { 38 Properties env = new Properties (); 40 env.setProperty(Context.SECURITY_PRINCIPAL, "kabir"); 41 env.setProperty(Context.SECURITY_CREDENTIALS, "invalidpassword"); 42 env.setProperty(Context.INITIAL_CONTEXT_FACTORY, "org.jboss.security.jndi.JndiLoginInitialContextFactory"); 43 InitialContext ctx = new InitialContext (env); 44 Calculator calculator = (Calculator) ctx.lookup("CalculatorBean/remote"); 45 46 System.out.println("Kabir is a student."); 47 System.out.println("Kabir types in the wrong password"); 48 try 49 { 50 System.out.println("1 + 1 = " + calculator.add(1, 1)); 51 } 52 catch (EJBAccessException ex) 53 { 54 System.out.println("Saw expected SecurityException: " + ex.getMessage()); 55 } 56 57 System.out.println("Kabir types in correct password."); 58 System.out.println("Kabir does unchecked addition."); 59 60 env.setProperty(Context.SECURITY_CREDENTIALS, "validpassword"); 62 ctx = new InitialContext (env); 63 calculator = (Calculator) ctx.lookup("CalculatorBean/remote"); 64 65 System.out.println("1 + 1 = " + calculator.add(1, 1)); 66 67 System.out.println("Kabir is not a teacher so he cannot do division"); 68 try 69 { 70 calculator.divide(16, 4); 71 } 72 catch (EJBAccessException ex) 73 { 74 System.out.println(ex.getMessage()); 75 } 76 77 System.out.println("Students are allowed to do subtraction"); 78 System.out.println("1 - 1 = " + calculator.subtract(1, 1)); 79 } 80 } 81 | Popular Tags |