@SuppressWarnings("unchecked")
public Object getVariable(VariableInstanceInfo variableInfo, Environment env) {
try {
String persisterFQN = variableInfo.getPersister();
VariablePersister persister = variablePersisters.get(persisterFQN);
if (persister == null) {
Class<VariablePersister> clazz = (Class<VariablePersister>) Class.forName(persisterFQN);
Constructor<VariablePersister> constructor = clazz.getDeclaredConstructor();
persister = (VariablePersister) constructor.newInstance();
variablePersisters.put(persisterFQN, persister);
}
return persister.getExternalPersistedVariable(variableInfo, env);
} catch (InstantiationException ex) {
ex.printStackTrace();
Logger.getLogger(VariablePersistenceStrategy.class.getName()).log(Level.SEVERE, null, ex);
} catch (IllegalAccessException ex) {
ex.printStackTrace();