2012-09-29 26 views
3

限制允許上傳的文件數量如何限制在JSF 2 + primefaces應用程序中允許上傳的文件數量。屬性「filelimit」是有在primeface 3.3,但我使用primefaces 3.4如何使用<p:fileUpload>

+0

INMO,最好的辦法是'自動= 「真正的」'是做 – Daniel

回答

10

貌似fileLimit選項已發行被刪除3618

正如意見中提到的支持Bean使用一個計數器,並將其丟棄多餘文件或添加一個FacesMessage來通知用戶已達到最大fileLimit。

代碼示例:

@ManagedBean 
@ViewScoped 
public class FileUploadController { 

    private final static int MAX_NUM_FILES = 3; 
    private List<UploadedFile> uploadedFiles; 
    private int counter = 0; 

    @PostConstruct 
    public void init() { 
     uploadedFiles = new ArrayList<UploadedFile>(); 
    } 


    public void handleFileUpload(FileUploadEvent event) { 
     if (counter < MAX_NUM_FILES) { 
      uploadedFiles.add(event.getFile()); 
      FacesMessage msg = new FacesMessage("Succesful", event.getFile().getFileName() + " is uploaded."); 
      FacesContext.getCurrentInstance().addMessage(null, msg); 
      counter ++;  
     } 
     else { 
      FacesMessage msg = new FacesMessage(FacesMessage.SEVERITY_ERROR, "File Upload Limit Reached ", event.getFile().getFileName() + " is not uploaded."); 
      FacesContext.getCurrentInstance().addMessage(null, msg); 
     } 

    } 
} 
+0

和怎麼樣了? –

+0

更新了樣本! – Ravi

+0

謝謝拉維:)) –