Boa Tarde galera!
Eu tenho um metodo de validação que funciona perfeitamente add as mensagens na minha tela.Mas eu quero mostrar uma mensagem nova quando nao houver resgistros para o meu relatorio.Nao dá nenhum erro,apenas nao mostra nada na tela.É estranho pois as minhas validações aparecem normalmente.Se alguem puder olhar e identificar o que pode ser ,agradeceria bastante.Obrigada!!!
[code]private ValidationErrorsFactory errorsFactory;
public RelatorioLogic(){
errorsFactory = new DefaultValidationErrorsFactory();
}
//@Viewless
public void criar(ServletContext context, HttpServletResponse response) throws AplicacaoException {
ValidationErrors errors;
try {
Requisicao req = new Requisicao();
List<ValoresDoRelatorio> valoresDoRelatorio = req.gerarValoresDoRelatorioPara(filtroPlaca, ano, mes);
if (valoresDoRelatorio.size()>0) {
String pathJasper = context.getRealPath("WEB-INF/report/")+ "/";
JRBeanCollectionDataSource ds = new JRBeanCollectionDataSource(valoresDoRelatorio);
JasperPrint impressao = JasperFillManager.fillReport(pathJasper+ "/report1.jasper", null, ds);
byte[] arquivo = JasperExportManager.exportReportToPdf(impressao);
String nomeDoArquivo = "relatorio_mes.pdf";
response.setContentType("application/pdf");
response.setHeader("Content-Disposition","attachment; filename=".concat(nomeDoArquivo));
response.setContentLength(arquivo.length);
ServletOutputStream sos = response.getOutputStream();
sos.write(arquivo, 0, arquivo.length);
sos.flush();
sos.close();
}else{
errors = errorsFactory.newInstance();
errors.add(new Message("relatorio",MensageUtil.valorInvalido(" este período")));
}
} catch (Exception e) {
logger.error("RelatorioLogic :: criar :: "+e.getMessage());
throw new AplicacaoException(e);
}
}
public void listarTodos(Veiculo veiculo)throws AplicacaoException {
RequisicaoRepository repositorioRequisicao = new RequisicaoRepository();
VeiculoRepository veiculoRepostorio = RepositoryFactory.getInstance().getVeiculoRepository();
try {
listaDeVeiculos = (List<Veiculo>) veiculoRepostorio.obterTodos();
requisicoesAno = (List<Requisicao>) repositorioRequisicao.obterAno();
requisicoesMes = (List<Requisicao>) repositorioRequisicao.obterMes();
} catch (Exception e) {
logger.error("RelatorioLogic :: listarTodos :: "+e.getMessage());
}
}
public void validateCriar(ValidationErrors errors,ServletContext context, HttpServletResponse response) throws AplicacaoException {
try {
if( isNull(ano) || ano.isEmpty() )
errors.add(new Message("ano",MensageUtil.valorInvalido("Ano")));
if( isNull( filtroPlaca ) || filtroPlaca.isEmpty() ) {
errors.add(new Message("filtroPlaca",MensageUtil.valorInvalido("Veículo")));
}
if(isNull(mes) || mes.isEmpty() )
errors.add(new Message("mes",MensageUtil.valorInvalido("Mês")));
if(errors.size() > 0){
RequisicaoRepository repositorioRequisicao = new RequisicaoRepository();
VeiculoRepository veiculoRepostorio = RepositoryFactory.getInstance().getVeiculoRepository();
listaDeVeiculos = (List<Veiculo>) veiculoRepostorio.obterTodos();
requisicoesAno = (List<Requisicao>) repositorioRequisicao.obterAno();
requisicoesMes = (List<Requisicao>) repositorioRequisicao.obterMes();
}
} catch (Exception e) {
logger.error("RelatorioLogic :: validateAdicionar :: "+e.getMessage());
throw new AplicacaoException(e);
}
}
}
[/code]