Jasper gera local, mas não em homologação

45 respostas
guilhermebhte

Rodal local, mas não em homologação

public ArquivoDTO imprimir(Long idRequisicao) {
		try {
			Optional<Requisicao> requisicaoExiste = repository.findById(idRequisicao);
			if (requisicaoExiste.isPresent()) {
				BigDecimal total = new BigDecimal("0");
				JRDataSource dataSource = new JRBeanCollectionDataSource(inserirLista(requisicaoExiste, total));
				Map<String, Object> parametros = new HashedMap<String, Object>();
				parametros.put("lojaOrigem", requisicaoExiste.get().getLojaOrigem().getNome());
				parametros.put("lojaDestino", requisicaoExiste.get().getLojaDestino().getNome());
				parametros.put("funcionario", requisicaoExiste.get().getFuncionario().getNome());
				parametros.put("dataEntrega", converterLocalDateParaString(
						converterLocalDateTimeJava(requisicaoExiste.get().getDataEntrega()), DD_MM_YYYY));
				parametros.put("natureza", requisicaoExiste.get().getObservacao());
				parametros.put("numeroRequisicao", requisicaoExiste.get().getNumero());
				parametros.put("status", requisicaoExiste.get().getStatus().getDescricao());
				parametros.put("total", total);
				log.info("linha 51");
				byte[] bytes = runReportToPdf("src/main/resources/relatorio/requisicao_compra.jasper", parametros,
						dataSource);
				log.info("linha 54");
				return ArquivoDTO.builder().arquivo(bytes).contentType("Application/pdf")
						.nome("requisicao_" + requisicaoExiste.get().getNumero() + ".pdf").build();
			}
		} catch (JRException e) {
			throw new GeralException("Erro ao gerar relatório de requisição de compras !");
		}
		return ArquivoDTO.builder().build();
	}

	private Collection<RequisicaoItemDTO> inserirLista(Optional<Requisicao> requisicaoExiste, BigDecimal total) {
		Collection<RequisicaoItemDTO> itens = new ArrayList<>();
		requisicaoExiste.get().getRequisicoesItens().forEach(item -> {
			itens.add(RequisicaoItemDTO.builder().insumo(item.getInsumo().getNome()).quantidade(item.getQuantidade())
					.quantidadeAprovada(item.getQuantidadeAprovada()).total(item.getTotal())
					.ultimoCusto(item.getUltimoCusto()).unidade(item.getUnidade().getNome()).build());
			total.add(item.getTotal());
		});
		return itens;
	}

log de erro

br.com.ghnetsoft.principal.exception.GeralException: Erro ao gerar relatório de requisição de compras !
	at br.com.ghnetsoft.comprasfood.relatorio.service.RequisicaoService.imprimir(RequisicaoService.java:59) ~[classes!/:0.0.1-SNAPSHOT]
	at br.com.ghnetsoft.comprasfood.relatorio.requisicao.RequisicaoResource.buscarPeloId(RequisicaoResource.java:31) ~[classes!/:0.0.1-SNAPSHOT]
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na]
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[na:na]
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[na:na]
	at java.base/java.lang.reflect.Method.invoke(Unknown Source) ~[na:na]
	at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:190) ~[spring-web-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]
	at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:138) ~[spring-web-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]
	at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:105) ~[spring-webmvc-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]
	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:878) ~[spring-webmvc-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]
	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:792) ~[spring-webmvc-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]
	at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) ~[spring-webmvc-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]
	at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1040) ~[spring-webmvc-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]
	at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:943) ~[spring-webmvc-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]
	at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006) ~[spring-webmvc-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]
	at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898) ~[spring-webmvc-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:626) ~[tomcat-embed-core-9.0.39.jar!/:4.0.FR]
	at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883) ~[spring-webmvc-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:733) ~[tomcat-embed-core-9.0.39.jar!/:4.0.FR]
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]
	at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53) ~[tomcat-embed-websocket-9.0.39.jar!/:9.0.39]
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]
	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:320) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]
	at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:126) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]
	at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:90) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]
	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]
	at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:118) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]
	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]
	at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:137) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]
	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]
	at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:111) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]
	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]
	at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:158) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]
	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]
	at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:63) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]
	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]
	at org.springframework.security.oauth2.provider.authentication.OAuth2AuthenticationProcessingFilter.doFilter(OAuth2AuthenticationProcessingFilter.java:176) ~[spring-security-oauth2-2.2.1.RELEASE.jar!/:na]
	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]
	at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:116) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]
	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]
	at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:92) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]
	at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:77) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) ~[spring-web-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]
	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]
	at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:105) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]
	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]
	at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:56) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) ~[spring-web-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]
	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]
	at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:215) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]
	at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:178) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]
	at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:358) ~[spring-web-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]
	at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:271) ~[spring-web-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]
	at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) ~[spring-web-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]
	at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) ~[spring-web-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]
	at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:93) ~[spring-boot-actuator-2.3.5.RELEASE.jar!/:2.3.5.RELEASE]
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) ~[spring-web-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]
	at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) ~[spring-web-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]
	at br.com.ghnetsoft.comprasfood.relatorio.config.SmpleCORSFilter.doFilter(SmpleCORSFilter.java:42) ~[classes!/:0.0.1-SNAPSHOT]
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:542) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:143) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]
	at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:374) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]
	at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]
	at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:868) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]
	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1590) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]
	at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) ~[na:na]
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) ~[na:na]
	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]
	at java.base/java.lang.Thread.run(Unknown Source) ~[na:na]

Não entendi muito bem o log

Eu acho que é o caminho do relatório

image

Caused by: java.io.FileNotFoundException: src/main/resources/relatorio/requisicao_compra.jasper

O que pode ser ?

45 Respostas

SkyG0D

Já tentou passar o caminho absoluto até o diretório relatorio?

guilhermebhte

Como que pega este caminho absoluto ?

Vi em alguns posts, do proprio GUJ, mas não consegui

String caminhoAtual = new File(“src/main/resources/relatorio/requisicao_compra.jasper”).getAbsolutePath();, mas não deu certo.

lvbarbosa

Nesse ponto você está engolindo a exception que teoricamente mostra a causa raiz do problema. Vc precisa logar essa excepcion de alguma forma, seja com um printStackTrace ou embutindo ela na exception nova que você cria.

guilhermebhte

Vou colocar um log ali e imprimir

guilhermebhte

Mas ainda acho que é o caminho do relatório

rodriguesabner

Melhor ter certeza do que só achar

guilhermebhte
String caminhoAtual = new File("src/main/resources/relatorio/requisicao_compra.jasper").getAbsolutePath();
log.info("caminho atual: " + caminhoAtual);

linha 57 da classe RequisicaoService, que mostra no log:

byte[] bytes = runReportToPdf(caminhoAtual, parametros, dataSource);

Log

2021-01-10 09:56:11.787  INFO 1  [nio-8600-exec-2] b.c.g.c.r.service.RequisicaoService      : caminho atual: /src/main/resources/relatorio/requisicao_compra.jasper

net.sf.jasperreports.engine.JRException: java.io.FileNotFoundException: /src/main/resources/relatorio/requisicao_compra.jasper

at net.sf.jasperreports.engine.util.JRLoader.loadObject(JRLoader.java:127)

at net.sf.jasperreports.engine.util.JRLoader.loadObject(JRLoader.java:116)

at net.sf.jasperreports.engine.JasperFillManager.getReportSource(JasperFillManager.java:1105)

at net.sf.jasperreports.engine.JasperFillManager.fill(JasperFillManager.java:652)

at net.sf.jasperreports.engine.JasperRunManager.runToPdf(JasperRunManager.java:439)

at net.sf.jasperreports.engine.JasperRunManager.runReportToPdf(JasperRunManager.java:839)

at br.com.ghnetsoft.comprasfood.relatorio.service.RequisicaoService.imprimir(RequisicaoService.java:57)

at br.com.ghnetsoft.comprasfood.relatorio.requisicao.RequisicaoResource.buscarPeloId(RequisicaoResource.java:31)

at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

at java.base/java.lang.reflect.Method.invoke(Unknown Source)

at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:190)

at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:138)

at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:105)

at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:878)

at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:792)

at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)

at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1040)

at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:943)

at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)

at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:626)

at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:733)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)

at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:320)

at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:126)

at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:90)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)

at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:118)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)

at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:137)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)

at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:111)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)

at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:158)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)

at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:63)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)

at org.springframework.security.oauth2.provider.authentication.OAuth2AuthenticationProcessingFilter.doFilter(OAuth2AuthenticationProcessingFilter.java:176)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)

at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:116)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)

at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:92)

at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:77)

at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)

at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:105)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)

at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:56)

at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)

at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:215)

at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:178)

at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:358)

at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:271)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)

