O JasperServer é uma excelente opção gratuita para desenvolver relatórios de forma profissional, rápida (na maioria das vezes) e segura. Não sei porque parece que não ganhou muitos adaptos ou os usuários não costumam falar sobre a ferramenta :). É muito difícil achar algum material sobre Jasper/iReports. Então vou dando minhas trumbicadas diárias e postando aqui as soluções que encontro e/ou invento.
Hoje precisei publicar um repositório do JasperServer em um servidor de desenvolvimento. Já vi por ai que muita gente dizendo que faz o backup/export usando o dump do banco do jasper server. Não me pareceu uma opção muito segura e resolvi procurar uma outra forma de fazer e dai lembrei do js-export e js-import que usei para migrar do jasperserver 3.1 para o 3.5 (Upgrade do JasperServer 3.1 para o 3.5). Esses dois scripts, como o nome já diz, exportam e importam dados do repositório do JS. Para exportar todos os dados do repositório, use o comando:
Linux:
js-export.sh --everything --output-zip js-backup.zip
Windows:
js-export.bat --everything --output-zip js-backup.zip
Onde –everything diz que tudo será exportado, –output-zip indica que o formato de saída será um arquivo compactado e js-backup.zip é o arquivo de saída.
obs.: Os scripts citados estão no diretório <JASPERSERVER_HOME>/scripts
Para exportar apenas um ou N repositórios, basta usar a opção –uris.
Linux:
js-export.sh --uris /reports/samples,/reports/cms --output-zip js-backup.zip
Windows:
js-export.bat --uris /reports/samples,/reports/cms --output-zip js-backup.zip
Para importar os dados, execute o js-import:
Linux:
js-import.sh --input-zip js-backup.zip
Windows:
js-import.bat --input-zip js-backup.zip
Se o repositório já existir, use a opção –update.
Não se desespere se aparecer um erro do tipo:
blábláblá bundles.jsexceptions_messages, locale pt_BR blábláblá
jsexception.folder.details.not.found
ou ainda:
blábláblá jsexception.uri.not.found
Fique calmo, provavelmente foi um erro de digitação no js-export. Cuidado com as “/” e com as letras maiúsculas e minúsculas. Ao informar o caminho para o repositório, coloque extamente o caminho apresentado no JasperServer.
Abraços e até o próximo post.