Red Hat Application Migration Toolkit
package mx.com.bcm.banamex.ae.negocio.design;
import java.util.Hashtable;
import java.util.Map;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.rmi.PortableRemoteObject;
public class ServiceLocator {
private InitialContext context;
private static Map service = new Hashtable();
private static ServiceLocator me = new ServiceLocator();
public static ServiceLocator getInstance() {
return me;
}
public Class remoteloockUp(String jndiName, Class a) {
Object obje = this.loockUp(jndiName);
return (Class)PortableRemoteObject.narrow(obje, a);
}
private Hashtable getConnection() {
Hashtable properties = new Hashtable();
properties.put("java.naming.factory.initial", "com.ibm.websphere.naming.WsnInitialContextFactory");
properties.put("java.naming.provider.url", "iiop://localhost:2809");
return properties;
}
public Object loockUp(String jndiName) {
Object obj = null;
Hashtable properties = this.getConnection();
if(service.containsKey(jndiName)) {
return service.get(jndiName);
} else {
try {
this.context = new InitialContext(properties);
obj = this.context.lookup(jndiName);
} catch (NamingException var5) {
System.out.println("Naming Exception occurred :");
var5.printStackTrace();
}
service.put(jndiName, obj);
return obj;
}
}
}