O que é o formato de ficheiro JASPER?
Um arquivo .jasper é um modelo de relatório JasperReports compilado - o artefato binário produzido quando o mecanismo JasperReports compila um arquivo de design de relatório .jrxml. A relação espelha a compilação Java: .jrxml é o código-fonte, .jasper é a saída compilada, análogo a um arquivo .class compilado a partir de um fonte .java.
Tecnicamente, um arquivo .jasper é um fluxo de objeto serializado Java padrão com os magic bytes AC ED 00 05, contendo um objeto net.sf.jasperreports.engine.JasperReport serializado. Este gráfico de objetos inclui bytecode de expressão Groovy ou Java compilado, estruturas de bandas de relatório, definições de estilo, declarações de parâmetros e mapeamentos de campos. Como o formato depende da serialização de objetos integrada do Java, o UID de serialização está vinculado à versão da biblioteca JasperReports - um arquivo .jasper compilado com JR 6.x pode falhar ao carregar no JR 7.x e deve ser recompilado a partir do fonte .jrxml original.
Um arquivo .jasper não pode produzir saída por conta própria. Ele requer o mecanismo JasperReports para preenchê-lo com dados e, em seguida, exportá-lo para um formato de entrega como PDF, XLSX ou HTML. Os relatórios são projetados no Jaspersoft Studio (que substituiu o iReport descontinuado em 2014) e executados no JasperReports Server ou em qualquer aplicação Java que incorpore a biblioteca JasperReports.
O JasperReports foi criado em 2001. A Jaspersoft foi adquirida pela TIBCO em 2014, e a TIBCO foi posteriormente adquirida pelo Cloud Software Group em 2022.
Segurança e proteção
RISCO: MEDIUMArquivos .jasper contêm bytecode Java compilado incorporado (classes de expressão). Um .jasper maliciosamente criado pode explorar vulnerabilidades de desserialização Java (o formato de serialização Java é historicamente propenso a ataques; veja CVE-2015-4852 e cadeias de gadgets relacionadas). Carregue apenas arquivos .jasper de fontes confiáveis em ambientes controlados. O JasperReports 6.3+ mitigou alguns riscos; mantenha a biblioteca atualizada.
Detalhes do formato
em resumoProgramas que abrem arquivos JASPER
Detalhes técnicos
especificação profunda| Tipo de formato | Fluxo de objeto serializado Java binário (modelo de relatório compilado) |
| Magic bytes | AC ED 00 05 (cabeçalho de fluxo Java Object Serialization) |
| Ordem dos bytes | Big-endian (especificação de serialização Java) |
| Codificação | Binário (formato Java ObjectOutputStream) |
| Classe serializada raiz | `net.sf.jasperreports.engine.JasperReport` |
| Tamanho típico do arquivo | 10 KB - 5 MB (depende dos recursos de sub-relatórios incorporados) |
| Formato de origem | Compilado a partir de `.jrxml` (design de relatório XML) |
| Compatibilidade de versão | UID de serialização vinculado à versão da biblioteca JasperReports; incompatibilidade de versão principal requer recompilação do `.jrxml` |
| Conteúdo incorporado | Bytecode de expressão Groovy/Java compilado, estruturas de bandas, definições de estilo, descritores de parâmetros e campos |
| Requisito de tempo de execução | Mecanismo JasperReports - preencher com JasperFillManager, exportar com JasperExportManager |
| Destinos de exportação | PDF, XLSX, HTML, DOCX, CSV, ODS e mais via JasperExportManager |
| Plataforma | Windows, Linux, macOS (qualquer plataforma JVM) |
| Lançado | 2001 (JasperReports 0.1) |
| Versão mais recente | JasperReports 7.x (2024) |
| Especificação | jasperreports.sourceforge.net |
Conversões de JASPER
Perguntas e Respostas da Comunidade
perguntado por usuáriosAinda não há perguntas - seja o primeiro a perguntar sobre arquivos JASPER.