Estou tentando criar um CSV utilizando o OpenCSV de acordo com o resultado que trago no banco.
Onde minha classe controler esta como
@GetMapping(value = { "/gerarCsv/{inicio}&{fim}" })
@ResponseBody
public ResponseEntity<?> gerarCsv(HttpServletRequest request,
@PathVariable(value = "inicio", required = true) String inicio,
@PathVariable(value = "fim", required = true) String fim) {
try {
Date dataInicio = new SimpleDateFormat("dd-MM-yyyy").parse(inicio);
Date dataFim = new SimpleDateFormat("dd-MM-yyyy").parse(fim);
List<Object> revogacaoData = revogacao.consultarRevogacaoPorData(dataInicio, dataFim);
String[] consolidado = new String[revogacaoData.size()];
int index = 0;
for(Object value : revogacaoData){
consolidado[index] = (String) value;
index++;
}
csv.Writer(consolidado);
logger.info("[Recurso:/admin/revogacao/revogacaoPorData, sessao:" + request.getSession().getId() + ", usuario:"
+ request.getUserPrincipal().getName() + "]"
+ "[Verificação de Revogações por data de processado ]");
return new ResponseEntity<Object>(revogacaoData, HttpStatus.OK);
} catch (Exception e) {
logger.info("[Recurso:/admin/revogacao/revogacaoPorData, sessao:" + request.getSession().getId() + ", usuario:"
+ request.getUserPrincipal().getName() + "]"
+ "[Verificação de Revogações por data de processado] error: " +e);
return new ResponseEntity<String>("{\"msg\":\" Não foi possivel obter a lista consolidada}",
HttpStatus.EXPECTATION_FAILED);
}
}
E minha classe Util esta como:
import com.opencsv.CSVWriter;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.nio.charset.StandardCharsets;
public class CSV {
public void Writer(String[] consolidado) {
String filename="src/main/resources/item.csv";
try (
FileOutputStream fos = new FileOutputStream(filename);
OutputStreamWriter osw = new OutputStreamWriter(fos,StandardCharsets.UTF_8);
CSVWriter escritor = new CSVWriter(osw)){
escritor.writeNext(consolidado);
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
Entretanto não esta criando o CSV…
Alguma sugestão do que posso melhorar para corrigir este problema?