When you make an Object singleton, we all know its just unique per jvm or per class loader.
So what if you want to make an object unique in a clustered environment. One way of doing it is using JNDI object binding. Here is some sample code try to run on ur server.
private void jndiObjTest(){
try{
System.out.println("Teting jndi object cache");
NotchClient nc=new NotchClient("Sunny","T");
Hashtable ht = new Hashtable();
ht.put(Context.PROVIDER_URL, "http://localhost:7001");
ht.put(Context.INITIAL_CONTEXT_FACTORY,
"weblogic.jndi.WLInitialContextFactory");
ht.put(Context.REFERRAL,"throw");
InitialContext ctx = new InitialContext(ht);
ctx.bind("sam_name",nc);
System.out.println("Reading Object from JNDI lookup");
Object o=ctx.lookup("sam_name");
NotchClient n=(NotchClient)o;
System.out.println("Value of obj retrieved from jndi"+n.getName());
}catch(Exception e){
e.printStackTrace();
throw new RuntimeException(e);
}
}
Note: Please deploy the above code to ur local server to test, standalone java app wont work.
--Sunny
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment