} catch (MalformedObjectNameException e) {
throw new IllegalStateException(e);
}
factory.setProxyInterface(type);
factory.setUseStrictCasing(false);
factory.afterPropertiesSet();
proxy = (T) factory.getObject();
proxies.put(name, new SoftReference<Object>(proxy));
}
return proxy;
}