我有p:fileUpload的问题。 我有这个代码,我已经实现了所有说PrimeFaces指南而且没有工作。 FileUpload按钮不执行任何操作。
XHTML
<p:fileUpload
fileUploadListener="#{crearSitiosControlador.handleFileUpload}"
mode="advanced" dragDropSupport="false" update="messages"
sizeLimit="100000" fileLimit="5" uploadLabel="Subir"
cancelLabel="Cancelar" label="Seleccionar"
invalidSizeMessage="Tamaño permitido 1MB"
invalidFileMessage="Archivo no permitido"
allowTypes="/(\.|\/)(gif|jpe?g|png)$/" />
<p:growl id="messages" showDetail="true" />
JAVA
public void handleFileUpload(FileUploadEvent event) {
foto = event.getFile();
fotoByte= new byte[(int) foto.getSize()];
fotoByte = event.getFile().getContents();
try {
FileInputStream docu = new FileInputStream((File) event.getFile());
// Leemos los bytes del archivo y a la vez se van insertando en el
// array de bytes creado.
int numBytes = docu.read(fotoByte);
docu.close();
} catch (FileNotFoundException e) {
System.out.println("No se ha encontrado el archivo.");
} catch (IOException e) {
System.out.println("No se ha podido leer el archivo.");
}
}
WEBXML
<param-name>primefaces.UPLOADER</param-name>
<param-value>auto|native|commons</param-value>
</context-param>
<filter>
<filter-name>PrimeFaces FileUpload Filter</filter-name>
<filter-class>
org.primefaces.webapp.filter.FileUploadFilter
</filter-class>
</filter>
<filter-mapping>
<filter-name>PrimeFaces FileUpload Filter</filter-name>
<servlet-name>Faces Servlet</servlet-name>
</filter-mapping>