我正在使用PrimeFaces FileUpload組件將.properties
文件傳輸到服務器。然而,擴展並不是一切,所以我想在發佈其他內容時測試行爲。我上傳樣本jar文件(apache的公地編解碼器是特定的),但不是在堆棧跟蹤可能是個例外,我整個瀏覽器的怪異行爲就來了:對話內容完全地崩潰了,不方便(IE) 。使用二進制文件PrimeFaces FileUpload錯誤
我打開了JavaScript控制檯,我發現了更基本的錯誤。
在火狐,還有的jQuery的錯誤,但是對話並沒有崩潰:
NS_ERROR_NOT_IMPLEMENTED: Component returned failure code: 0x80004001 (NS_ERROR_NOT_IMPLEMENTED) [nsIDOMLSProgressEvent.input]
在IE 9,然而,有一個從渲染引擎中的錯誤:
XML5617: Ungültiges XML-Zeichen.
form.xhtml, Zeile 3 Zeichen 3926
XML答案包含二進制內容,例如上傳文件的內容將附加到其中。尋找可能的PrimeFaces錯誤我發現了以下內容:primefaces fileupload filter with utf8 characters filter但我不知道它如何適用於我的情況,因爲我沒有將內容存儲到字符串中,我直接操作UploadedFile
對象:
public void onPropertyFileUpload(FileUploadEvent event) {
log.info("onPropertyFileUpload");
if (event.getFile() == null) {
log.warn("Empty file!!!");
return;
}
Properties props = new Properties();
try {
props.load(event.getFile().getInputstream());
} catch (IOException e) {
log.error(e.getMessage(), e);
return;
}
那麼,是BalusC發現這個問題的原因在我的情況在MultipartRequest
的bug,或者這是什麼東西?而且,最重要的是,我能做些什麼來避免這個錯誤?