at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)

at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)

at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)

at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)

at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:93)

at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)

at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)

at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)

at br.com.ghnetsoft.comprasfood.relatorio.config.SmpleCORSFilter.doFilter(SmpleCORSFilter.java:42)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)

at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202)

at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97)

at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:542)

at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:143)

at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)

at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78)

at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)

at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:374)

at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)

at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:868)

at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1590)

at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)

at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)

at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)

at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)

at java.base/java.lang.Thread.run(Unknown Source)

Caused by: java.io.FileNotFoundException: /src/main/resources/relatorio/requisicao_compra.jasper



 98 more
guilhermebhte

Alguém ?

davidbuzatto

Escrevi uma série de artigos há 10 anos atrás sobre relatórios. Dá uma olhada na parte 5:

guilhermebhte

Valeu

Mas da erro nestes

import java.io.InputStream;
import java.io.OutputStream;
guilhermebhte

O que falta para gerar o relatório jasper no servidor ?

staroski

Que erros?

guilhermebhte

Não consegui fazer o mesmo erro

fiz assim:

classe ArquivoDTO

@Setter
@Getter
@Builder
@NoArgsConstructor(access = PROTECTED)
@AllArgsConstructor(access = PROTECTED)
public class ArquivoDTO implements Serializable {

	private static final long serialVersionUID = -8404275782835770067L;

	private String id;
	private String nome;
	private String contentType;
	private byte[] arquivo;
	private Long tamanho;
}

Método que gera o relatório

public ArquivoDTO imprimir(Long idRequisicao) {
		OutputStream out = null;
		try {
			Optional<Requisicao> requisicaoExiste = repository.findById(idRequisicao);
			if (requisicaoExiste.isPresent()) {
				total = new BigDecimal("0");
				JRDataSource dataSource = new JRBeanCollectionDataSource(inserirLista(requisicaoExiste));
				Map<String, Object> parametros = new HashedMap<String, Object>();
				parametros.put("lojaOrigem", requisicaoExiste.get().getLojaOrigem().getNome());
				parametros.put("lojaDestino", requisicaoExiste.get().getLojaDestino().getNome());
				parametros.put("funcionario", requisicaoExiste.get().getFuncionario().getNome());
				parametros.put("dataEntrega", converterLocalDateParaString(
						converterLocalDateTimeJava(requisicaoExiste.get().getDataEntrega()), DD_MM_YYYY));
				parametros.put("natureza", requisicaoExiste.get().getObservacao());
				parametros.put("numeroRequisicao", requisicaoExiste.get().getNumero());
				parametros.put("status", requisicaoExiste.get().getStatus().getDescricao());
				parametros.put("total", total);
				InputStream inputStream = getClass().getResourceAsStream("/relatorio/requisicao_compra.jasper");
				out = ReportUtils.createPDFReport(inputStream, parametros, dataSource, response);
				return null;
			}
		} catch (JRException | IOException e) {
			e.printStackTrace();
			throw new GeralException("Erro ao gerar relatório de requisição de compras !");
		} finally {
			if (out != null) {
				try {
					out.close();
				} catch (IOException e) {
					e.printStackTrace();
					throw new GeralException("Erro ao gerar relatório de requisição de compras !");
				}
			}
		}
		return ArquivoDTO.builder().build();
	}

Classe utils

import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.Map;

import javax.servlet.http.HttpServletResponse;

import net.sf.jasperreports.engine.JRDataSource;
import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JRExporter;
import net.sf.jasperreports.engine.JRExporterParameter;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.engine.export.JRPdfExporter;

public class ReportUtils {

	public static OutputStream createPDFReport(InputStream inputStream, Map<String, Object> parametros,
			JRDataSource dataSource, HttpServletResponse response) throws JRException, IOException {
		response.setContentType("application/pdf");
		OutputStream out = response.getOutputStream();
		JasperPrint jasperPrint = JasperFillManager.fillReport(inputStream, parametros, dataSource);
		JRExporter exporter = new JRPdfExporter();
		exporter.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint);
		exporter.setParameter(JRExporterParameter.OUTPUT_STREAM, out);
		exporter.exportReport();
		return out;
	}
}

Não consegui pegar o arquivo do relatório em byte

guilhermebhte

Fiz assim e não roda no servidor, somente local também

package br.com.ghnetsoft.comprasfood.relatorio.service;

import static br.com.ghnetsoft.principal.util.DataUtil.DD_MM_YYYY;
import static br.com.ghnetsoft.principal.util.DataUtil.converterLocalDateParaString;
import static br.com.ghnetsoft.principal.util.DataUtil.converterLocalDateTimeJava;

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Map;
import java.util.Optional;

import org.apache.commons.collections4.map.HashedMap;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import br.com.ghnetsoft.comprasfood.model.requisicao.Requisicao;
import br.com.ghnetsoft.comprasfood.model.requisicaoitem.RequisicaoItem;
import br.com.ghnetsoft.comprasfood.relatorio.dto.RequisicaoItemDTO;
import br.com.ghnetsoft.comprasfood.repository.requisicao.RequisicaoRepository;
import br.com.ghnetsoft.principal.dto.ArquivoDTO;
import br.com.ghnetsoft.principal.exception.GeralException;
import net.sf.jasperreports.engine.JRDataSource;
import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JasperRunManager;
import net.sf.jasperreports.engine.data.JRBeanCollectionDataSource;

@Service
public class RequisicaoService {

	@Autowired
	private RequisicaoRepository repository;
	private BigDecimal total;

	public ArquivoDTO imprimir(Long idRequisicao) {
		try {
			Optional<Requisicao> requisicaoExiste = repository.findById(idRequisicao);
			if (requisicaoExiste.isPresent()) {
				total = new BigDecimal("0");
				JRDataSource dataSource = new JRBeanCollectionDataSource(inserirLista(requisicaoExiste));
				Map<String, Object> parametros = new HashedMap<String, Object>();
				parametros.put("lojaOrigem", requisicaoExiste.get().getLojaOrigem().getNome());
				parametros.put("lojaDestino", requisicaoExiste.get().getLojaDestino().getNome());
				parametros.put("funcionario", requisicaoExiste.get().getFuncionario().getNome());
				parametros.put("dataEntrega", converterLocalDateParaString(
						converterLocalDateTimeJava(requisicaoExiste.get().getDataEntrega()), DD_MM_YYYY));
				parametros.put("natureza", requisicaoExiste.get().getObservacao());
				parametros.put("numeroRequisicao", requisicaoExiste.get().getNumero());
				parametros.put("status", requisicaoExiste.get().getStatus().getDescricao());
				parametros.put("total", total);
				byte[] bytes = JasperRunManager.runReportToPdf(
						this.getClass().getClassLoader().getResourceAsStream("relatorio/requisicao_compra.jasper"),
						parametros, dataSource);
				return ArquivoDTO.builder().contentType("application/pdf").arquivo(bytes).nome("teste").build();
			}
		} catch (JRException e) {
			e.printStackTrace();
			throw new GeralException("Erro ao gerar relatório de requisição de compras !");
		}
		return ArquivoDTO.builder().build();
	}

	private Collection<RequisicaoItemDTO> inserirLista(Optional<Requisicao> requisicaoExiste) {
		Collection<RequisicaoItemDTO> itens = new ArrayList<>();
		for (RequisicaoItem item : requisicaoExiste.get().getRequisicoesItens()) {
			itens.add(RequisicaoItemDTO.builder().insumo(item.getInsumo().getNome()).quantidade(item.getQuantidade())
					.quantidadeAprovada(item.getQuantidadeAprovada()).total(item.getTotal())
					.ultimoCusto(item.getUltimoCusto()).unidade(item.getUnidade().getNome()).build());
			total = total.add(item.getTotal());
		}
		return itens;
	}
}

POM.XML

