}
public Object getValue() throws IllegalStateException, IllegalArgumentException {
final ClassLoader oldCL = getContextClassLoader();
try {
final ClassLoader integrationCL = new DelegateClassLoader(getClassLoader(), classLoader);
setContextClassLoader(integrationCL);
final Referenceable referenceable = getReferenceable(integrationCL);
final Class<?> clazz = Class.forName(referenceable.getReference().getFactoryClassName(), true, integrationCL);
final ObjectFactory factory = (ObjectFactory)clazz.newInstance();
return factory.getObjectInstance(referenceable.getReference(), null, null, null);