GUJ Discussões   :   últimos tópicos   |   categorias   |   GUJ Respostas

Erros ao chamar o relatorio .jasper

jasper
spring-boot
java
Tags: #<Tag:0x00007f65380ff4e8> #<Tag:0x00007f65380ff290> #<Tag:0x00007f65380ff0d8>
#1

Bom dia, estou tendo um problema com o jaspersoft e o spring. Ao chamar o meu relatorio ele em retorna o seguinte erro:
java.io.FileNotFoundException: class path resource [jasperreports/reports/rpt_redecorp.html.jasper] cannot be opened because it does not exist

Por algum motivo que ainda não consegui identificar o spring esta chamando um “.html.jasper” ao inves de um “.jasper”

controler do report:

@Controller
@RequestMapping("/reports")
public class ReportController {

private static final String FILE_FORMAT = "format";
private static final String DATASOUCE = "datasource";

@GetMapping(value="{reportname}")
public ModelAndView getRptByParam(final ModelMap modelMap, ModelAndView modelAndView, @PathParam("reportname")
	final String reportname, @RequestParam(FILE_FORMAT) final String format, @RequestParam("id") final Pessoa pessoa, @RequestParam(name="email", required=false) final String email){		
	
	modelMap.put(DATASOUCE, new JREmptyDataSource());
	modelMap.put(FILE_FORMAT, format);
	modelMap.put("nome", pessoa.getNome());
	modelMap.put("situacao", pessoa.getInstitucional().getSituacao().getDescricao());
	modelMap.put("lotacao", pessoa.getInstitucional().getLotacao());
	modelMap.put("setor", pessoa.getInstitucional().getSetor());
	modelMap.put("cargo", pessoa.getInstitucional().getCargo());
	modelMap.put("cpf", pessoa.getCpf());
	modelMap.put("dataNascimento", pessoa.getDataNascimento().getTime());
	modelMap.put("email", pessoa.getEmail());
	modelMap.put("telefone", pessoa.getFonefixo());
	modelMap.put("turno", pessoa.getInstitucional().getTurno().getDescricao());
	modelMap.put("matricula", pessoa.getInstitucional().getMatricula());
	modelMap.put("emailSugestao", email);
	
	modelAndView = new ModelAndView(reportname, modelMap);
	return modelAndView;
}

}

Application.java:

@SpringBootApplication
public class SolicitacoesApplication {

public static void main(String[] args) {
	SpringApplication.run(SolicitacoesApplication.class, args);
}

@Bean
public LocaleResolver localeResolver(){
	return new FixedLocaleResolver(new Locale("pt", "BR"));
}

@Bean
public JasperReportsViewResolver getJasperReportsViewResolver() {

    JasperReportsViewResolver resolver = new JasperReportsViewResolver();
    resolver.setPrefix("classpath:jasperreports/");
    resolver.setSuffix(".jasper");

    resolver.setReportDataKey("datasource");
    resolver.setViewNames("*rpt_*");
    resolver.setViewClass(JasperReportsMultiFormatView.class);
    resolver.setOrder(0);
    return resolver;
}

}

parte da pagina que faz a chamada do relatório:

<a th:href="@{/reports/rpt_redecorp(format=pdf, id= ${pessoa.id})}" class="btn btn-primary">Solicitar</a>
0 Likes