<project xmlns="http://maven.apache.org/POM/4.0.0"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">

	<modelVersion>4.0.0</modelVersion>
	<groupId>br.com.ghnetsoft.comprasfood.relatorio</groupId>
	<artifactId>comprasfoodrelatorio</artifactId>
	<version>0.0.2-SNAPSHOT</version>

	<parent>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-parent</artifactId>
		<version>2.3.5.RELEASE</version>
		<relativePath />
	</parent>

	<properties>
		<java.version>11</java.version>
		<spring-boot-admin.version>2.2.1</spring-boot-admin.version>
		<mapstruct.version>1.3.1.Final</mapstruct.version>
	</properties>

	<dependencies>
		<dependency>
			<groupId>br.com.ghnetsoft.comprasfood.model</groupId>
			<artifactId>comprasfoodmodel</artifactId>
			<version>0.0.2-SNAPSHOT</version>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-actuator</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-data-jpa</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.security.oauth.boot</groupId>
			<artifactId>spring-security-oauth2-autoconfigure</artifactId>
			<version>2.0.1.RELEASE</version>
		</dependency>
		<dependency>
			<groupId>de.codecentric</groupId>
			<artifactId>spring-boot-admin-starter-client</artifactId>
			<version>2.0.0</version>
		</dependency>
		<dependency>
			<groupId>com.fasterxml.jackson.dataformat</groupId>
			<artifactId>jackson-dataformat-xml</artifactId>
		</dependency>
		<dependency>
			<groupId>com.google.code.gson</groupId>
			<artifactId>gson</artifactId>
		</dependency>
		<dependency>
			<groupId>io.springfox</groupId>
			<artifactId>springfox-swagger2</artifactId>
			<version>2.9.2</version>
		</dependency>
		<dependency>
			<groupId>io.springfox</groupId>
			<artifactId>springfox-swagger-ui</artifactId>
			<version>2.9.2</version>
		</dependency>
		<dependency>
			<groupId>io.springfox</groupId>
			<artifactId>springfox-bean-validators</artifactId>
			<version>2.9.2</version>
		</dependency>
		<dependency>
			<groupId>org.modelmapper</groupId>
			<artifactId>modelmapper</artifactId>
			<version>2.3.8</version>
			<scope>compile</scope>
		</dependency>
		<dependency>
			<groupId>org.apache.commons</groupId>
			<artifactId>commons-lang3</artifactId>
		</dependency>
		<dependency>
			<groupId>org.postgresql</groupId>
			<artifactId>postgresql</artifactId>
			<scope>runtime</scope>
		</dependency>
		<dependency>
			<groupId>com.microsoft.sqlserver</groupId>
			<artifactId>mssql-jdbc</artifactId>
		</dependency>
		<dependency>
			<groupId>org.projectlombok</groupId>
			<artifactId>lombok</artifactId>
			<optional>true</optional>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-test</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-security</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-actuator</artifactId>
		</dependency>
		<dependency>
			<groupId>io.micrometer</groupId>
			<artifactId>micrometer-registry-prometheus</artifactId>
		</dependency>
		<dependency>
			<groupId>javax.validation</groupId>
			<artifactId>validation-api</artifactId>
		</dependency>
		<dependency>
			<groupId>com.sun.xml.ws</groupId>
			<artifactId>jaxws-ri</artifactId>
			<version>3.0.0-M2</version>
			<type>pom</type>
		</dependency>
		<dependency>
			<groupId>org.apache.poi</groupId>
			<artifactId>poi</artifactId>
			<version>4.1.2</version>
		</dependency>
		<dependency>
			<groupId>net.sf.jasperreports</groupId>
			<artifactId>jasperreports</artifactId>
			<version>6.16.0</version>
		</dependency>
	</dependencies>
	<reporting>
		<plugins>
			<plugin>
				<groupId>org.jacoco</groupId>
				<artifactId>jacoco-maven-plugin</artifactId>
				<reportSets>
					<reportSet>
						<reports>
							<!-- select non-aggregate reports -->
							<report>report</report>
						</reports>
					</reportSet>
				</reportSets>
			</plugin>
		</plugins>
	</reporting>

	<build>
		<finalName>${project.artifactId}</finalName>
		<plugins>
			<plugin>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-maven-plugin</artifactId>
			</plugin>
			<plugin>
				<groupId>org.jacoco</groupId>
				<artifactId>jacoco-maven-plugin</artifactId>
				<version>0.8.4</version>
				<executions>
					<execution>
						<goals>
							<goal>prepare-agent</goal>
						</goals>
					</execution>
					<execution>
						<id>report</id>
						<phase>prepare-package</phase>
						<goals>
							<goal>report</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
		</plugins>
	</build>
</project>

log

2021-01-13 19:35:01.519 ERROR 1 --- [nio-8600-exec-2] o.a.c.c.C.[.[.[.[dispatcherServlet]      : Servlet.service() for servlet [dispatcherServlet] in context with path [/modulo-relatorio-api] threw exception [Handler dispatch failed; nested exception is java.lang.InternalError: java.lang.reflect.InvocationTargetException] with root cause




java.lang.NullPointerException: null


	at java.desktop/sun.awt.FontConfiguration.getVersion(Unknown Source) ~[na:na]


	at java.desktop/sun.awt.FontConfiguration.readFontConfigFile(Unknown Source) ~[na:na]


	at java.desktop/sun.awt.FontConfiguration.init(Unknown Source) ~[na:na]


	at java.desktop/sun.awt.X11FontManager.createFontConfiguration(Unknown Source) ~[na:na]


	at java.desktop/sun.font.SunFontManager$2.run(Unknown Source) ~[na:na]


	at java.base/java.security.AccessController.doPrivileged(Native Method) ~[na:na]


	at java.desktop/sun.font.SunFontManager.<init>(Unknown Source) ~[na:na]


	at java.desktop/sun.awt.FcFontManager.<init>(Unknown Source) ~[na:na]


	at java.desktop/sun.awt.X11FontManager.<init>(Unknown Source) ~[na:na]


	at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[na:na]


	at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) ~[na:na]


	at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) ~[na:na]


	at java.base/java.lang.reflect.Constructor.newInstance(Unknown Source) ~[na:na]


	at java.desktop/sun.font.FontManagerFactory$1.run(Unknown Source) ~[na:na]


	at java.base/java.security.AccessController.doPrivileged(Native Method) ~[na:na]


	at java.desktop/sun.font.FontManagerFactory.getInstance(Unknown Source) ~[na:na]


	at java.desktop/java.awt.Font.<init>(Unknown Source) ~[na:na]


	at java.desktop/java.awt.Font.createFont(Unknown Source) ~[na:na]


	at net.sf.jasperreports.engine.fonts.AwtFontManager.getAwtFont(AwtFontManager.java:89) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]


	at net.sf.jasperreports.engine.fonts.SimpleFontFace.loadFont(SimpleFontFace.java:181) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]


	at net.sf.jasperreports.engine.fonts.SimpleFontFace.setTtf(SimpleFontFace.java:162) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]


	at net.sf.jasperreports.engine.fonts.SimpleFontExtensionHelper.parseFontFace(SimpleFontExtensionHelper.java:390) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]


	at net.sf.jasperreports.engine.fonts.SimpleFontExtensionHelper.parseFontFamily(SimpleFontExtensionHelper.java:311) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]


	at net.sf.jasperreports.engine.fonts.SimpleFontExtensionHelper.parseFontExtensions(SimpleFontExtensionHelper.java:259) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]


	at net.sf.jasperreports.engine.fonts.SimpleFontExtensionHelper.loadFontExtensions(SimpleFontExtensionHelper.java:230) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]


	at net.sf.jasperreports.engine.fonts.SimpleFontExtensionHelper.loadFontExtensions(SimpleFontExtensionHelper.java:187) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]


	at net.sf.jasperreports.engine.fonts.FontExtensionsRegistry.ensureFontExtensions(FontExtensionsRegistry.java:93) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]


	at net.sf.jasperreports.engine.fonts.FontExtensionsRegistry.getExtensions(FontExtensionsRegistry.java:57) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]


	at net.sf.jasperreports.extensions.DefaultExtensionsRegistry.getExtensions(DefaultExtensionsRegistry.java:134) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]


	at net.sf.jasperreports.engine.util.JRStyledTextParser.<clinit>(JRStyledTextParser.java:86) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]


	at net.sf.jasperreports.engine.fill.JRBaseFiller.<init>(JRBaseFiller.java:116) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]


	at net.sf.jasperreports.engine.fill.JRVerticalFiller.<init>(JRVerticalFiller.java:79) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]


	at net.sf.jasperreports.engine.fill.JRFiller.createBandReportFiller(JRFiller.java:251) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]


	at net.sf.jasperreports.engine.fill.JRFiller.createReportFiller(JRFiller.java:272) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]


	at net.sf.jasperreports.engine.fill.JRFiller.fill(JRFiller.java:156) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]


	at net.sf.jasperreports.engine.fill.JRFiller.fill(JRFiller.java:145) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]


	at net.sf.jasperreports.engine.JasperFillManager.fill(JasperFillManager.java:758) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]


	at net.sf.jasperreports.engine.JasperFillManager.fill(JasperFillManager.java:739) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]


	at net.sf.jasperreports.engine.JasperRunManager.runToPdf(JasperRunManager.java:458) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]


	at net.sf.jasperreports.engine.JasperRunManager.runReportToPdf(JasperRunManager.java:852) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]


	at br.com.ghnetsoft.comprasfood.relatorio.service.RequisicaoService.imprimir(RequisicaoService.java:51) ~[classes!/:0.0.2-SNAPSHOT]


	at br.com.ghnetsoft.comprasfood.relatorio.resource.RequisicaoResource.buscarPeloId(RequisicaoResource.java:31) ~[classes!/:0.0.2-SNAPSHOT]


	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na]


	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[na:na]


	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[na:na]


	at java.base/java.lang.reflect.Method.invoke(Unknown Source) ~[na:na]


	at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:190) ~[spring-web-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]


	at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:138) ~[spring-web-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]


	at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:105) ~[spring-webmvc-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]


	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:878) ~[spring-webmvc-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]


	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:792) ~[spring-webmvc-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]


	at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) ~[spring-webmvc-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]


	at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1040) ~[spring-webmvc-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]


	at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:943) ~[spring-webmvc-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]


	at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006) ~[spring-webmvc-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]


	at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898) ~[spring-webmvc-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]


	at javax.servlet.http.HttpServlet.service(HttpServlet.java:626) ~[tomcat-embed-core-9.0.39.jar!/:4.0.FR]


	at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883) ~[spring-webmvc-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]


	at javax.servlet.http.HttpServlet.service(HttpServlet.java:733) ~[tomcat-embed-core-9.0.39.jar!/:4.0.FR]


	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


	at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53) ~[tomcat-embed-websocket-9.0.39.jar!/:9.0.39]


	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:320) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]


	at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:126) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]


	at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:90) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]


	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]


	at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:118) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]


	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]


	at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:137) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]


	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]


	at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:111) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]


	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]


	at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:158) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]


	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]


	at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:63) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]


	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]


	at org.springframework.security.oauth2.provider.authentication.OAuth2AuthenticationProcessingFilter.doFilter(OAuth2AuthenticationProcessingFilter.java:176) ~[spring-security-oauth2-2.2.1.RELEASE.jar!/:na]


	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]


	at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:116) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]


	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]


	at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:92) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]


	at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:77) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]


	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) ~[spring-web-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]


	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]


	at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:105) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]


	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]


	at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:56) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]


	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) ~[spring-web-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]


	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]


	at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:215) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]


	at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:178) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]


	at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:358) ~[spring-web-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]


	at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:271) ~[spring-web-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]


	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


	at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]


	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) ~[spring-web-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]


	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


	at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]


	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) ~[spring-web-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]


	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


	at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:93) ~[spring-boot-actuator-2.3.5.RELEASE.jar!/:2.3.5.RELEASE]


	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) ~[spring-web-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]


	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


	at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]


	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) ~[spring-web-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]


	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


	at br.com.ghnetsoft.comprasfood.relatorio.config.SmpleCORSFilter.doFilter(SmpleCORSFilter.java:42) ~[classes!/:0.0.2-SNAPSHOT]


	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:542) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:143) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


	at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:374) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


	at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


	at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:868) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1590) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


	at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) ~[na:na]


	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) ~[na:na]


	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


	at java.base/java.lang.Thread.run(Unknown Source) ~[na:na]
