Fileuploader не запускает actionListener - PullRequest
0 голосов
/ 12 марта 2012

Я пытаюсь загрузить файл, используя rich: fileUploader, и он не вызывает uploadListener, будь то что угодно.

Вот код, дайте мне знать, если что-то отсутствует:)

    <f:view>
    <a4j:loadScript src="resource://jquery.js" />
    <h:form id="uploadFileForm" prependId="false">
        <rich:fileUpload immediateUpload="true"
            listHeight="150px;" noDuplicate="true" listWidth="350px;" 
            maxFilesQuantity="1" locale="de" 
            fileUploadListener="#{paramFileUpload.fileUploadsListener}">
        </rich:fileUpload>          
    </h:form>
    </f:view>

public void fileUploadsListener(UploadEvent event) {
    LOGGER.info("In ActionListener of file upload");
    UploadItem item = event.getUploadItem();
    LOGGER.info("item : " + item.getFileSize() + ", " + item.getContentType() + ", " + item.getData());
    if(item.getFile() != null) {
        LOGGER.info("File name and size : " + item.getFile().getPath() + ", " + item.getFile().getTotalSpace());
    }
}

Это в файле web.xml

<context-param>
    <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
    <param-value>server</param-value>
</context-param>

Когда страница загружена, консоль Firebug показывает ошибку, как показано ниже:

parentForm is null
ProgressBar={};ProgressBar=Class.creat...' {parentForm=parentForm.parentNode;} 

А когда файл выбирается из файлового браузера,

this.progressBar is undefined
if(this.labelMarkup){var progressData=...._fileSizeScriptTimeoutId=undefined;} 

1 Ответ

0 голосов
/ 15 марта 2012

Наконец мне пришлось сделать это tomahawk путем определения сервлета в web.xml и использования t:inputFileUpload для загрузки файла.Это сработает, и мой бин-бэк вызовет UploadedFile:)

...