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

45 respostas
G

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

S

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

G

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.

L

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.

G

Vou colocar um log ali e imprimir

G

Mas ainda acho que é o caminho do relatório

R

Melhor ter certeza do que só achar

G
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
G

Alguém ?

D

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

G

Valeu

Mas da erro nestes

import java.io.InputStream;
import java.io.OutputStream;
G

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

S

Que erros?

G

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

G

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]
S

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".

G

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 ?

S

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);
S

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

G

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
G

Como descubro esta fonte ?

Mesmo erro …

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

D

Uai, usa uma fonte padrão!

S

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.

G

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
G

Estou usando todos Arial.

G

Nada funciona.

S

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

G

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

S

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
G

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.

G

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]
R
G

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.

G

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

G

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>
S

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?

S

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.

S

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");

	}
S

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