staroski

A pasta src não faz parte do classpath da aplicação
Não sei como está configurado seu ambiente, mas provavelmente basta você informar o caminho relativo a partir da raíz do classpath, que seria:

"/relatorio/requisicao_compra.jasper".

guilhermebhte

Acho que copiei o log errado ou o codigo era outro

loga atual:

2021-01-14 14:28:39.524 ERROR 1 --- [nio-8600-exec-4] o.a.c.c.C.[.[.[.[dispatcherServlet]      : Servlet.service() for servlet [dispatcherServlet] in context with path [/modulo-relatorio-api] threw exception [Handler dispatch failed; nested exception is java.lang.InternalError: java.lang.reflect.InvocationTargetException] with root cause
java.lang.NullPointerException: null
	at java.desktop/sun.awt.FontConfiguration.getVersion(Unknown Source) ~[na:na]
	at java.desktop/sun.awt.FontConfiguration.readFontConfigFile(Unknown Source) ~[na:na]
	at java.desktop/sun.awt.FontConfiguration.init(Unknown Source) ~[na:na]
	at java.desktop/sun.awt.X11FontManager.createFontConfiguration(Unknown Source) ~[na:na]
	at java.desktop/sun.font.SunFontManager$2.run(Unknown Source) ~[na:na]
	at java.base/java.security.AccessController.doPrivileged(Native Method) ~[na:na]
	at java.desktop/sun.font.SunFontManager.<init>(Unknown Source) ~[na:na]
	at java.desktop/sun.awt.FcFontManager.<init>(Unknown Source) ~[na:na]
	at java.desktop/sun.awt.X11FontManager.<init>(Unknown Source) ~[na:na]
	at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[na:na]
	at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) ~[na:na]
	at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) ~[na:na]
	at java.base/java.lang.reflect.Constructor.newInstance(Unknown Source) ~[na:na]
	at java.desktop/sun.font.FontManagerFactory$1.run(Unknown Source) ~[na:na]
	at java.base/java.security.AccessController.doPrivileged(Native Method) ~[na:na]
	at java.desktop/sun.font.FontManagerFactory.getInstance(Unknown Source) ~[na:na]
	at java.desktop/java.awt.Font.<init>(Unknown Source) ~[na:na]
	at java.desktop/java.awt.Font.createFont(Unknown Source) ~[na:na]
	at net.sf.jasperreports.engine.fonts.AwtFontManager.getAwtFont(AwtFontManager.java:89) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]
	at net.sf.jasperreports.engine.fonts.SimpleFontFace.loadFont(SimpleFontFace.java:181) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]
	at net.sf.jasperreports.engine.fonts.SimpleFontFace.setTtf(SimpleFontFace.java:162) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]
	at net.sf.jasperreports.engine.fonts.SimpleFontExtensionHelper.parseFontFace(SimpleFontExtensionHelper.java:390) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]
	at net.sf.jasperreports.engine.fonts.SimpleFontExtensionHelper.parseFontFamily(SimpleFontExtensionHelper.java:311) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]
	at net.sf.jasperreports.engine.fonts.SimpleFontExtensionHelper.parseFontExtensions(SimpleFontExtensionHelper.java:259) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]
	at net.sf.jasperreports.engine.fonts.SimpleFontExtensionHelper.loadFontExtensions(SimpleFontExtensionHelper.java:230) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]
	at net.sf.jasperreports.engine.fonts.SimpleFontExtensionHelper.loadFontExtensions(SimpleFontExtensionHelper.java:187) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]
	at net.sf.jasperreports.engine.fonts.FontExtensionsRegistry.ensureFontExtensions(FontExtensionsRegistry.java:93) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]
	at net.sf.jasperreports.engine.fonts.FontExtensionsRegistry.getExtensions(FontExtensionsRegistry.java:57) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]
	at net.sf.jasperreports.extensions.DefaultExtensionsRegistry.getExtensions(DefaultExtensionsRegistry.java:134) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]
	at net.sf.jasperreports.engine.util.JRStyledTextParser.<clinit>(JRStyledTextParser.java:86) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]
	at net.sf.jasperreports.engine.fill.JRBaseFiller.<init>(JRBaseFiller.java:116) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]
	at net.sf.jasperreports.engine.fill.JRVerticalFiller.<init>(JRVerticalFiller.java:79) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]
	at net.sf.jasperreports.engine.fill.JRFiller.createBandReportFiller(JRFiller.java:251) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]
	at net.sf.jasperreports.engine.fill.JRFiller.createReportFiller(JRFiller.java:272) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]
	at net.sf.jasperreports.engine.fill.JRFiller.fill(JRFiller.java:156) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]
	at net.sf.jasperreports.engine.fill.JRFiller.fill(JRFiller.java:145) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]
	at net.sf.jasperreports.engine.JasperFillManager.fill(JasperFillManager.java:758) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]
	at net.sf.jasperreports.engine.JasperFillManager.fill(JasperFillManager.java:739) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]
	at net.sf.jasperreports.engine.JasperRunManager.runToPdf(JasperRunManager.java:458) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]
	at net.sf.jasperreports.engine.JasperRunManager.runReportToPdf(JasperRunManager.java:852) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]
	at br.com.ghnetsoft.comprasfood.relatorio.service.RequisicaoService.imprimir(RequisicaoService.java:51) ~[classes!/:0.0.2-SNAPSHOT]

Linha 51:

byte[] bytes = JasperRunManager.runReportToPdf(
this.getClass().getClassLoader().getResourceAsStream("relatorio/requisicao_compra.jasper"),
						parametros, dataSource);

O que pode ser ?

staroski

Põe um "/" na frente da pasta relatório, para ele pesquisar a partir da raíz do classpath.
Não precisa usar o getClassLoader(), só getClass() basta.

Assim:

InputStream arquivo = getClass().getResourceAsStream("/relatorio/requisicao_compra.jasper");
byte[] bytes = JasperRunManager.runReportToPdf(arquivo, parametros, dataSource);
staroski

