Я пытаюсь использовать <p:fileUpload>
для загрузки файла. Вот вид:p: fileUpload вызывает bean-конструктор для каждого файла
<h:form enctype="multipart/form-data">
<p:growl id="messages" showDetail="true" />
<p:fileUpload
fileUploadListener="#{viewscopedBean.handleFileUpload}"
mode="advanced" dragDropSupport="true" multiple="true"
update="messages" />
</h:form>
Bean:
@ManagedBean
@ViewScoped
public class ViewscopedBean implements Serializable{
private List<UploadedFile> uploadedFiles; //to remember which files have been uploaded
public ViewscopedBean() {
super();
System.out.println("@constructor");
uploadedFiles = new ArrayList<UploadedFile>();
}
public void handleFileUpload(FileUploadEvent event) {
System.out.println("! HANDLE FILE UPLOAD !");
// do something
}
public List<UploadedFile> getUploadedFiles() {
return uploadedFiles;
}
public void setUploadedFiles(List<UploadedFile> uploadedFiles) {
this.uploadedFiles = uploadedFiles;
}
}
web.xml
<filter>
<filter-name>PrimeFaces FileUpload Filter</filter-name>
<filter-class>
org.primefaces.webapp.filter.FileUploadFilter
</filter-class>
<init-param>
<param-name>thresholdSize</param-name>
<param-value>512000</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>PrimeFaces FileUpload Filter</filter-name>
<servlet-name>Faces Servlet</servlet-name>
</filter-mapping>
Когда я нажимаю на upload button
, то ProgressBar заполняется до 100% (как это делает что-то), но затем страница перезагружается (конструктор вызывается для каждого загруженного файла) - метод handleFileUpload
никогда не вызывается.
Нет никаких ошибок или предупреждений, он просто не делает то, что должен. Я имею JSF 2.0 и использую Primefaces 4, может быть, проблема?
Как это вызвано и как я могу его решить?
вы должны иметь, как это на вашей форме, когда вы загрузки файлов '<ч: форма ENCTYPE =«многослойную/форм-данных»>' попробовать, как это будет ли у вас какие-либо удачи – SRy
Привет, да, я уже пробовал это. Я обновлю свой код – Niko
И ваш bean-компонент является 'viewcopedBean'. Можете ли вы показать« полное преобразование бобов »и какую версию' JSF' вы используете? – SRy