Bom dia pessoal, estou com um problema com o fileupload do richfaces que não chama o método do fileUploadListener simplesmente não funciona segue o código. Se alguém já tiver passado por esse problema e puder me ajudar ficarei mui grato.
Estou usando a versão 3.3.1 GA do richfaces com JBoss 4.2.2 GA. Não apresenta nenhum erro nem de JSF nem no console.
JSP
<rich:fileUpload
fileUploadListener="#{atendimentoSinistroBean.doListener}"
maxFilesQuantity="5"
id="upload"
reRender="renderImgUpload"
immediateUpload="false"
noDuplicate="true"
uploadControlLabel="#{m['upload']}"
cancelEntryControlLabel="#{m['cancelar']}"
stopControlLabel="#{m['stop']}"
addControlLabel="#{m['adicionar']}"
clearAllControlLabel="#{m['clearAll']}"
clearControlLabel="#{m['clear']}"
stopEntryControlLabel="#{m['stopUpload']}"
onerror="alert('ocorreu um erro');">
<a4j:support event="onuploadcomplete" reRender="info" id="infoUpload"/>
</rich:fileUpload>
web.xml
<filter>
<display-name>RichFaces Filter</display-name>
<filter-name>richfaces</filter-name>
<filter-class>org.ajax4jsf.Filter</filter-class>
<init-param>
<param-name>createTempFiles</param-name>
<param-value>false</param-value>
</init-param>
<init-param>
<param-name>maxRequestSize</param-name>
<param-value>30000000</param-value>
</init-param>
</filter>
<filter>
<filter-name>UploadFilter</filter-name>
<filter-class>com.sun.webui.jsf.util.UploadFilter</filter-class>
<init-param>
<description>O tamanho máximo de carregamento permitido em bytes. Caso seja definido com um valor negativo, não há máximo. O valor padrão é 1000000.</description>
<param-name>maxSize</param-name>
<param-value>1000000</param-value>
</init-param>
<init-param>
<description>O tamanho (em bytes) de um arquivo carregado que, se for excedido, fará com que o arquivo seja gravado diretamente no disco em vez de armazenado na memória. Arquivos menores ou iguais a esse tamanho serão armazenados na memória. O valor padrão é 4096.</description>
<param-name>sizeThreshold</param-name>
<param-value>4096</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>richfaces</filter-name>
<servlet-name>Faces Servlet</servlet-name>
<dispatcher>REQUEST</dispatcher>
<dispatcher>FORWARD</dispatcher>
<dispatcher>INCLUDE</dispatcher>
</filter-mapping>
ManagedBean
public void paint(OutputStream out, Object obj) throws IOException {
int row = (Integer) obj;
out.write((byte[]) (this.atendimentoSinistroForm.getFiles().get(row)).getData());
out.close();
}
public void doListener(UploadEvent event) throws IOException {
UploadItem item = event.getUploadItem();
File file = new File(item.getFileName());
file.setData(item.getData());
file.setMimeType(item.getContentType());
this.atendimentoSinistroForm.getFiles().add(file);
}