Aparentemente seu relatório está usando uma fonte de texto que você não possui na sua aplicação Java.

guilhermebhte

Inclui estas dependências ?

<dependency>
			<groupId>net.sf.jasperreports</groupId>
			<artifactId>jasperreports-functions</artifactId>
			<version>6.16.0</version>
		</dependency>
		<dependency>
			<groupId>net.sf.jasperreports</groupId>
			<artifactId>jasperreports-fonts</artifactId>
			<version>6.16.0</version>
		</dependency>

coloquei o jasperreports_extension.properties

Nele tem:

net.sf.jasperreports.extension.registry.factory.fonts=net.sf.jasperreports.engine.fonts.SimpleFontExtensionsRegistryFactory
net.sf.jasperreports.extension.simple.font.families.myfamily=relatorios/fonts/fonts.xml

Mas deu erro.

log

2021-01-14 15:26:12.400 ERROR 1 — [nio-8600-exec-2] n.s.j.e.fonts.FontExtensionsRegistry : Error loading font extensions from relatorios/fonts/fonts.xml

net.sf.jasperreports.engine.JRRuntimeException: net.sf.jasperreports.engine.JRException: Input stream not found at: relatorios/fonts/fonts.xml.

at net.sf.jasperreports.engine.fonts.SimpleFontExtensionHelper.loadFontExtensions(SimpleFontExtensionHelper.java:191) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]


at net.sf.jasperreports.engine.fonts.FontExtensionsRegistry.ensureFontExtensions(FontExtensionsRegistry.java:93) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]


at net.sf.jasperreports.engine.fonts.FontExtensionsRegistry.getExtensions(FontExtensionsRegistry.java:57) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]


at net.sf.jasperreports.extensions.DefaultExtensionsRegistry.getExtensions(DefaultExtensionsRegistry.java:134) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]


at net.sf.jasperreports.engine.util.JRStyledTextParser.<clinit>(JRStyledTextParser.java:86) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]


at net.sf.jasperreports.engine.fill.JRBaseFiller.<init>(JRBaseFiller.java:116) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]


at net.sf.jasperreports.engine.fill.JRVerticalFiller.<init>(JRVerticalFiller.java:79) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]


at net.sf.jasperreports.engine.fill.JRFiller.createBandReportFiller(JRFiller.java:251) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]


at net.sf.jasperreports.engine.fill.JRFiller.createReportFiller(JRFiller.java:272) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]


at net.sf.jasperreports.engine.fill.JRFiller.fill(JRFiller.java:156) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]


at net.sf.jasperreports.engine.fill.JRFiller.fill(JRFiller.java:145) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]


at net.sf.jasperreports.engine.JasperFillManager.fill(JasperFillManager.java:758) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]


at net.sf.jasperreports.engine.JasperFillManager.fill(JasperFillManager.java:739) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]


at net.sf.jasperreports.engine.JasperRunManager.runToPdf(JasperRunManager.java:458) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]


at net.sf.jasperreports.engine.JasperRunManager.runReportToPdf(JasperRunManager.java:852) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]


at br.com.ghnetsoft.comprasfood.relatorio.service.RequisicaoService.imprimir(RequisicaoService.java:51) ~[classes!/:0.0.2-SNAPSHOT]


at br.com.ghnetsoft.comprasfood.relatorio.resource.RequisicaoResource.buscarPeloId(RequisicaoResource.java:31) ~[classes!/:0.0.2-SNAPSHOT]


at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na]


at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[na:na]


at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[na:na]


at java.base/java.lang.reflect.Method.invoke(Unknown Source) ~[na:na]


at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:190) ~[spring-web-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]


at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:138) ~[spring-web-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]


at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:105) ~[spring-webmvc-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]


at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:878) ~[spring-webmvc-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]


at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:792) ~[spring-webmvc-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]


at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) ~[spring-webmvc-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]


at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1040) ~[spring-webmvc-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]


at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:943) ~[spring-webmvc-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]


at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006) ~[spring-webmvc-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]


at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898) ~[spring-webmvc-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]


at javax.servlet.http.HttpServlet.service(HttpServlet.java:626) ~[tomcat-embed-core-9.0.39.jar!/:4.0.FR]


at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883) ~[spring-webmvc-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]


at javax.servlet.http.HttpServlet.service(HttpServlet.java:733) ~[tomcat-embed-core-9.0.39.jar!/:4.0.FR]


at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53) ~[tomcat-embed-websocket-9.0.39.jar!/:9.0.39]


at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:320) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]


at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:126) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]


at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:90) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]


at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]


at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:118) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]


at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]


at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:137) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]


at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]


at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:111) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]


at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]


at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:158) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]


at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]


at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:63) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]


at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]


at org.springframework.security.oauth2.provider.authentication.OAuth2AuthenticationProcessingFilter.doFilter(OAuth2AuthenticationProcessingFilter.java:176) ~[spring-security-oauth2-2.2.1.RELEASE.jar!/:na]


at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]


at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:116) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]


at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]


at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:92) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]


at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:77) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]


at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) ~[spring-web-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]


at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]


at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:105) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]


at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]


at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:56) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]


at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) ~[spring-web-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]


at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]


at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:215) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]


at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:178) ~[spring-security-web-5.3.5.RELEASE.jar!/:5.3.5.RELEASE]


at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:358) ~[spring-web-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]


at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:271) ~[spring-web-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]


at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]


at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) ~[spring-web-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]


at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]


at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) ~[spring-web-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]


at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:93) ~[spring-boot-actuator-2.3.5.RELEASE.jar!/:2.3.5.RELEASE]


at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) ~[spring-web-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]


at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]


at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) ~[spring-web-5.2.10.RELEASE.jar!/:5.2.10.RELEASE]


at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


at br.com.ghnetsoft.comprasfood.relatorio.config.SmpleCORSFilter.doFilter(SmpleCORSFilter.java:42) ~[classes!/:0.0.2-SNAPSHOT]


at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:542) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:143) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:374) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:868) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1590) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) ~[na:na]


at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) ~[na:na]


at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.39.jar!/:9.0.39]


at java.base/java.lang.Thread.run(Unknown Source) ~[na:na]

Caused by: net.sf.jasperreports.engine.JRException: Input stream not found at: relatorios/fonts/fonts.xml.

at net.sf.jasperreports.repo.RepositoryUtil.getInputStreamFromLocation(RepositoryUtil.java:175) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]


at net.sf.jasperreports.engine.fonts.SimpleFontExtensionHelper.loadFontExtensions(SimpleFontExtensionHelper.java:186) ~[jasperreports-6.16.0.jar!/:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]


... 106 common frames omitted
guilhermebhte

Como descubro esta fonte ?

Mesmo erro …

at java.desktop/sun.awt.FontConfiguration.getVersion(Unknown Source) ~[na:na]

davidbuzatto

Uai, usa uma fonte padrão!

staroski

No seu printscreen a pasta se chama relatorio, no singular.
No arquivo .properties você pôs relatorios, no plural.

Põe uma barra ( / ) na frente do "relatorio/fonts/fonts.xml" para garantir que ele pesquise a partir da raíz do classpath.

guilhermebhte

Já fiz está alteração.

Local dá este erro

Caused by: net.sf.jasperreports.engine.JRException: Input stream not found at: /relatorio/fonts/fonts.xml.
	at net.sf.jasperreports.repo.RepositoryUtil.getInputStreamFromLocation(RepositoryUtil.java:175) ~[jasperreports-6.16.0.jar:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]
	at net.sf.jasperreports.engine.fonts.SimpleFontExtensionHelper.loadFontExtensions(SimpleFontExtensionHelper.java:186) ~[jasperreports-6.16.0.jar:6.16.0-48579d909b7943b64690c65c71e07e0b80981928]
	... 106 common frames omitted
guilhermebhte

Estou usando todos Arial.

guilhermebhte

Nada funciona.

staroski

Essas fontes estão instaladas no seu ambiente de homologação?

guilhermebhte

Não. Se possível, me diz, como instalar. Linux ubuntu

staroski

Mas daí tu me quebra.
Como é que sua aplicação vai usar uma fonte que você não tem?

Acredito que se você instalar o fontconfig vá funcionar:

apt-get install --assume-yes fontconfig
guilhermebhte

Na verdade eu nem sabia que tinha que instalar as fontes. Por isso coloquei os logs. Porque no windows, já vem né

Vou instalar e testar e falo aqui.

guilhermebhte

Fiz e não funcionou.

reiniciei o servidor

Mesmo erro

