我有一個名爲Drives的類,它動態地實例化FsAccess bean。
我有一個名爲ServersAccessService的服務類,它可以找到FsAccess bean,並使用@autowired將它們存儲在地圖中。在驅動器完成實例化FsAccess bean之後,有沒有辦法讓服務類啓動@autowired?使用@autowired存儲在另一個類中動態創建的bean列表
服務類:
public class ServersAccessService implements DisposableBean {
protected static final Log log = LogFactory.getLog(ServersAccessService.class);
protected static Map<String, FsAccess> servers = new HashMap<String, FsAccess>();
I
protected Map<String, FsAccess> restrictedServers = new HashMap<String, FsAccess>();
protected boolean isInitialized = false;
protected static Map<String, DrivesCategory> drivesCategories = new HashMap<String, DrivesCategory>();
@Autowired
public void setServers(List<FsAccess> servers) {
for(FsAccess server: servers) {
this.servers.put(server.getDriveName(), server);
}
}
驅動器類:
MyBeanFactory mbf = new MyBeanFactory();
//loop through each drive in driveList
for(String name:driveList)
{
String fullUri = "smb://naz-fs3/home/"+name;
String icon = "/esup-portlet-stockage/img/drives/root.png";
VfsAccessImpl drive = mbf.createInstance();
//Set attribute information
drive.setDriveName(name);
drive.setIcon(icon);
drive.setUri(fullUri);
drive.setContextToken(name);
}
是'Drives'通過注入春天?它在哪裏獲得創建'FsAccess'實例所需的數據? – laz 2011-06-07 17:03:11
你是什麼意思通過春季注入?它從uPortal獲取數據。我正在爲uPortal重新構建一個portlet。 – Mike 2011-06-07 19:30:53
不熟悉uPortal的工作方式,Spring會發揮什麼作用?門戶網站本身將數據提供給「Drives」? – laz 2011-06-07 22:20:31