Ainda não tem acesso? Estude com a gente! Matricule-se
Ainda não tem acesso? Estude com a gente! Matricule-se

Solucionado (ver solução)

Estou com dúvida no curso de Relatórios em Java com JasperReports e iReport, no exercício do capítulo Gerando PDF e outras saídas na aplicação Java.

Quando uso jar file no meu projeto consigo fazer tudo direito, compilar, exportar para PDF e exibir o relatório, mas quando uso o maven e adiciono todas as dependências necessárias dar erro, vocês na poderia postar o arquivo pom.xml das dependências usadas para o ireport, tanto aplicação desktop quanto para web. Obrigado.

5 respostas

Oi Tiago, qual erro que dá?

Também coloque o seu pom.xml aqui para eu te ajudar melhor.

Abraços, Nico

Segue o 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 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>movimentacoes-web</groupId>
    <artifactId>movimentacoes-web</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <packaging>war</packaging>
    <build>
        <sourceDirectory>src</sourceDirectory>
        <plugins>
            <plugin>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.1</version>
                <configuration>
                    <source>1.6</source>
                    <target>1.6</target>
                </configuration>
            </plugin>
            <plugin>
                <artifactId>maven-war-plugin</artifactId>
                <version>2.3</version>
                <configuration>
                    <warSourceDirectory>WebContent</warSourceDirectory>
                    <failOnMissingWebXml>false</failOnMissingWebXml>
                </configuration>
            </plugin>
        </plugins>
    </build>
    <dependencies>
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.28</version>
        </dependency>
        <!-- JasperReports - para criar relatórios -->

        <dependency>
            <groupId>commons-beanutils</groupId>
            <artifactId>commons-beanutils</artifactId>
            <version>1.9.1</version>
        </dependency>
        <dependency>
            <groupId>commons-collections</groupId>
            <artifactId>commons-collections</artifactId>
            <version>2.1</version>
        </dependency>
        <dependency>
            <groupId>commons-digester</groupId>
            <artifactId>commons-digester</artifactId>
            <version>2.1</version>
        </dependency>
        <dependency>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
            <version>1.1.1</version>
        </dependency>
        <dependency>
            <groupId>com.lowagie</groupId>
            <artifactId>itext</artifactId>
            <version>4.2.1</version>
        </dependency>
        <dependency>
            <groupId>jfree</groupId>
            <artifactId>jcommon</artifactId>
            <version>1.0.15</version>
        </dependency>
        <dependency>
            <groupId>jfree</groupId>
            <artifactId>jfreechart</artifactId>
            <version>1.0.13</version>
        </dependency>
        <dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi</artifactId>
            <version>3.9</version>
        </dependency>
        <dependency>
            <groupId>net.sf.jasperreports</groupId>
            <artifactId>jasperreports</artifactId>
            <version>5.5.0</version>
        </dependency>
    </dependencies>
</project>

Segue o erro apresentado:

javax.servlet.ServletException: Servlet execution threw an exception

root cause

java.lang.ExceptionInInitializerError
    net.sf.jasperreports.engine.fill.JRBaseFiller.<init>(JRBaseFiller.java:121)
    net.sf.jasperreports.engine.fill.JRVerticalFiller.<init>(JRVerticalFiller.java:88)
    net.sf.jasperreports.engine.fill.JRVerticalFiller.<init>(JRVerticalFiller.java:103)
    net.sf.jasperreports.engine.fill.JRVerticalFiller.<init>(JRVerticalFiller.java:61)
    net.sf.jasperreports.engine.fill.JRFiller.createFiller(JRFiller.java:153)
    net.sf.jasperreports.engine.fill.JRFiller.fill(JRFiller.java:55)
    net.sf.jasperreports.engine.JasperFillManager.fill(JasperFillManager.java:446)
    net.sf.jasperreports.engine.JasperFillManager.fill(JasperFillManager.java:276)
    net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:745)
    br.com.caelum.relatorio.gerador.GeradorRelatorio.geraPDFParaOutputStream(GeradorRelatorio.java:29)
    br.com.caelum.relatorio.servlet.RelatorioServlet.doPost(RelatorioServlet.java:47)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:647)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:728)

root cause

net.sf.jasperreports.engine.util.JRFontNotFoundException: Font '
            net/sf/jasperreports/fonts/pictonic/pictonic.ttf
            net/sf/jasperreports/fonts/pictonic/pictonic.svg
            net/sf/jasperreports/fonts/pictonic/pictonic.eot
            net/sf/jasperreports/fonts/pictonic/pictonic.woff
        ' is not available to the JVM. See the Javadoc for more details.
    net.sf.jasperreports.engine.util.JRFontUtil.checkAwtFont(JRFontUtil.java:358)
    net.sf.jasperreports.engine.fonts.SimpleFontFace.getInstance(SimpleFontFace.java:72)
    net.sf.jasperreports.engine.fonts.SimpleFontFamily.setNormal(SimpleFontFamily.java:99)
    net.sf.jasperreports.engine.fonts.SimpleFontExtensionHelper.parseFontFamily(SimpleFontExtensionHelper.java:261)
    net.sf.jasperreports.engine.fonts.SimpleFontExtensionHelper.parseFontFamilies(SimpleFontExtensionHelper.java:232)
    net.sf.jasperreports.engine.fonts.SimpleFontExtensionHelper.loadFontFamilies(SimpleFontExtensionHelper.java:193)
    net.sf.jasperreports.engine.fonts.SimpleFontExtensionHelper.loadFontFamilies(SimpleFontExtensionHelper.java:162)
    net.sf.jasperreports.engine.fonts.FontExtensionsRegistry.getExtensions(FontExtensionsRegistry.java:56)
    net.sf.jasperreports.extensions.DefaultExtensionsRegistry.getExtensions(DefaultExtensionsRegistry.java:110)
    net.sf.jasperreports.engine.util.JRStyledTextParser.<clinit>(JRStyledTextParser.java:83)
    net.sf.jasperreports.engine.fill.JRBaseFiller.<init>(JRBaseFiller.java:121)
    net.sf.jasperreports.engine.fill.JRVerticalFiller.<init>(JRVerticalFiller.java:88)
    net.sf.jasperreports.engine.fill.JRVerticalFiller.<init>(JRVerticalFiller.java:103)
    net.sf.jasperreports.engine.fill.JRVerticalFiller.<init>(JRVerticalFiller.java:61)
    net.sf.jasperreports.engine.fill.JRFiller.createFiller(JRFiller.java:153)
    net.sf.jasperreports.engine.fill.JRFiller.fill(JRFiller.java:55)
    net.sf.jasperreports.engine.JasperFillManager.fill(JasperFillManager.java:446)
    net.sf.jasperreports.engine.JasperFillManager.fill(JasperFillManager.java:276)
    net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:745)
    br.com.caelum.relatorio.gerador.GeradorRelatorio.geraPDFParaOutputStream(GeradorRelatorio.java:29)
    br.com.caelum.relatorio.servlet.RelatorioServlet.doPost(RelatorioServlet.java:47)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:647)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
solução

Oi Tiago,

Parece ser um bug do jasper, tem com colocar a verão 5.2.0 mo pom.xml e tentar novamente?

abraços

Coloquei a versão 5.2.0 e deu certo. Isso eu fiz no projeto movimentações que eu tinha convertido em um projeto maven.

Oi Tiago e Nico Estou a resolver um problema criar um certificado no Jasper, tenho dificulidade a Negritar o texto inverter a data(ano-mes-dia para dia-mes-ano).

Tentei negritar usei não deu certo.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software