Почему я не могу получить доступ к управляемым bean-методам со страницы JSF2? - PullRequest
0 голосов
/ 20 июня 2011

В <rich:popupPanel /> у меня есть <rich:fileUpload />, в котором fileUploadListener определен как # {assemblyMB.listener}.Этот метод слушателя определен в управляемом компоненте как:

public void listener(FileUploadEvent event) throws Exception {
    System.out.println("listener");
}

на странице JSF, которую я имею:

<rich:fileUpload id="popupFileUpload"
    fileUploadListener="#{assemblyMB.listener}"
    onuploadcomplete="#{rich:component('popup')}.hide(); return false;"
</rich:fileUpload>

В управляемом компоненте я объявил аннотацию @ManagedBean (name= "assemblyMB").

Я собираюсь получить доступ к методу управляемого компонента при загрузке файла, но мне не удается это сделать.Я не понимаю, почему это происходит.

Кто-нибудь может пролить мне свет здесь?Заранее спасибо,

gtludwig

1 Ответ

0 голосов
/ 20 июня 2011

Предполагая, что RichFaces 4.0, все, что вам нужно, это убедиться, что родительский элемент <h:form> настроен для кодирования тела запроса как multipart/form-data.

<h:form enctype="multipart/form-data">

Таким образом, файл должен быть загружен правильно, а метод слушателя должен быть вызван, когда загрузка поступила на серверную сторону.

...