Re: Executing multiple methods on same java instance
Thanks Arne and Daniel for your inputs.
I hope the following code snippet could explain my scenario better. I
have a Object locator method which based on config properties, does a
EJB look up for home object or a POJO instantiation and provides the
Object back.
While doing so, it also places the object reference in a HashMap for
future use.
Now I am not sure if this would be tread safe with the entire class
being a singleton class.
if (businessServices.get(taskId) != null) {
obj = businessServices.get(taskId);
}else{
/String serviceType =
(String)configInfo.get(CommonConstants.ATTR_SERVICE_TYPE);
//if the business service is of JNDI type , it will proceed in the
else part
if((serviceType != null) &&
(serviceType.equals(CommonConstants.ATTR_JNDI))){
Context initialContext = new InitialContext(env);
obj = initialContext.lookup(jndiName);
Class clazz = Class.forName(homeClass) ;
Object home = (EJBHome) PortableRemoteObject.narrow(obj, clazz);
obj = home;
businessServices.put(taskId, obj);
}else if ((serviceType != null) &&
(serviceType.equals(CommonConstants.ATTR_POJO))){
obj = Class.forName(className);
businessServices.put(taskId, obj);
}
return obj;
}