Bom dia,
Estou utilizando o seguinte metodo para ler um .doc em um sistema web:
//conexao com o ftp
...
InputStream in = //arquivo do ftp
HWPFDocument doc = new HWPFDocument(teste);
WordExtractor extrair = new WordExtractor(doc);
String conteudo = extrair.getText();
conteudo = conteudo.replace("\n", " ");
Na primeira vez que executo o metodo, ele me retorna o conteudo do documento mas, caso eu tente executar novamente da o seguinte erro:
para que eu possa utilizar este metodo novamente eu tenho que dar um restart no servidor, a impressão que tenho é que esta fazendo bagunça na memoria do servidor.
Alguém tem ideia do que possa ser?
Antes de mais anda, se toda vez que chama seu método você instancia algumas variavéis, porque faz elas receberem null ao fim do bloco de código? Concorda, que isto é totalmente desnecessário? Faça as seguintes mudanças e nos mostre os resultados:
Instabilidade da API POI é bem difícil, lógico que pode acontecer mas não creio que seja este o caso. Depende também de como sua classe FTP está implementada, principalmente o método que retorna o InputStream que é alocado ao construtor do HWPFDocument.
Eu usei para extrair dados de arquivos .xsl (excel) e não houve problemas, apenas algumas dificuldades.
Talvez este link ajude você: