List 保留列表的旧值<;选择项目>;为了回到从前
我不知道我是否能清楚地解释我的问题,但我会尝试:) 我有很多文件夹,每个文件夹都互相依赖 例如: 文档、图片、根目录的其他依赖项。 文本取决于文件的类型。 PNG、GIF、JPG取决于图片的种类 第一次显示我拥有的列表时:List 保留列表的旧值<;选择项目>;为了回到从前,list,jsf,selectonemenu,List,Jsf,Selectonemenu,我不知道我是否能清楚地解释我的问题,但我会尝试:) 我有很多文件夹,每个文件夹都互相依赖 例如: 文档、图片、根目录的其他依赖项。 文本取决于文件的类型。 PNG、GIF、JPG取决于图片的种类 第一次显示我拥有的列表时: 文档 其他 照片 当我选择例如图片时,列表将显示PNG、GIF、JPG。 它总是相同的列表。 我不明白你是如何回到上一个列表的。 我试图创建另一个列表来保留旧值,但它不起作用,或者我不知道该值的赋值放在哪里 public List<SelectItem>
文档
其他
照片 当我选择例如图片时,列表将显示PNG、GIF、JPG。
它总是相同的列表。
我不明白你是如何回到上一个列表的。
我试图创建另一个列表来保留旧值,但它不起作用,或者我不知道该值的赋值放在哪里
public List<SelectItem> getListSelectItemFolder() {
if(mListSelectItemFolder == null)
{
mListSelectItemFolder = new ArrayList<SelectItem>();
List<Folder> lListFolder = getFolderManager().searchFolder(getFolderManager().getRootFolderId(mSessionBean.getUser(), mSessionBean.isNotUserAdminGe()), mSessionBean.getUser().getFirm(), mSessionBean.isNotUserAdminGe());
mListSelectItemFolder.add(new SelectItem(getFolderManager().getById(getFolderManager().getRootFolderId(mSessionBean.getUser(), mSessionBean.isNotUserAdminGe())), "root"));
for (Folder lFolder : lListFolder) {
if(lFolder.getId()>=0)
{
mListSelectItemFolder.add(new SelectItem(lFolder, lFolder.getName()));
}
}
return mListSelectItemFolder;
}
if(getDocument().getFolder()!=null)
{
List<Folder> lListFolder = getFolderManager().searchFolder(mDocument.getFolder().getId(), mSessionBean.getUser().getFirm(), mSessionBean.isNotUserAdminGe());
if(lListFolder.size()>0)
{
mListSelectItemFolder = new ArrayList<SelectItem>();
for (Folder lFolder : lListFolder) {
if(lFolder.getId()>=0)
{
mListSelectItemFolder.add(new SelectItem(lFolder, lFolder.getName()));
}
}
}
}
return mListSelectItemFolder;
}
公共列表getListSelectItemFolder(){
如果(mListSelectItemFolder==null)
{
mListSelectItemFolder=新建ArrayList();
列出lListFolder=getFolderManager().searchFolder(getFolderManager().getRootFolderId(mSessionBean.getUser(),mSessionBean.isNotUserAdminGe()),mSessionBean.getUser().getFirm(),mSessionBean.isNotUserAdminGe());
添加(新的SelectItem(getFolderManager().getById(getFolderManager().getRootFolderId(mSessionBean.getUser(),mSessionBean.isNotUserAdminGe()),“根”);
用于(文件夹lFolder:lListFolder){
如果(lFolder.getId()>=0)
{
添加(新的SelectItem(lFolder,lFolder.getName());
}
}
返回mListSelectItemFolder;
}
如果(getDocument().getFolder()!=null)
{
列出lListFolder=getFolderManager().searchFolder(mDocument.getFolder().getId(),mSessionBean.getUser().getFirm(),mSessionBean.isNotUserAdminGe());
如果(lListFolder.size()>0)
{
mListSelectItemFolder=新建ArrayList();
用于(文件夹lFolder:lListFolder){
如果(lFolder.getId()>=0)
{
添加(新的SelectItem(lFolder,lFolder.getName());
}
}
}
}
返回mListSelectItemFolder;
}
请向上=)我创建了一个按钮,下面是代码:
public void backButton()
{
if(mListSelectItemFolder==null || ((Folder) mListSelectItemFolder.get(0).getValue()).getIdDep()==0 )
{
//if the list is null or the parent folder is the first one name rootone (id=0)
mListSelectItemFolder=null;
}
else
{
if(mFolderManager.getById(mFolderManager.getById(((Folder) mListSelectItemFolder.get(0).getValue()).getIdDep()).getIdDep()).getIdDep()==0)
{
//case where we gonna go back in the first level, the start folder
mListSelectItemFolder=null;
}
else
{
getDocument().setFolder(((Folder) mFolderManager.getById(((Folder)mListSelectItemFolder.get(0).getValue()).getIdDep())));
}
}
}