2015-03-13 74 views
1

我使用Vaadin框架。我需要以PDF格式上传文件,仅限JAR & ZIP。我试着用这个代码。这个代码也是我从堆栈溢出中获得的。Vaadin文件使用FileFilter上传

public void uploadStarted(StartedEvent event) { 
       // TODO Auto-generated method stub 
       System.out.println("***Upload: uploadStarted()"); 

       ArrayList<String> allowedMimeTypes = new ArrayList<String>(); 
       allowedMimeTypes.add("application/java-archive"); 
       allowedMimeTypes.add("application/pdf"); 
       allowedMimeTypes.add("application/zip"); 
       String contentType = event.getMIMEType(); 
       boolean allowed = false; 
       System.out.println(":::::::::::::contentType::::::" 
         + contentType); 
       for (int i = 0; i < allowedMimeTypes.size(); i++) { 

        if (contentType.equalsIgnoreCase(allowedMimeTypes.get(i))) { 

         allowed = true; 
         break; 
        } 

       } 
       try { 
        if (allowed) { 
         System.out.println("boolean value:::::::allowed" 
           + allowed); 
         finalDeedUpload.setReceiver(finalDeedFileUploadHandler); 
         finalDeedUpload.addListener(finalDeedFileUploadHandler); 

        } else { 

         showWarningNotification(
           "Error:Please Upload File in Given Format", ""); 

        } 

这是工作在上传它的工作的PDF文件,而上传zip或jar文件和任何其他文件则显示空指针异常。 请帮帮我。

+1

请出示异常 – 2015-03-13 07:56:57

+1

欢迎堆栈溢出的完整堆栈跟踪。这不是在这里提出问题的好方法。事实上,目前还不清楚你的问题和疑问。请阅读[常见问题](http://stackoverflow.com/tour),[如何问](http://stackoverflow.com/help/how-to-ask)和[帮助中心](http:// stackoverflow .com/help)作为开始。 – 2015-03-13 07:57:09

回答

0

Vaadin有一个易于使用的特殊上传组件。 Vaadin之书中有一章涉及这个组件。

https://vaadin.com/book/-/page/components.upload.html

+0

它不帮助我。我需要过滤文件。 – mchinta 2015-03-13 09:26:55

+0

你可以调试你的代码并说哪一行有NPE吗? – 2015-03-13 09:40:20

+0

感谢您的回复。 – mchinta 2015-03-13 10:03:13