├── .gitignore ├── CONTRIBUTING.md ├── LICENSE ├── README.md ├── composer.json ├── examples ├── .gitignore ├── CancelAck.jrxml ├── CancelAck.xml ├── contacts.json ├── example.php ├── hello_world.jrxml ├── hello_world_params.jrxml ├── jasper.PNG └── json.jrxml ├── phpunit.xml.dist └── src ├── JasperPHP ├── Facades │ └── JasperPHP.php ├── JasperPHP.php └── JasperPHPServiceProvider.php └── JasperStarter ├── README.md ├── bin ├── jasperstarter └── jasperstarter.exe ├── jdbc ├── README ├── mysql-connector-java-5.1.39-bin.jar └── postgresql-9.4-1203.jdbc4.jar └── lib ├── ant-1.7.1.jar ├── ant-launcher-1.7.1.jar ├── antlr-2.7.7.jar ├── antlr-3.0b5.jar ├── argparse4j-0.5.0.jar ├── avalon-framework-impl-4.2.0.jar ├── barbecue-1.5-beta1.jar ├── barcode4j-2.1.jar ├── batik-anim-1.9.1.jar ├── batik-awt-util-1.9.1.jar ├── batik-bridge-1.9.1.jar ├── batik-constants-1.9.1.jar ├── batik-css-1.9.1.jar ├── batik-dom-1.9.1.jar ├── batik-ext-1.9.1.jar ├── batik-gvt-1.9.1.jar ├── batik-i18n-1.9.1.jar ├── batik-parser-1.9.1.jar ├── batik-script-1.9.1.jar ├── batik-svg-dom-1.9.1.jar ├── batik-svggen-1.9.1.jar ├── batik-util-1.9.1.jar ├── batik-xml-1.9.1.jar ├── bcprov-jdk15on-1.62.jar ├── castor-core-1.4.1.jar ├── castor-xml-1.4.1.jar ├── commons-beanutils-1.9.3.jar ├── commons-cli-1.0.jar ├── commons-codec-1.10.jar ├── commons-collections-3.2.2.jar ├── commons-collections4-4.2.jar ├── commons-digester-2.1.jar ├── commons-io-2.5.jar ├── commons-lang-2.6.jar ├── commons-lang3-3.4.jar ├── commons-logging-1.1.1.jar ├── core-2.3.0.jar ├── ecj-4.4.2.jar ├── groovy-all-2.4.12.jar ├── itext-2.1.7.js7.jar ├── jackson-annotations-2.9.9.jar ├── jackson-core-2.9.9.jar ├── jackson-databind-2.9.9.jar ├── jasperreports-6.10.0.jar ├── jasperreports-chart-customizers-6.10.0.jar ├── jasperreports-chart-themes-6.10.0.jar ├── jasperreports-fonts-6.10.0.jar ├── jasperreports-functions-6.10.0.jar ├── jasperstarter.jar ├── javax.inject-1.jar ├── jaxen-1.1.6.jar ├── jaybird-full-3.0.7.jar ├── jcalendar-1.4.jar ├── jcommon-1.0.23.jar ├── jfreechart-1.0.19.jar ├── joda-time-2.9.9.jar ├── jython-2.7.0.jar ├── log4j-1.2.17.jar ├── poi-3.17.jar ├── rhino-1.7.7.2.jar ├── serializer-2.7.2.jar ├── servlet-api-2.5.jar ├── spring-beans-4.3.21.RELEASE.jar ├── spring-core-4.3.21.RELEASE.jar ├── spring-expression-4.3.21.RELEASE.jar ├── stringtemplate-3.0.jar ├── xalan-2.7.2.jar ├── xml-apis-1.3.04.jar ├── xml-apis-ext-1.3.04.jar └── xmlgraphics-commons-2.2.jar /.gitignore: -------------------------------------------------------------------------------- 1 | .idea/ -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | 2 | Keep your code clean and organized, happy code. 3 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2013 Hélder Duarte 4 | Copyright (c) 2015 Leandro Bitencourt 5 | Copyright (c) 2015 Daniel Rodrigues Lima 6 | 7 | Permission is hereby granted, free of charge, to any person obtaining a copy of 8 | this software and associated documentation files (the "Software"), to deal in 9 | the Software without restriction, including without limitation the rights to 10 | use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of 11 | the Software, and to permit persons to whom the Software is furnished to do so, 12 | subject to the following conditions: 13 | 14 | The above copyright notice and this permission notice shall be included in all 15 | copies or substantial portions of the Software. 16 | 17 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 18 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS 19 | FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR 20 | COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER 21 | IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 22 | CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 23 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # PHPJasper 2 | ##### Por favor confira a versão atualizada desta lib em: https://github.com/PHPJasper/phpjasper 3 | [](https://packagist.org/packages/copam/phpjasper) [](https://packagist.org/packages/copam/phpjasper) 4 | 5 | **Nota para servidores Linux** 6 | 7 | Não esqueça de fornecer permissão 777 para o diretório **/vendor/copam/phpjasper/src/JasperStarter/bin** e o arquivo binário **jasperstarter** 8 | 9 | ## Introdução 10 | Este pacote é a solução perfeita para compilar e processar relatórios Jasper (.jrxml & .jasper) com PHP puro ou através do Laravel Framework. 11 | 12 | ### Por quê preciso do PHPJasper? 13 | 14 | Alguma vez você precisou de um relatório complexo em PHP para seu sistema web? 15 | 16 | A maioria das soluções é complexa e você precisa escrever *HTML* + *CSS* para gerar um *PDF*, isso não faz sentido, além de ser muito trabalhoso :) 17 | 18 | Apresento para vocês **JasperReports** a melhor solução open source que existe para relatórios. 19 | 20 | ### O que eu posso fazer com isso? 21 | 22 | **Texto tirado do site JasperSoft:** 23 | 24 | > A biblioteca JasperReports é o mecanismo de geração de relatórios de código aberto mais popular do mundo. É inteiramente escrito em Java e é capaz de usar dados provenientes de qualquer tipo de fonte de dados e gerar documentos perfeitos que podem ser visualizado, impressom ou exportadom em uma variedade de formatos de documentos, incluindo HTML, PDF, Excel, OpenOffice e Word . 25 | 26 | *Exemplos do que você pode fazer:* 27 | 28 | * Faturas 29 | * Relatórios 30 | * Listas 31 | 32 | ## Requisitos 33 | 34 | * Java JDK 1.8 35 | * PHP [exec()](http://php.net/manual/function.exec.php) 36 | * [opcional] [Mysql Connector](http://dev.mysql.com/downloads/connector/j/) (se você pretende usar essa base dados) 37 | * [opcional] [PostgreSQL Connector](https://jdbc.postgresql.org/download.html) (se você pretende usar essa base dados) 38 | * [opcional] [Jaspersoft Studio](http://community.jaspersoft.com/project/jaspersoft-studio) (para criar e compilar seus relatórios) 39 | 40 | ### Notas sobre o Java 41 | 42 | Verifique se o Java está instalado executando o comando: 43 | 44 | ``` 45 | $ java -version 46 | java version "1.8.0_101" 47 | Java(TM) SE Runtime Environment (build 1.8.0_101-b13) 48 | Java HotSpot(TM) 64-Bit Server VM (build 25.101-b13, mixed mode) 49 | ``` 50 | 51 | Se você obter esse retorno: 52 | 53 | command not found: java 54 | 55 | Instale o java no: (Ubuntu/Debian) 56 | 57 | $ sudo apt-get install default-jdk 58 | 59 | Para instalar no: (centOS/Fedora) 60 | 61 | # yum install java-1.8.0-openjdk.x86_64 62 | 63 | Para o windows siga o link-> [JDK](http://www.oracle.com/technetwork/pt/java/javase/downloads/jdk8-downloads-2133151.html) e procure a versão mais apropriada para seu Sistema Operacional. 64 | 65 | Execute o novamente o comando `java -version` e verifique se a saída está ok. 66 | 67 | ## Instalação 68 | 69 | 1. Instale o [Composer](http://getcomposer.org) se você ainda não possui e então rode o comando: 70 | ``` 71 | composer require copam/phpjasper 72 | ``` 73 | Crie um arquivo 'composer.json' e escreva o seguinte código: 74 | 75 | ```javascript 76 | { 77 | "require": { 78 | "copam/phpjasper": "1.*" 79 | } 80 | } 81 | ``` 82 | 83 | Rode o comando: 84 | 85 | composer install 86 | 87 | Você acaba de instalar PHPJasper 88 | 89 | ## Exemplos 90 | 91 | ### O exemplo *Hello World*. 92 | 93 | Vá para o diretório de exemplos na raiz do repositório (`vendor/copam/phpjasper/examples`). 94 | Abra o arquivo `hello_world.jrxml` com o JasperStudio ou seu editor favorito e dê uma olhada no código. 95 | 96 | #### Compilando 97 | 98 | Primeiro precisamos compilar o arquivo com a extensão `.JRXML` em um arquivo binário do tipo `.JASPER` 99 | 100 | **Nota:** Caso você não queira usar *Jaspersoft Studio*. É possivel compilar o seu arquivo .jrxml da seguinte forma: 101 | 102 | ```php 103 | 104 | require __DIR__ . '/vendor/autoload.php'; 105 | 106 | use JasperPHP\JasperPHP; 107 | 108 | $input = __DIR__ . '/vendor/copam/phpjasper/examples/hello_world.jrxml'; 109 | 110 | $jasper = new JasperPHP; 111 | $jasper->compile($input)->execute(); 112 | ``` 113 | 114 | Esta comando compila o arquivo fonte `hello_world.jrxml` em um arquivo `hello_world.jasper` 115 | 116 | #### Processing 117 | 118 | Agora vamos processar o nosso relatório: 119 | 120 | ```php 121 | 122 | require __DIR__ . '/vendor/autoload.php'; 123 | 124 | use JasperPHP\JasperPHP; 125 | 126 | $input = __DIR__ . '/vendor/copam/phpjasper/examples/hello_world.jasper'; 127 | $output = __DIR__ . '/vendor/copam/phpjasper/examples'; 128 | 129 | $jasper = new JasperPHP; 130 | 131 | $jasper->process( 132 | $input, 133 | $output, 134 | array("pdf", "rtf") 135 | )->execute(); 136 | ``` 137 | 138 | Agora olhe a pasta examples! :) Ótimo trabalho? Você tem 2 arquivos, `hello_world.pdf` e `hello_world.rtf`. 139 | 140 | Check the *API* of the `compile` and `process` functions in the file `src/JasperPHP/JasperPHP.php` file. 141 | 142 | #### Listando parâmetros 143 | 144 | Consultando o arquivo jasper para examinar os parâmetros disponíveis no relatório: 145 | 146 | ```php 147 | 148 | require __DIR__ . '/vendor/autoload.php'; 149 | 150 | use JasperPHP\JasperPHP; 151 | 152 | $input = __DIR__ . '/vendor/copam/phpjasper/examples/hello_world_params.jrxml'; 153 | 154 | $jasper = new JasperPHP; 155 | $output = $jasper->list_parameters($input)->execute(); 156 | 157 | foreach($output as $parameter_description) 158 | print $parameter_description . '
'; 159 | ``` 160 | 161 | ### Relatórios a partir de um banco de dados 162 | 163 | Adicione os parâmetros específicos para seu banco de dados 164 | 165 | ```php 166 | 167 | require __DIR__ . '/vendor/autoload.php'; 168 | 169 | use JasperPHP\JasperPHP; 170 | 171 | $input = __DIR__ . '/vendor/copam/phpjasper/examples/hello_world.jrxml'; 172 | $output = __DIR__ . '/vendor/copam/phpjasper/examples'; 173 | 174 | $jasper = new JasperPHP; 175 | $jasper->process( 176 | $input, 177 | $output, 178 | array("pdf", "rtf"), 179 | array("php_version" => phpversion()), 180 | array( 181 | 'driver' => 'postgres', 182 | 'username' => 'vagrant', 183 | 'host' => 'localhost', 184 | 'database' => 'samples', 185 | 'port' => '5432', 186 | ), 'pt_BR' //locale 187 | )->execute(); 188 | ``` 189 | 190 | ### Usando JasperPHP com Laravel 5.* 191 | 192 | 1. Instale o [Composer](http://getcomposer.org) 193 | ``` 194 | composer require copam/phpjasper 195 | ``` 196 | Crie um arquivo 'composer.json': 197 | 198 | ```javascript 199 | { 200 | "require": { 201 | "copam/phpjasper": "1.*" 202 | } 203 | } 204 | ``` 205 | 2. Rode: 206 | 207 | **composer update** 208 | 209 | 3. Adicione o provider ao array providers em config/app.php: 210 | 211 | **JasperPHP\JasperPHPServiceProvider::class,** 212 | 213 | 4. Crie a pasta **/report** em **/public directory** 214 | 215 | 5. Copie o arquivo **hello_world.jrxml** em **/vendor/copam/phpjasper/examples** para a pasta: **/public/report** 216 | 217 | 6. Rode **php artisan serve** 218 | 219 | 7. Acesse **localhost:8000/reports** 220 | 221 | 8. Verifique a pasta **/public/report**. Você tem 3 arquivos, `hello_world.pdf`, `hello_world.rtf` e `hello_world.xml`. 222 | 223 | **Copie o código abaixo para seu arquivo route.php** 224 | 225 | ```php 226 | use JasperPHP\JasperPHP; 227 | 228 | Route::get('/reports', function () { 229 | 230 | $output = public_path() . '/report/'.time().'_hello_world'; 231 | $report = new JasperPHP; 232 | $report->process( 233 | public_path() . '/report/hello_world.jrxml', 234 | $output, 235 | array('pdf', 'rtf', 'xml'), 236 | array(), 237 | array(), 238 | 'pt_BR' //locale 239 | )->execute(); 240 | }); 241 | ``` 242 | Neste exemplo nós geramos 3 arquivos: pdf, rtf and xml. 243 | 244 | 245 | ### Relatórios a partir de um xml em PHP/Laravel 5.* 246 | 247 | Veja como é fácil gerar um relatório com uma origem de um arquivo XML 248 | 249 | ```php 250 | 251 | use JasperPHP\JasperPHP; 252 | 253 | public function xmlToPdf() 254 | { 255 | $output = public_path() . '/report/'.time().'_CancelAck'; 256 | $ext = "pdf"; 257 | $data_file = public_path() . '/report/CancelAck.xml'; 258 | $driver = 'xml'; 259 | $xml_xpath = '/CancelResponse/CancelResult/ID'; 260 | 261 | $php_jasper = new JasperPHP; 262 | 263 | $php_jasper->process( 264 | public_path() . '/report/CancelAck.jrxml', 265 | $output, 266 | array($ext), 267 | array(), 268 | array('data_file' => $data_file, 'driver' => $driver, 'xml_xpath' => $xml_xpath))->execute(); 269 | 270 | header('Content-Description: File Transfer'); 271 | header('Content-Type: application/octet-stream'); 272 | header('Content-Disposition: attachment; filename='.time().'_CancelAck.'.$ext); 273 | header('Content-Transfer-Encoding: binary'); 274 | header('Expires: 0'); 275 | header('Cache-Control: must-revalidate, post-check=0, pre-check=0'); 276 | header('Content-Length: ' . filesize($output.'.'.$ext)); 277 | flush(); 278 | readfile($output.'.'.$ext); 279 | unlink($output.'.'.$ext); 280 | } 281 | ``` 282 | **Nota:** 283 | 284 | Para usar os exemplos acima você precisa de uma cópia dos arquivos localizados em: 285 | 286 | **\vendor\copam\phpjasper\examples\CancelAck.jrxml** 287 | e 288 | **\vendor\copam\phpjasper\examples\CancelAck.xml** 289 | para a pasta: 290 | **\public\report** 291 | 292 | 293 | ### Relatórios a partir de um arquivo JSON em PHP/Laravel 5.* 294 | 295 | Veja como é fácil gerar um relatório com uma fonte de um arquivo JSON: 296 | 297 | ```php 298 | 299 | use JasperPHP\JasperPHP; 300 | 301 | public function jsonToPdf() 302 | { 303 | $output = public_path() . '/report/'.time().'_Contacts'; 304 | $ext = "pdf"; 305 | $driver = 'json'; 306 | $json_query= "contacts.person"; 307 | $data_file = public_path() . '/report/contacts.json'; 308 | 309 | $php_jasper = new JasperPHP; 310 | 311 | $php_jasper->process( 312 | public_path() . '/report/json.jrxml', 313 | $output, 314 | array($ext), 315 | array(), 316 | array('data_file' => $data_file, 'driver' => $driver, 'json_query' => $json_query))->execute(); 317 | 318 | header('Content-Description: File Transfer'); 319 | header('Content-Type: application/octet-stream'); 320 | header('Content-Disposition: attachment; filename='.time().'_Contacts.'.$ext); 321 | header('Content-Transfer-Encoding: binary'); 322 | header('Expires: 0'); 323 | header('Cache-Control: must-revalidate, post-check=0, pre-check=0'); 324 | header('Content-Length: ' . filesize($output.'.'.$ext)); 325 | flush(); 326 | readfile($output.'.'.$ext); 327 | unlink($output.'.'.$ext); 328 | } 329 | ``` 330 | **Nota:** 331 | 332 | Para usar os exemplos acima você precisa de uma cópia dos arquivos localizados em: 333 | 334 | **\vendor\copam\phpjasper\examples\json.jrxml** 335 | e 336 | **\vendor\copam\phpjasper\examples\contacts.json** 337 | para a pasta: 338 | **\public\report** 339 | 340 | 341 | ### MySQL 342 | 343 | Nós incluimos [MySQL connector](http://dev.mysql.com/downloads/connector/j/) (v5.1.39) na pasta `/src/JasperStarter/jdbc/` 344 | 345 | ### PostgreSQL 346 | 347 | Nós incluimos [PostgreSQL](https://jdbc.postgresql.org/) (v9.4-1203) na pasta`/src/JasperStarter/jdbc/` 348 | 349 | ### MSSQL 350 | 351 | [Microsoft JDBC Drivers 6.0, 4.2, 4.1, and 4.0 for SQL Server 352 | ](https://www.microsoft.com/en-us/download/details.aspx?displaylang=en&id=11774). 353 | 354 | ## Performance 355 | 356 | Varia de acordo com o tamanho do seu relatório 357 | 358 | ## Agradecimentos 359 | 360 | A [Cenote GmbH](http://www.cenote.de/) por [JasperStarter](http://jasperstarter.sourceforge.net/). 361 | 362 | A [JetBrains](https://www.jetbrains.com/) pelo [PhpStorm](https://www.jetbrains.com/phpstorm/) e todas as ótimas soluções. 363 | 364 | ## Dúvidas? 365 | 366 | Abra uma [Issue](https://github.com/copam/phpjasper/issues), ou pesquise por Issues antigas. 367 | 368 | ## Licença 369 | 370 | MIT 371 | 372 | ## Contribuição 373 | 374 | Contribua com a comunidade PHP e Laravel, fique a vontade para fazer um fork!! 375 | -------------------------------------------------------------------------------- /composer.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "copam/phpjasper", 3 | "description": "Create Reports in PHP/Laravel with JasperReports", 4 | "license": "MIT", 5 | "keywords": [ 6 | "reports", 7 | "jasper", 8 | "jasperreports", 9 | "pdf", 10 | "xml", 11 | "PHP", 12 | "java", 13 | "json" 14 | ], 15 | "homepage": "https://github.com/copam/phpjasper", 16 | "authors": [ 17 | { 18 | "name": "Leandro Bitencourt", 19 | "email": "leandrocintrabitencourt@gmail.com", 20 | "homepage": "http://www.leandrobitencourt.zz.mu", 21 | "role": "Developer" 22 | }, 23 | { 24 | "name": "Daniel Rodrigues", 25 | "email": "danielrodrigues-ti@hotmail.com", 26 | "role": "Developer" 27 | } 28 | 29 | ], 30 | "minimum-stability": "dev", 31 | "require": { 32 | "php": ">=5.4.0" 33 | }, 34 | "autoload": { 35 | "psr-0": { 36 | "JasperPHP": "src/" 37 | } 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /examples/.gitignore: -------------------------------------------------------------------------------- 1 | hello_world.jasper 2 | hello_world.pdf -------------------------------------------------------------------------------- /examples/CancelAck.jrxml: -------------------------------------------------------------------------------- 1 | 2 |3 | 218 | -------------------------------------------------------------------------------- /examples/CancelAck.xml: -------------------------------------------------------------------------------- 1 | 2 |4 | 5 | 6 | 7 | 8 | 9 | 10 |11 | 13 |12 | 14 | 16 |15 | 17 | 19 |18 | 20 | 22 |21 | 23 | 25 |24 | 26 | 28 |27 | 29 | 31 |30 | 32 | 34 |33 | 35 | 111 |36 | 110 |37 | 46 |38 | 41 |39 | 40 | 42 | 43 | 44 |45 | 47 | 53 |48 | 49 | 50 | 51 |52 | 54 | 60 |55 | 56 | 57 | 58 |59 | 61 | 67 |62 | 63 | 64 | 65 |66 | 68 | 74 |69 | 70 | 71 | 72 |73 | 75 | 81 |76 | 77 | 78 | 79 |80 | 82 | 88 |83 | 84 | 85 | 86 |87 | 89 | 95 |90 | 91 | 92 | 93 |94 | 96 | 102 |97 | 98 | 99 | 100 |101 | 103 | 109 |104 | 105 | 106 | 107 |108 | 112 | 148 |113 | 147 |114 | 115 | 116 | 131 |117 | 120 |118 | 119 | 121 | 126 |122 | 123 | 124 | 125 | 127 | 128 | 129 |130 | 132 | 146 |133 | 135 |134 | 136 | 141 |137 | 138 | 139 | 140 | 142 | 143 | 144 |145 | 149 | 184 |150 | 183 |151 | 166 |152 | 155 |153 | 154 | 156 | 161 |157 | 158 | 159 | 160 | 162 | 163 | 164 |165 | 167 | 182 |168 | 171 |169 | 170 | 172 | 177 |173 | 174 | 175 | 176 | 178 | 179 | 180 |181 | 185 | 217 |186 | 216 |187 | 194 |188 | 191 |189 | 190 | 192 | 193 | 195 | 201 |196 | 198 |197 | 199 | 200 | 202 | 208 |203 | 204 | 205 | 206 |207 | 209 | 215 |210 | 211 | 212 | 213 |214 | 3 | -------------------------------------------------------------------------------- /examples/contacts.json: -------------------------------------------------------------------------------- 1 | { 2 | "contacts": { 3 | "person": [ 4 | { 5 | "name": "ETHAN", 6 | "street": "Street 1", 7 | "city": "Fairfax", 8 | "phone": "+1 (415) 111-1111" 9 | }, 10 | { 11 | "name": "CALEB", 12 | "street": "Street 2", 13 | "city": "San Francisco", 14 | "phone": "+1 (415) 222-2222" 15 | }, 16 | { 17 | "name": "WILLIAM", 18 | "street": "Street 2", 19 | "city": "Paradise City", 20 | "phone": "+1 (415) 333-3333" 21 | } 22 | ] 23 | } 24 | } -------------------------------------------------------------------------------- /examples/example.php: -------------------------------------------------------------------------------- 1 | compile($jrxmlFile)->execute(); 15 | 16 | // processing jasper file into pdf and rtf 17 | $jasper->process( 18 | $jrxmlParamsFile, 19 | $outputPdfRtf, 20 | array("pdf", "rtf"), 21 | array( 22 | 'myString' => utf8_decode('Hello world :D ôéãìü'), 23 | 'myInt' => 10.0 , 24 | 'myDate' => date("Y-m-d"), 25 | 'myImage' => $imagePath 26 | ) 27 | )->execute(); 28 | 29 | // Listing Parameters of jasper file 30 | $jasperParameters = $jasper->list_parameters($jrxmlParamsFile)->execute(); 31 | print "4 | 10 |5 | 1361E3F3-B493-4F5C-9A2D-67C7CC151907 201 6 | 136F0E14-3C92-4506-991D-0DB2FB45E0A9 201 7 | 13741D6D-574A-458E-8112-4943929D3DFA 201 8 | 137A252B-4F8B-48CB-A5FE-219FE149CC1F 201 9 | 138665F0-3935-4880-B125-3C0D03218CA8 201 cqOD3A20ku9vHI3MGI18HkSsljYcURr6fSjyk9I+MRghG9T2/EXpiqZahCSYCBr0JwFV/rCWbP6kvdk7eYGerg== 11 |Listing Parameters of jasper file
\n"; 32 | foreach($jasperParameters as $parameter_description) { 33 | print "" . $parameter_description . "\n"; 34 | } -------------------------------------------------------------------------------- /examples/hello_world.jrxml: -------------------------------------------------------------------------------- 1 | 2 | 3 |4 | 76 | -------------------------------------------------------------------------------- /examples/hello_world_params.jrxml: -------------------------------------------------------------------------------- 1 | 2 |5 | 6 | 7 | 8 | 10 |9 | 11 | 24 |12 | 13 | 23 |14 | 15 | 21 | 22 |16 | 17 | 18 | 19 |20 | 25 | 38 |26 | 37 |27 | 29 |28 | 30 | 36 |31 | 32 | 33 | 34 |35 | 39 | 41 |40 | 42 | 52 |43 | 51 |44 | 50 |45 | 46 | 47 | 48 |49 | 53 | 55 |54 | 56 | 72 |57 | 71 |58 | 62 |59 | 60 | 61 | 63 | 66 |64 | 65 | 67 | 70 |68 | 69 | 73 | 75 |74 | 3 | 129 | -------------------------------------------------------------------------------- /examples/jasper.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/examples/jasper.PNG -------------------------------------------------------------------------------- /examples/json.jrxml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 |4 | 5 | 6 | 7 | 8 | 9 | 10 | 12 |11 | 13 | 15 |14 | 16 | 36 |17 | 18 | 35 |19 | 20 | 26 |21 | 22 | 23 | 24 |25 | 27 | 33 | 34 |28 | 29 | 30 | 31 |32 | 37 | 39 |38 | 40 | 46 |41 | 45 |42 | 44 |43 | 47 | 103 |48 | 102 |49 | 55 |50 | 51 | 52 | 53 |54 | 56 | 62 |57 | 58 | 59 | 60 |61 | 63 | 69 |64 | 65 | 66 | 67 |68 | 70 | 76 |71 | 72 | 73 | 74 |75 | 77 | 83 |78 | 79 | 80 | 81 |82 | 84 | 90 |85 | 86 | 87 | 88 |89 | 91 | 97 |92 | 93 | 94 | 95 |96 | 98 | 101 |99 | 100 | 104 | 106 |105 | 107 | 125 |108 | 124 |109 | 113 |110 | 111 | 112 | 114 | 118 |115 | 116 | 117 | 119 | 123 |120 | 121 | 122 | 126 | 128 |127 | 5 | 130 | -------------------------------------------------------------------------------- /phpunit.xml.dist: -------------------------------------------------------------------------------- 1 | 2 |6 | 7 | 8 | 9 | 10 | 11 | 12 |13 | 15 |14 | 16 | 18 |17 | 19 | 21 |20 | 22 | 24 |23 | 25 | 27 |26 | 28 | 48 |29 | 30 | 47 |31 | 32 | 38 |33 | 34 | 35 | 36 |37 | 39 | 45 | 46 |40 | 41 | 42 | 43 |44 | 49 | 51 |50 | 52 | 86 |53 | 85 |54 | 56 |55 | 57 | 63 |58 | 59 | 60 | 61 |62 | 64 | 70 |65 | 66 | 67 | 68 |69 | 71 | 77 |72 | 73 | 74 | 75 |76 | 78 | 84 |79 | 80 | 81 | 82 |83 | 87 | 106 |88 | 105 |89 | 92 |90 | 91 | 93 | 96 |94 | 95 | 97 | 100 |98 | 99 | 101 | 104 |102 | 103 | 107 | 109 |108 | 110 | 126 |111 | 125 |112 | 116 |113 | 114 | 115 | 117 | 120 |118 | 119 | 121 | 124 |122 | 123 | 127 | 129 |128 | 11 | 12 | -------------------------------------------------------------------------------- /src/JasperPHP/Facades/JasperPHP.php: -------------------------------------------------------------------------------- 1 | lang = $lang; 19 | $this->path_executable = __DIR__ . '/../JasperStarter/bin'; //Path to executable 20 | if (strtoupper(substr(PHP_OS, 0, 3)) === 'WIN') 21 | $this->windows = true; 22 | 23 | if (!$resource_dir) { 24 | $this->resource_directory = __DIR__ . '/../../../vendor/copam/jasperphp/src/JasperStarter/bin'; 25 | } else { 26 | if (!file_exists($resource_dir)) 27 | throw new \Exception('Diretório não encontrado!', 1); 28 | 29 | $this->resource_directory = $resource_dir; 30 | } 31 | 32 | } 33 | 34 | public static function __callStatic($method, $parameters) 35 | { 36 | // Create a new instance of the called class, in this case it is Post 37 | $model = get_called_class(); 38 | 39 | // Call the requested method on the newly created object 40 | return call_user_func_array(array(new $model, $method), $parameters); 41 | } 42 | 43 | public function compile($input_file, $output_file = false) 44 | { 45 | if (is_null($input_file) || empty($input_file)) 46 | throw new \Exception('Arquivo não encontrado!', 1); 47 | 48 | $command = ($this->windows) ? $this->executable : 'LANG=' . $this->lang . ' ./' . $this->executable; 49 | 50 | $command .= ' compile '; 51 | 52 | $command .= "\"$input_file\""; 53 | 54 | if ($output_file !== false) 55 | $command .= ' -o ' . "\"$output_file\""; 56 | 57 | $this->the_command = $command; 58 | 59 | return $this; 60 | } 61 | 62 | public function process($input_file, $output_file = false, $format = ['pdf'], $parameters = [], $db_connection = [], $locale = 'pt_BR') 63 | { 64 | if (is_null($input_file) || empty($input_file)) 65 | throw new \Exception('Arquivo não encontrado!', 1); 66 | 67 | if (is_array($format)) { 68 | foreach ($format as $key) { 69 | if (!in_array($key, $this->formats)) 70 | throw new \Exception('Formato inválido!', 1); 71 | } 72 | } else { 73 | if (!in_array($format, $this->formats)) 74 | throw new \Exception('Formato inválido!', 1); 75 | } 76 | 77 | $command = ($this->windows) ? $this->executable : 'LANG=' . $this->lang . ' ./' . $this->executable; 78 | 79 | $command .= ($locale) ? " --locale $locale" : ''; 80 | 81 | $command .= ' process '; 82 | 83 | $command .= "\"$input_file\""; 84 | 85 | if ($output_file !== false) { 86 | $command .= ' -o ' . "\"$output_file\""; 87 | } 88 | 89 | if (is_array($format)) { 90 | $command .= ' -f ' . join(' ', $format); 91 | } else { 92 | $command .= ' -f ' . $format; 93 | } 94 | 95 | if (count($parameters) > 0) { 96 | $command .= ' -P '; 97 | 98 | foreach ($parameters as $key => $value) { 99 | $param = $key . '="' . $value . '" '; 100 | $command .= " " . $param . " "; 101 | } 102 | 103 | } 104 | 105 | if (count($db_connection) > 0) { 106 | $command .= ' -t ' . $db_connection['driver']; 107 | 108 | if (isset($db_connection['username'])) { 109 | $command .= " -u " . $db_connection['username']; 110 | } 111 | 112 | if (isset($db_connection['password']) && !empty($db_connection['password'])) { 113 | $command .= ' -p ' . $db_connection['password']; 114 | } 115 | 116 | if (isset($db_connection['host']) && !empty($db_connection['host'])) { 117 | $command .= ' -H ' . $db_connection['host']; 118 | } 119 | 120 | if (isset($db_connection['database']) && !empty($db_connection['database'])) { 121 | $command .= ' -n ' . $db_connection['database']; 122 | } 123 | 124 | if (isset($db_connection['port']) && !empty($db_connection['port'])) { 125 | $command .= ' --db-port ' . $db_connection['port']; 126 | } 127 | 128 | if (isset($db_connection['jdbc_driver']) && !empty($db_connection['jdbc_driver'])) { 129 | $command .= ' --db-driver ' . $db_connection['jdbc_driver']; 130 | } 131 | 132 | if (isset($db_connection['jdbc_url']) && !empty($db_connection['jdbc_url'])) { 133 | $command .= ' --db-url ' . $db_connection['jdbc_url']; 134 | } 135 | 136 | if (isset($db_connection['jdbc_dir']) && !empty($db_connection['jdbc_dir'])) { 137 | $command .= ' --jdbc-dir ' . $db_connection['jdbc_dir']; 138 | } 139 | 140 | if (isset($db_connection['db_sid']) && !empty($db_connection['db_sid'])) { 141 | $command .= ' --db-sid ' . $db_connection['db_sid']; 142 | } 143 | 144 | if (isset($db_connection['xml_xpath'])) { 145 | $command .= ' --xml-xpath ' . $db_connection['xml_xpath']; 146 | } 147 | 148 | if (isset($db_connection['data_file'])) { 149 | $command .= ' --data-file ' . $db_connection['data_file']; 150 | } 151 | 152 | if (isset($db_connection['json_query'])) { 153 | $command .= ' --json-query ' . $db_connection['json_query']; 154 | } 155 | } 156 | 157 | $this->the_command = $command . ' 2>&1'; 158 | return $this; 159 | } 160 | 161 | public function list_parameters($input_file) 162 | { 163 | if (is_null($input_file) || empty($input_file)) 164 | throw new \Exception('Arquivo não encontrado!', 1); 165 | 166 | $command = ($this->windows) ? $this->executable : 'LANG=' . $this->lang . ' ./' . $this->executable; 167 | 168 | $command .= ' list_parameters '; 169 | 170 | $command .= "\"$input_file\""; 171 | 172 | $this->the_command = $command; 173 | 174 | return $this; 175 | } 176 | 177 | public function output() 178 | { 179 | return $this->the_command; 180 | } 181 | 182 | public function execute($run_as_user = false) 183 | { 184 | 185 | if ($run_as_user !== false && strlen($run_as_user > 0) && !$this->windows) { 186 | $this->the_command = 'su -u ' . $run_as_user . " -c \"" . $this->the_command . "\""; 187 | } 188 | 189 | $output = []; 190 | $return_var = 0; 191 | 192 | if (is_dir($this->path_executable)) { 193 | chdir($this->path_executable); 194 | exec($this->the_command, $output, $return_var); 195 | } else { 196 | throw new \Exception('Diretório inválido.', 1); 197 | } 198 | 199 | if ($return_var != 0) 200 | throw new \Exception("{$output[0]}", 1); 201 | 202 | return $output; 203 | } 204 | } -------------------------------------------------------------------------------- /src/JasperPHP/JasperPHPServiceProvider.php: -------------------------------------------------------------------------------- 1 | app['jasperphp'] = $this->app->share(function () { 21 | return new JasperPHP; 22 | }); 23 | 24 | 25 | /** 26 | * Register the alias. 27 | */ 28 | $this->app->booting(function () { 29 | $loader = \Illuminate\Foundation\AliasLoader::getInstance(); 30 | $loader->alias('JasperPHP', 'JasperPHP\Facades\JasperPHP'); 31 | }); 32 | 33 | } 34 | 35 | } 36 | -------------------------------------------------------------------------------- /src/JasperStarter/README.md: -------------------------------------------------------------------------------- 1 | 2 | JasperStarter - Running JasperReports from command line 3 | -------------------------------------------------------- 4 | 5 | JasperStarter is an opensource command line launcher and batch compiler for 6 | [JasperReports][]. 7 | 8 | The official homepage is [jasperstater.cenote.de][]. 9 | 10 | It has the following features: 11 | 12 | * Run any JasperReport that needs a jdbc, csv, xml, json or empty datasource 13 | * Use with any database for which a jdbc driver is available 14 | * Run reports with subreports 15 | * Execute reports that need runtime parameters. Any parameter whose class has 16 | a string constructor is accepted. Additionally the following types are 17 | supported or have special handlers: 18 | * date, image (see usage), locale 19 | * Optionally prompt for report parameters 20 | * Print directly to system default or given printer 21 | * Optionally show printer dialog to choose printer 22 | * Optionally show printpreview 23 | * Export to file in the following formats: 24 | * pdf, rtf, xls, xlsMeta, xlsx, docx, odt, ods, pptx, csv, csvMeta, html, xhtml, xml, jrprint 25 | * Export multiple formats in one commanding call 26 | * Compile, print and export in one commanding call 27 | * View, print or export previously filled reports (use jrprint file as input) 28 | * Can compile a whole directory of .jrxml files. 29 | * Integrate in non Java applications (for example PHP, Python) 30 | * Binary executable on Windows 31 | * Includes JasperReports so this is the only tool you need to install 32 | 33 | Requirements: 34 | 35 | * Java 1.6 or higher 36 | * A JDBC 2.1 driver for your database 37 | 38 | 39 | ### Quickstart 40 | 41 | * Download JasperStarter from [Sourceforge][]. 42 | * Extract the distribution archive to any directory on your system. 43 | * Add the _./bin_ directory of your installation to your searchpath (on 44 | Windows: invoke setup.exe). 45 | * Put your jdbc drivers in the _./jdbc_ directory of your installation or 46 | use _\--jdbc-dir_ to point to a different directory. 47 | 48 | Invoke JasperStarter with _\-h_ to get an overview: 49 | 50 | $ jasperstarter -h 51 | 52 | Invoke JasperStarter with _process \-h_ to get help on the process command: 53 | 54 | $ jasperstarter process -h 55 | 56 | Example with reportparameters: 57 | 58 | $ jasperstarter pr report.jasper -t mysql -u myuser -f pdf -H myhost \ 59 | -n mydb -o report -p secret -P CustomerNo=10 StartFrom=2012-10-01 60 | 61 | Example with hsql using database type generic: 62 | 63 | $ jasperstarter pr report.jasper -t generic -f pdf -o report -u sa \ 64 | --db-driver org.hsqldb.jdbcDriver \ 65 | --db-url jdbc:hsqldb:hsql://localhost 66 | 67 | For more information take a look in the docs directory of the distibution 68 | archive or read the [Usage][] page online. 69 | 70 | 71 | ### Release Notes 72 | 73 | See [Changes] for a history of changes. 74 | 75 | 76 | #### Known Bugs 77 | 78 | For upcoming issues see [Issues][] 79 | 80 | 81 | ### Feedback 82 | 83 | Feedback is always welcome! If you have any questions or proposals, don't 84 | hesitate to write to our [discussion][] forum. 85 | If you found a bug or you are missing a feature, log into our [Issuetracker][] 86 | and create a bug or feature request. 87 | 88 | If you like the software you can write a [review][] :-) 89 | 90 | 91 | ### Developement 92 | 93 | The sourcecode is available at [bitbucket.org/cenote/jasperstarter][], the 94 | project website is hosted at [Sourceforge][]. 95 | 96 | JasperStarter is build with [Maven][]. 97 | 98 | Unfortunately one dependency (jasperreports-functions) is not provided 99 | in a public maven repository so you must add it to your local maven 100 | repo: 101 | 102 | # Download jasperreports-functions-6.1.0.jar from 103 | # https://sourceforge.net/projects/jasperreports/files/jasperreports/ 104 | $ jar xvf jasperreports-functions-6.1.0.jar META-INF/maven/net.sf.jasperreports/jasperreports-functions/pom.xml 105 | $ mvn install:install-file -Dfile=jasperreports-functions-6.1.0.jar -DpomFile=META-INF/maven/net.sf.jasperreports/jasperreports-functions/pom.xml 106 | 107 | See https://maven.apache.org/guides/mini/guide-3rd-party-jars-local.html 108 | 109 | It is possible to compile JasperStarter without this dependency but users 110 | will run into errors if they use specific functions in their reports. 111 | So there is a test that fails if jasperreports-functions is not available. 112 | 113 | On Linux 64 bit the launch4j-maven-plugin may fail. You need the folloing libs in a 32 bit version: 114 | 115 | * z1 116 | * ncurses5 117 | * bz2-1.0 118 | 119 | On Ubuntu 14.04 for example use this command: 120 | 121 | $ sudo apt-get install lib32z1 lib32ncurses5 lib32bz2-1.0 122 | 123 | 124 | To get a distribution package run: 125 | 126 | $ mvn package -P release 127 | 128 | or if you build from the current default branch you better use: 129 | 130 | $ mvn package -P release,snapshot 131 | 132 | **Attention! You cannot execute** `target/jasperstarter.jar` 133 | **without having it\'s dependencies in** `../lib` ! See **dev** profile below! 134 | 135 | If you want to build the Windows setup.exe, you need to have _nsis_ in your 136 | search path (works on linux too, you can find a compiled release in the 137 | sourceforge download folder _build-tools_ for your convenience) 138 | an add the **windows-setup** profile to your build: 139 | 140 | $ mvn package -P release,windows-setup 141 | 142 | or 143 | 144 | $ mvn package -P release,windows-setup,snapshot 145 | 146 | While developing you may want to have a quicker build. The **dev** profile 147 | excludes some long running reports and the compressed archives. Instead it puts 148 | the build result into _target/jasperstarter-dev-bin_. 149 | 150 | $ mvn package -P dev 151 | 152 | Now you can execute JasperStarter without IDE: 153 | 154 | $ target/jasperstarter-dev-bin/bin/jasperstarter 155 | 156 | or 157 | 158 | $ java -jar target/jasperstarter-dev-bin/lib/jasperstarter.jar 159 | 160 | During development you might want not to be annoyed by tests. So the following 161 | options are useful: 162 | 163 | $ mvn package -P dev -D skipTests 164 | 165 | or 166 | 167 | $ mvn package -P dev -D maven.test.failure.ignore=true 168 | 169 | To run JasperStarter from within your IDE add _\--jdbc-dir jdbc_ to the argument 170 | list of your run configuration. Otherwise you will get an error: 171 | 172 | Error, (...)/JasperStarter/target/classes/jdbc is not a directory! 173 | 174 | Put your jdbc drivers in the _./jdbc_ directory of the project to invoke 175 | JasperStarter from within your IDE to call up a database based report. 176 | 177 | 178 | ### License 179 | 180 | Copyright 2012-2015 Cenote GmbH. 181 | 182 | Licensed under the Apache License, Version 2.0 (the "License"); 183 | you may not use this file except in compliance with the License. 184 | You may obtain a copy of the License at 185 | 186 | http://www.apache.org/licenses/LICENSE-2.0 187 | 188 | Unless required by applicable law or agreed to in writing, software 189 | distributed under the License is distributed on an "AS IS" BASIS, 190 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 191 | See the License for the specific language governing permissions and 192 | limitations under the License. 193 | 194 | [jasperstater.cenote.de]:http://jasperstarter.cenote.de/ 195 | [JasperReports]:http://community.jaspersoft.com/project/jasperreports-library 196 | [Maven]:http://maven.apache.org/ 197 | [Sourceforge]:http://sourceforge.net/projects/jasperstarter/ 198 | [bitbucket.org/cenote/jasperstarter]:http://bitbucket.org/cenote/jasperstarter 199 | [review]:http://sourceforge.net/projects/jasperstarter/reviews 200 | [discussion]:http://sourceforge.net/p/jasperstarter/discussion/ 201 | [Issuetracker]:https://cenote-issues.atlassian.net/browse/JAS 202 | [Usage]:http://jasperstarter.sourceforge.net/usage.html 203 | [Issues]:https://cenote-issues.atlassian.net/browse/JAS 204 | [Changes]:changes.html 205 | -------------------------------------------------------------------------------- /src/JasperStarter/bin/jasperstarter: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | # Copyright 2012 Cenote GmbH. 4 | # 5 | # Licensed under the Apache License, Version 2.0 (the "License"); 6 | # you may not use this file except in compliance with the License. 7 | # You may obtain a copy of the License at 8 | # 9 | # http://www.apache.org/licenses/LICENSE-2.0 10 | # 11 | # Unless required by applicable law or agreed to in writing, software 12 | # distributed under the License is distributed on an "AS IS" BASIS, 13 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | # See the License for the specific language governing permissions and 15 | # limitations under the License. 16 | 17 | ## detect home folder 18 | if(test -L "$0") then 19 | auxlink=`ls -l "$0" | sed 's/^[^>]*-> //g'` 20 | HOME_FOLDER=`dirname "$auxlink"`/.. 21 | else 22 | HOME_FOLDER=`dirname "$0"`/.. 23 | fi 24 | 25 | #SCRIPTPATH="$(dirname $0)" 26 | #java -jar "$HOME_FOLDER/lib/jasperstarter.jar" "$@" 27 | java -jar -Djava.net.preferIPv4Stack=true -Xmx1024m "$HOME_FOLDER/lib/jasperstarter.jar" "$@" -------------------------------------------------------------------------------- /src/JasperStarter/bin/jasperstarter.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/bin/jasperstarter.exe -------------------------------------------------------------------------------- /src/JasperStarter/jdbc/README: -------------------------------------------------------------------------------- 1 | This is the jdbc drivers directory. 2 | All jar files in this directory are added to the classpath. 3 | -------------------------------------------------------------------------------- /src/JasperStarter/jdbc/mysql-connector-java-5.1.39-bin.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/jdbc/mysql-connector-java-5.1.39-bin.jar -------------------------------------------------------------------------------- /src/JasperStarter/jdbc/postgresql-9.4-1203.jdbc4.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/jdbc/postgresql-9.4-1203.jdbc4.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/ant-1.7.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/ant-1.7.1.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/ant-launcher-1.7.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/ant-launcher-1.7.1.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/antlr-2.7.7.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/antlr-2.7.7.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/antlr-3.0b5.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/antlr-3.0b5.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/argparse4j-0.5.0.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/argparse4j-0.5.0.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/avalon-framework-impl-4.2.0.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/avalon-framework-impl-4.2.0.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/barbecue-1.5-beta1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/barbecue-1.5-beta1.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/barcode4j-2.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/barcode4j-2.1.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/batik-anim-1.9.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/batik-anim-1.9.1.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/batik-awt-util-1.9.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/batik-awt-util-1.9.1.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/batik-bridge-1.9.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/batik-bridge-1.9.1.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/batik-constants-1.9.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/batik-constants-1.9.1.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/batik-css-1.9.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/batik-css-1.9.1.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/batik-dom-1.9.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/batik-dom-1.9.1.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/batik-ext-1.9.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/batik-ext-1.9.1.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/batik-gvt-1.9.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/batik-gvt-1.9.1.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/batik-i18n-1.9.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/batik-i18n-1.9.1.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/batik-parser-1.9.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/batik-parser-1.9.1.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/batik-script-1.9.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/batik-script-1.9.1.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/batik-svg-dom-1.9.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/batik-svg-dom-1.9.1.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/batik-svggen-1.9.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/batik-svggen-1.9.1.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/batik-util-1.9.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/batik-util-1.9.1.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/batik-xml-1.9.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/batik-xml-1.9.1.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/bcprov-jdk15on-1.62.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/bcprov-jdk15on-1.62.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/castor-core-1.4.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/castor-core-1.4.1.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/castor-xml-1.4.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/castor-xml-1.4.1.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/commons-beanutils-1.9.3.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/commons-beanutils-1.9.3.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/commons-cli-1.0.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/commons-cli-1.0.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/commons-codec-1.10.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/commons-codec-1.10.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/commons-collections-3.2.2.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/commons-collections-3.2.2.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/commons-collections4-4.2.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/commons-collections4-4.2.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/commons-digester-2.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/commons-digester-2.1.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/commons-io-2.5.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/commons-io-2.5.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/commons-lang-2.6.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/commons-lang-2.6.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/commons-lang3-3.4.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/commons-lang3-3.4.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/commons-logging-1.1.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/commons-logging-1.1.1.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/core-2.3.0.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/core-2.3.0.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/ecj-4.4.2.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/ecj-4.4.2.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/groovy-all-2.4.12.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/groovy-all-2.4.12.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/itext-2.1.7.js7.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/itext-2.1.7.js7.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/jackson-annotations-2.9.9.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/jackson-annotations-2.9.9.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/jackson-core-2.9.9.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/jackson-core-2.9.9.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/jackson-databind-2.9.9.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/jackson-databind-2.9.9.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/jasperreports-6.10.0.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/jasperreports-6.10.0.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/jasperreports-chart-customizers-6.10.0.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/jasperreports-chart-customizers-6.10.0.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/jasperreports-chart-themes-6.10.0.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/jasperreports-chart-themes-6.10.0.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/jasperreports-fonts-6.10.0.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/jasperreports-fonts-6.10.0.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/jasperreports-functions-6.10.0.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/jasperreports-functions-6.10.0.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/jasperstarter.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/jasperstarter.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/javax.inject-1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/javax.inject-1.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/jaxen-1.1.6.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/jaxen-1.1.6.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/jaybird-full-3.0.7.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/jaybird-full-3.0.7.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/jcalendar-1.4.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/jcalendar-1.4.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/jcommon-1.0.23.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/jcommon-1.0.23.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/jfreechart-1.0.19.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/jfreechart-1.0.19.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/joda-time-2.9.9.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/joda-time-2.9.9.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/jython-2.7.0.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/jython-2.7.0.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/log4j-1.2.17.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/log4j-1.2.17.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/poi-3.17.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/poi-3.17.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/rhino-1.7.7.2.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/rhino-1.7.7.2.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/serializer-2.7.2.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/serializer-2.7.2.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/servlet-api-2.5.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/servlet-api-2.5.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/spring-beans-4.3.21.RELEASE.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/spring-beans-4.3.21.RELEASE.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/spring-core-4.3.21.RELEASE.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/spring-core-4.3.21.RELEASE.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/spring-expression-4.3.21.RELEASE.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/spring-expression-4.3.21.RELEASE.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/stringtemplate-3.0.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/stringtemplate-3.0.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/xalan-2.7.2.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/xalan-2.7.2.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/xml-apis-1.3.04.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/xml-apis-1.3.04.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/xml-apis-ext-1.3.04.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/xml-apis-ext-1.3.04.jar -------------------------------------------------------------------------------- /src/JasperStarter/lib/xmlgraphics-commons-2.2.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/copam/phpjasper/37b67803e1185c3744b35763bfc911c9eebfeb23/src/JasperStarter/lib/xmlgraphics-commons-2.2.jar --------------------------------------------------------------------------------13 | 18 | 19 |14 | 17 |src/JasperPHP 15 |src/JasperStarter 16 |20 | 24 |21 | 23 |tests 22 |