2021-01-15 14:43:49.856 ERROR 1 --- [nio-8600-exec-2] o.a.c.c.C.[.[.[.[dispatcherServlet]      : Servlet.service() for servlet [dispatcherServlet] in context with path [/modulo-relatorio-api] threw exception [Handler dispatch failed; nested exception is java.lang.InternalError: java.lang.reflect.InvocationTargetException] with root cause
java.lang.NullPointerException: null
	at java.desktop/sun.awt.FontConfiguration.getVersion(Unknown Source) ~[na:na]
rodriguesabner
guilhermebhte

2021-01-15 15:11:07.845 ERROR 1 — [nio-8600-exec-4] o.a.c.c.C.[.[.[.[dispatcherServlet] : Servlet.service() for servlet [dispatcherServlet] in context with path [/modulo-relatorio-api] threw exception [Handler dispatch failed; nested exception is java.lang.InternalError: java.lang.reflect.InvocationTargetException] with root cause

Mesmo erro

java.lang.NullPointerException: null
	at java.desktop/sun.awt.FontConfiguration.getVersion(Unknown Source) ~[na:na]

Reiniciei o servidor e o mesmo erro

D

Importe o “jasperreports-fonts” no seu pom.xml, e use a font dejavu em seu relatório.

guilhermebhte

Mesmo erro

<dependency>
			<groupId>net.sf.jasperreports</groupId>
			<artifactId>jasperreports-fonts</artifactId>
			<version>6.16.0</version>
		</dependency>
2021-01-18 09:37:19.377 ERROR 1 --- [nio-8600-exec-2] o.a.c.c.C.[.[.[.[dispatcherServlet]      : Servlet.service() for servlet [dispatcherServlet] in context with path [/modulo-relatorio-api] threw exception [Handler dispatch failed; nested exception is java.lang.InternalError: java.lang.reflect.InvocationTargetException] with root cause
java.lang.NullPointerException: null
	at java.desktop/sun.awt.FontConfiguration.getVersion(Unknown Source) ~[na:na]

image

guilhermebhte

Código do relatório

<?xml version="1.0" encoding="UTF-8"?>
<!-- Created with Jaspersoft Studio version 6.16.0.final using JasperReports Library version 6.16.0-48579d909b7943b64690c65c71e07e0b80981928  -->
<jasperReport xmlns="http://jasperreports.sourceforge.net/jasperreports" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports http://jasperreports.sourceforge.net/xsd/jasperreport.xsd" name="requisicao_compra" pageWidth="595" pageHeight="842" columnWidth="555" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20" uuid="dc2fbcb2-ebfb-40d9-b501-eec6cdc69a10">
	<property name="com.jaspersoft.studio.data.defaultdataadapter" value="One Empty Record"/>
	<parameter name="nomeRede" class="java.lang.String"/>
	<parameter name="lojaOrigem" class="java.lang.String"/>
	<parameter name="lojaDestino" class="java.lang.String"/>
	<parameter name="funcionario" class="java.lang.String"/>
	<parameter name="dataEntrega" class="java.lang.String"/>
	<parameter name="natureza" class="java.lang.String"/>
	<parameter name="numeroRequisicao" class="java.lang.Long"/>
	<parameter name="status" class="java.lang.String"/>
	<parameter name="total" class="java.math.BigDecimal"/>
	<queryString>
		<![CDATA[]]>
	</queryString>
	<field name="insumo" class="java.lang.String"/>
	<field name="unidade" class="java.lang.String"/>
	<field name="quantidade" class="java.math.BigDecimal"/>
	<field name="quantidadeAprovada" class="java.math.BigDecimal"/>
	<field name="ultimoCusto" class="java.math.BigDecimal"/>
	<field name="total" class="java.math.BigDecimal"/>
	<title>
		<band height="79" splitType="Stretch">
			<frame>
				<reportElement x="0" y="0" width="555" height="79" uuid="0468d480-1644-481f-9969-a2681bd67cf1">
					<property name="com.jaspersoft.studio.unit.height" value="px"/>
					<property name="com.jaspersoft.studio.unit.width" value="px"/>
				</reportElement>
				<box padding="0">
					<pen lineWidth="1.0" lineStyle="Solid"/>
				</box>
				<textField isBlankWhenNull="true">
					<reportElement x="145" y="55" width="404" height="20" uuid="04ba1364-25ef-4213-8a6f-5783067a77c5"/>
					<textElement textAlignment="Justified" verticalAlignment="Middle">
						<font fontName="DejaVu Sans"/>
					</textElement>
					<textFieldExpression><![CDATA[$P{nomeRede}]]></textFieldExpression>
				</textField>
				<textField>
					<reportElement x="305" y="15" width="126" height="20" uuid="531ce186-9007-4662-9d03-0afb938ba448"/>
					<textElement textAlignment="Left" verticalAlignment="Middle">
						<font fontName="DejaVu Sans"/>
					</textElement>
					<textFieldExpression><![CDATA[$P{numeroRequisicao}]]></textFieldExpression>
				</textField>
				<staticText>
					<reportElement x="145" y="35" width="40" height="20" uuid="c20573e3-faac-4d7c-877c-b625df378698"/>
					<textElement verticalAlignment="Middle">
						<font fontName="DejaVu Sans" isBold="true"/>
					</textElement>
					<text><![CDATA[Status:]]></text>
				</staticText>
				<textField>
					<reportElement x="185" y="35" width="270" height="19" uuid="4620e90f-8559-4872-9e39-e2822b1d8766"/>
					<textElement verticalAlignment="Middle">
						<font fontName="DejaVu Sans"/>
					</textElement>
					<textFieldExpression><![CDATA[$P{status}]]></textFieldExpression>
				</textField>
				<staticText>
					<reportElement x="145" y="15" width="170" height="20" uuid="0c526bcc-d9fc-4ce6-bb5a-30cc51a7beb8"/>
					<textElement verticalAlignment="Middle">
						<font fontName="DejaVu Sans" isBold="true"/>
					</textElement>
					<text><![CDATA[Requisição de compras - Número:]]></text>
				</staticText>
			</frame>
		</band>
	</title>
	<pageHeader>
		<band height="100" splitType="Stretch">
			<frame>
				<reportElement x="0" y="0" width="555" height="100" uuid="e3573e27-a0bd-48ef-9c1f-4bff615fc7ed">
					<property name="com.jaspersoft.studio.unit.width" value="px"/>
					<property name="com.jaspersoft.studio.unit.height" value="px"/>
				</reportElement>
				<box>
					<pen lineWidth="1.0" lineStyle="Solid"/>
				</box>
				<staticText>
					<reportElement x="3" y="5" width="100" height="20" uuid="b4fd2c15-1212-42d2-9a8d-08452ec7b39c"/>
					<textElement textAlignment="Left" verticalAlignment="Middle">
						<font fontName="DejaVu Sans" isBold="true"/>
					</textElement>
					<text><![CDATA[Loja de origem:]]></text>
				</staticText>
				<staticText>
					<reportElement x="3" y="23" width="100" height="20" uuid="683f02ab-089a-4caa-b97f-f01efa2e9715"/>
					<textElement textAlignment="Left" verticalAlignment="Middle">
						<font fontName="DejaVu Sans" isBold="true"/>
					</textElement>
					<text><![CDATA[Loja de destino:]]></text>
				</staticText>
				<staticText>
					<reportElement x="3" y="41" width="114" height="20" uuid="92b7359f-c8db-4d3f-9dfa-96284e6ece4f"/>
					<textElement textAlignment="Left" verticalAlignment="Middle">
						<font fontName="DejaVu Sans" isBold="true"/>
					</textElement>
					<text><![CDATA[Funcionário solicitante:]]></text>
				</staticText>
				<staticText>
					<reportElement x="3" y="57" width="114" height="20" uuid="2674a5c4-8de9-4f04-a5f6-3000a67ee464"/>
					<textElement textAlignment="Left" verticalAlignment="Middle">
						<font fontName="DejaVu Sans" isBold="true"/>
					</textElement>
					<text><![CDATA[Data de entrega:]]></text>
				</staticText>
				<staticText>
					<reportElement x="3" y="74" width="114" height="20" uuid="52cc4dde-d762-4b5e-a592-14f17e67ce08"/>
					<textElement textAlignment="Left" verticalAlignment="Middle">
						<font fontName="DejaVu Sans" isBold="true"/>
					</textElement>
					<text><![CDATA[Natureza:]]></text>
				</staticText>
				<textField>
					<reportElement x="123" y="5" width="428" height="20" uuid="e4bcefb5-4e13-402e-8ce7-8a5898468640">
						<property name="com.jaspersoft.studio.unit.height" value="px"/>
						<property name="com.jaspersoft.studio.unit.x" value="px"/>
						<property name="com.jaspersoft.studio.unit.width" value="px"/>
					</reportElement>
					<textElement verticalAlignment="Middle">
						<font fontName="DejaVu Sans"/>
					</textElement>
					<textFieldExpression><![CDATA[$P{lojaOrigem}]]></textFieldExpression>
				</textField>
				<textField>
					<reportElement x="123" y="23" width="428" height="20" uuid="400a4267-11a5-4e22-866a-7880221af6ca">
						<property name="com.jaspersoft.studio.unit.height" value="px"/>
						<property name="com.jaspersoft.studio.unit.x" value="px"/>
						<property name="com.jaspersoft.studio.unit.width" value="px"/>
					</reportElement>
					<textElement verticalAlignment="Middle">
						<font fontName="DejaVu Sans"/>
					</textElement>
					<textFieldExpression><![CDATA[$P{lojaDestino}]]></textFieldExpression>
				</textField>
				<textField>
					<reportElement x="123" y="41" width="428" height="20" uuid="7ce621fc-a2af-4173-aa31-875f4920851e">
						<property name="com.jaspersoft.studio.unit.height" value="pixel"/>
						<property name="com.jaspersoft.studio.unit.x" value="pixel"/>
						<property name="com.jaspersoft.studio.unit.width" value="px"/>
					</reportElement>
					<textElement verticalAlignment="Middle">
						<font fontName="DejaVu Sans"/>
					</textElement>
					<textFieldExpression><![CDATA[$P{funcionario}]]></textFieldExpression>
				</textField>
				<textField>
					<reportElement x="123" y="57" width="428" height="20" uuid="a18eab4e-ca44-4c30-b2c1-071209d31810">
						<property name="com.jaspersoft.studio.unit.height" value="px"/>
						<property name="com.jaspersoft.studio.unit.x" value="px"/>
						<property name="com.jaspersoft.studio.unit.width" value="px"/>
					</reportElement>
					<textElement verticalAlignment="Middle">
						<font fontName="DejaVu Sans"/>
					</textElement>
					<textFieldExpression><![CDATA[$P{dataEntrega}]]></textFieldExpression>
				</textField>
				<textField>
					<reportElement x="123" y="74" width="428" height="20" uuid="f40c9c1a-aca9-4f24-bd5a-3ae48ed463f5">
						<property name="com.jaspersoft.studio.unit.height" value="px"/>
						<property name="com.jaspersoft.studio.unit.x" value="px"/>
					</reportElement>
					<textElement verticalAlignment="Middle">
						<font fontName="DejaVu Sans"/>
					</textElement>
					<textFieldExpression><![CDATA[$P{natureza}]]></textFieldExpression>
				</textField>
			</frame>
		</band>
	</pageHeader>
	<columnHeader>
		<band height="20" splitType="Stretch">
			<rectangle>
				<reportElement x="0" y="0" width="555" height="20" uuid="b344f051-c362-45d9-a7d6-fe30bd104636">
					<property name="com.jaspersoft.studio.unit.width" value="px"/>
				</reportElement>
			</rectangle>
			<staticText>
				<reportElement x="0" y="0" width="115" height="20" uuid="cde891fa-bae7-41a5-94a0-47b804420ddb">
					<property name="com.jaspersoft.studio.unit.width" value="px"/>
				</reportElement>
				<box padding="0">
					<pen lineWidth="1.0" lineStyle="Solid"/>
				</box>
				<textElement textAlignment="Center" verticalAlignment="Middle">
					<font fontName="DejaVu Sans" isBold="true"/>
				</textElement>
				<text><![CDATA[Insumo]]></text>
			</staticText>
			<staticText>
				<reportElement x="115" y="0" width="115" height="20" uuid="09992034-eeb2-4316-b7a3-7e19648c1d01">
					<property name="com.jaspersoft.studio.unit.width" value="px"/>
				</reportElement>
				<box padding="0">
					<pen lineWidth="1.0"/>
				</box>
				<textElement textAlignment="Center" verticalAlignment="Middle">
					<font fontName="DejaVu Sans" isBold="true"/>
				</textElement>
				<text><![CDATA[Unidade]]></text>
			</staticText>
			<staticText>
				<reportElement x="230" y="0" width="70" height="20" uuid="9cb4ef90-ac40-4f65-b45d-07497b344784"/>
				<box padding="0">
					<pen lineWidth="1.0" lineStyle="Solid"/>
				</box>
				<textElement textAlignment="Center" verticalAlignment="Middle">
					<font fontName="DejaVu Sans" isBold="true"/>
				</textElement>
				<text><![CDATA[Quantidade]]></text>
			</staticText>
			<staticText>
				<reportElement x="300" y="0" width="114" height="20" uuid="8fd615c0-1d4f-47f7-bf9e-86069acefcf3"/>
				<box padding="0">
					<pen lineWidth="1.0" lineStyle="Solid"/>
				</box>
				<textElement textAlignment="Center" verticalAlignment="Middle">
					<font fontName="DejaVu Sans" isBold="true"/>
				</textElement>
				<text><![CDATA[Quantidade aprovada]]></text>
			</staticText>
			<staticText>
				<reportElement x="414" y="0" width="70" height="20" uuid="fec69755-7b9c-4170-bcb2-3a4357139ad6"/>
				<box padding="0">
					<pen lineWidth="1.0" lineStyle="Solid"/>
				</box>
				<textElement textAlignment="Center" verticalAlignment="Middle">
					<font fontName="DejaVu Sans" isBold="true"/>
				</textElement>
				<text><![CDATA[Último custo]]></text>
			</staticText>
			<staticText>
				<reportElement x="484" y="0" width="71" height="20" uuid="af503b49-015f-4009-87dc-f878b61aed39">
					<property name="com.jaspersoft.studio.unit.width" value="px"/>
				</reportElement>
				<box padding="0">
					<pen lineWidth="1.0" lineStyle="Solid"/>
				</box>
				<textElement textAlignment="Center" verticalAlignment="Middle">
					<font fontName="DejaVu Sans" isBold="true"/>
				</textElement>
				<text><![CDATA[Total]]></text>
			</staticText>
		</band>
	</columnHeader>
	<detail>
		<band height="15" splitType="Stretch">
			<rectangle>
				<reportElement x="0" y="0" width="555" height="15" uuid="81a82bf0-a03a-439e-b66d-b80189b75da2">
					<property name="com.jaspersoft.studio.unit.width" value="px"/>
				</reportElement>
			</rectangle>
			<textField isBlankWhenNull="true">
				<reportElement x="0" y="0" width="115" height="15" uuid="cb6566e7-748e-47ef-9062-df8983589f1a">
					<property name="com.jaspersoft.studio.spreadsheet.connectionID" value="3e4e53c1-8e10-4f35-9c07-96663252d66e"/>
					<property name="com.jaspersoft.studio.unit.height" value="px"/>
				</reportElement>
				<box padding="0">
					<pen lineWidth="1.0" lineStyle="Solid"/>
				</box>
				<textElement>
					<font fontName="DejaVu Sans"/>
				</textElement>
				<textFieldExpression><![CDATA[$F{insumo}]]></textFieldExpression>
			</textField>
			<textField isBlankWhenNull="true">
				<reportElement x="115" y="0" width="115" height="15" uuid="f817358a-9843-4700-b048-54aec74fc1ed">
					<property name="com.jaspersoft.studio.spreadsheet.connectionID" value="bc44918f-fbd3-4ac2-837d-ff111d837a9b"/>
					<property name="com.jaspersoft.studio.unit.height" value="px"/>
				</reportElement>
				<box padding="0">
					<pen lineWidth="1.0" lineStyle="Solid"/>
				</box>
				<textElement>
					<font fontName="DejaVu Sans"/>
				</textElement>
				<textFieldExpression><![CDATA[$F{unidade}]]></textFieldExpression>
			</textField>
			<textField isBlankWhenNull="true">
				<reportElement x="230" y="0" width="70" height="15" uuid="1062209a-39d5-4c6c-ae3e-5d5c480e6477">
					<property name="com.jaspersoft.studio.spreadsheet.connectionID" value="fc955d55-a729-412f-b5b0-748da3aff69b"/>
					<property name="com.jaspersoft.studio.unit.height" value="px"/>
				</reportElement>
				<box padding="0">
					<pen lineWidth="1.0" lineStyle="Solid"/>
				</box>
				<textElement textAlignment="Right">
					<font fontName="DejaVu Sans"/>
				</textElement>
				<textFieldExpression><![CDATA[$F{quantidade}]]></textFieldExpression>
			</textField>
			<textField isBlankWhenNull="true">
				<reportElement x="300" y="0" width="114" height="15" uuid="4cc0fb38-84c1-41e4-860e-88d01d2db97a">
					<property name="com.jaspersoft.studio.spreadsheet.connectionID" value="d3ab1af9-8dd4-4018-a8a3-26ef94c3fb6a"/>
					<property name="com.jaspersoft.studio.unit.height" value="px"/>
				</reportElement>
				<box padding="0">
					<pen lineWidth="1.0" lineStyle="Solid"/>
				</box>
				<textElement textAlignment="Right">
					<font fontName="DejaVu Sans"/>
				</textElement>
				<textFieldExpression><![CDATA[$F{quantidadeAprovada}]]></textFieldExpression>
			</textField>
			<textField isBlankWhenNull="true">
				<reportElement x="414" y="0" width="70" height="15" uuid="59624797-edde-46d3-8bee-d15ed404655b">
					<property name="com.jaspersoft.studio.spreadsheet.connectionID" value="f3b50293-6e9e-438f-82b2-23fcef6429d5"/>
					<property name="com.jaspersoft.studio.unit.height" value="px"/>
				</reportElement>
				<box padding="0">
					<pen lineWidth="1.0" lineStyle="Solid"/>
				</box>
				<textElement textAlignment="Right">
					<font fontName="DejaVu Sans"/>
				</textElement>
				<textFieldExpression><![CDATA[$F{ultimoCusto}]]></textFieldExpression>
			</textField>
			<textField isBlankWhenNull="true">
				<reportElement x="484" y="0" width="71" height="15" uuid="eb49fbf4-9a06-4512-b8c1-41a2651348bf">
					<property name="com.jaspersoft.studio.spreadsheet.connectionID" value="7480404f-5f56-46f1-838b-ad82ddbc70fe"/>
					<property name="com.jaspersoft.studio.unit.height" value="px"/>
				</reportElement>
				<box padding="0">
					<pen lineWidth="1.0" lineStyle="Solid"/>
				</box>
				<textElement textAlignment="Right">
					<font fontName="DejaVu Sans"/>
				</textElement>
				<textFieldExpression><![CDATA[$F{total}]]></textFieldExpression>
			</textField>
		</band>
	</detail>
	<columnFooter>
		<band height="17" splitType="Stretch">
			<staticText>
				<reportElement x="0" y="3" width="100" height="14" uuid="ba880021-c511-4016-ae7c-e64a9af55b2f"/>
				<textElement>
					<font fontName="DejaVu Sans" size="9"/>
				</textElement>
				<text><![CDATA[Food & Franquias]]></text>
			</staticText>
			<textField pattern="dd/MM/yyy">
				<reportElement x="240" y="3" width="100" height="14" uuid="6c82a50e-51c9-4fe5-a293-a8a8e871c847"/>
				<textElement textAlignment="Center">
					<font fontName="DejaVu Sans" size="9"/>
				</textElement>
				<textFieldExpression><![CDATA[new java.util.Date()]]></textFieldExpression>
			</textField>
			<textField pattern="HH:mm">
				<reportElement x="300" y="3" width="100" height="14" uuid="9d4e440a-a9c0-45fe-bc56-1cbac8173c59"/>
				<textElement textAlignment="Center">
					<font fontName="DejaVu Sans" size="9"/>
				</textElement>
				<textFieldExpression><![CDATA[new java.util.Date()]]></textFieldExpression>
			</textField>
			<textField>
				<reportElement x="400" y="3" width="154" height="14" uuid="7a39f766-62b4-4727-9aac-9810ab0f2cd3"/>
				<textElement textAlignment="Right">
					<font fontName="DejaVu Sans" size="9"/>
				</textElement>
				<textFieldExpression><![CDATA["Página " + $V{PAGE_NUMBER} + " de " + $V{PAGE_NUMBER}]]></textFieldExpression>
			</textField>
			<line>
				<reportElement x="0" y="0" width="555" height="1" uuid="88c8ba78-9506-429e-8f5a-2ddbe7170cdc">
					<property name="com.jaspersoft.studio.unit.height" value="px"/>
				</reportElement>
			</line>
		</band>
	</columnFooter>
	<summary>
		<band height="20" splitType="Stretch">
			<staticText>
				<reportElement x="449" y="0" width="35" height="20" uuid="35af2d97-fd05-4cc5-b09a-9e06216588a5"/>
				<textElement textAlignment="Right" verticalAlignment="Middle">
					<font isBold="true"/>
				</textElement>
				<text><![CDATA[Total:]]></text>
			</staticText>
			<textField>
				<reportElement x="454" y="0" width="100" height="20" uuid="bcd63138-bf77-446e-9728-c2de0169e4e4"/>
				<textElement textAlignment="Right" verticalAlignment="Middle">
					<font fontName="DejaVu Sans"/>
				</textElement>
				<textFieldExpression><![CDATA[$P{total}]]></textFieldExpression>
			</textField>
		</band>
	</summary>
	<noData>
		<band height="50">
			<staticText>
				<reportElement x="0" y="0" width="553" height="50" uuid="5feb469b-e64a-4bf9-aed4-9bc2ca007c21"/>
				<textElement textAlignment="Center" verticalAlignment="Middle">
					<font fontName="DejaVu Sans" size="14" isBold="true"/>
				</textElement>
				<text><![CDATA[Sem registros !!!]]></text>
			</staticText>
		</band>
	</noData>
</jasperReport>
staroski

Você está configurando as fontes como dependência do seu projeto maven, mas o problema não é o projeto, se fosse, não funcionaria localmente.
O problema é que essas fontes não estão instaladas no seu servidor de homologação.
Talvez você tenha que falar com o pessoal de infraestrutura.

R

Galera estou com problemas no Jasper, alguem poderia me ajudar?

staroski

Prezado, você tem que descrever o problema.

R

@staroski

Estou com uma app Web, feita com frame Vaadin + MySQL + Spring, fiz o relatório usando JasperStudio, passei a query dentro do próprio relatório e ele está me retornando corretamente os dados do banco. O arquivo jrxml gerado pelo Studio foi salvo dentro do projeto, estou usando a IDE Eclipse, salvei o jrxml em src/main/resources/Relatorio/RelatorioVendas.jrxml. Agora quero pegar este arquivo jrxml e exporta-lo para PDF, não quero exibir ele em navegador, não quero fazer download dele…a unica coisa que quero é criar um pdf na mesma pasta onde está jrxml. Ja li inumeros sites com exemplos de códigos, mas tudo que tentei não deu certo, então preciso de uma orientação(passo a passo) para fazer as conversões necessarias para obter tal resultado.

staroski

Posta o código que você fez.
E não esqueça de formatar no fórum clicando no botão </>.

R

@staroski

criei uma classe apenas para este metodo

private void generatePdfButton() throws JRException {

		JasperReport document = JasperCompileManager.compileReport(
				"C:\\Users\\fjd2320\\Downloads\\Vaadin-Application-Sales-master\\src\\main\\resources\\Relatorios\\RelatorioVendas.jrxml");

		JRDataSource jrDataSource = new JREmptyDataSource();

		JasperPrint print = JasperFillManager.fillReport(document, null, jrDataSource);

		JasperExportManager.exportReportToPdfFile(print,
				"C:\\\\Users\\\\fjd2320\\\\Downloads\\\\Vaadin-Application-Sales-master\\\\src\\\\main\\\\resources\\\\Relatorios\\RelatorioVendas.pdf");

	}
staroski

Qual o erro que está apresentando?
Porque na hora de exportar você está separando os caminhos com \\\\ ao invés de \\?

R

mano, desculpa tomar teu tempo…o B.O eram essas \\…tudo certo agora…desculpa ai e muito aobrigado @staroski

R

@staroski na verdade agora eu tenho outro problema

o pdf foi gerado…mas ele está em branco…não há erros de compilação ou execução

veja o arquivo pdf aberto:

o que vc acha que pode ser?

código:

package br.com.fjsistemas.relatorios;

import net.sf.jasperreports.engine.JRDataSource;
import net.sf.jasperreports.engine.JREmptyDataSource;
import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JasperCompileManager;
import net.sf.jasperreports.engine.JasperExportManager;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.engine.JasperReport;

public class PDF {
	
	public void generatePdfButton() throws JRException {

		JasperReport document = JasperCompileManager.compileReport(
				"C:\\Users\\fjd2320\\eclipse-workspace\\fjsistemas\\src\\main\\resources\\META-INF\\resources\\RelatorioVendas.jrxml");

		JRDataSource jrDataSource = new JREmptyDataSource();

		JasperPrint print = JasperFillManager.fillReport(document, null, jrDataSource);

		JasperExportManager.exportReportToPdfFile(print,
				"C:\\Users\\fjd2320\\eclipse-workspace\\fjsistemas\\src\\main\\resources\\META-INF\\resources\\RelatorioVendas.pdf");

	}

}
R

@staroski abri um novo post, para deixar este fechado

Criado 9 de janeiro de 2021
Ultima resposta 16 de jun. de 2021
Respostas 45
Participantes 8