Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message
Jasper Report Viewer Bundle

Jasper Report Viewer Bundle Laravel Package

mesd/jasper-report-viewer-bundle

A Symfony bundle that integrates a JasperReport viewer into your application, letting you render and display JasperReports output without building a custom viewer. Useful for projects already using JasperReports that need a simple embedded preview, though it has limited community adoption and docume...

View on GitHub
Deep Wiki
Context7

A viewer extension to the MESD/JasperReportBundle

Frequently asked questions about Jasper Report Viewer Bundle
Can I install mesd/jasper-report-viewer-bundle in Laravel 11 with Composer?
Not as a working integration. This is a Symfony bundle that expects AppKernel registration, YAML service definitions, and Twig 1 templates, and Laravel has no equivalent bundle concept. Composer may download the code, but nothing wires it into Laravel's container, routing, or views. You would have to write a ServiceProvider, port the configuration, and replace the Twig layer before it renders a single report.
Which PHP and Symfony versions does this JasperReport viewer bundle support?
It targets the Symfony 2.x era with PHP 5.5 through 7.0 syntax, and its last release was October 2015. Symfony 2 service definitions and Twig 1 APIs are incompatible with current Symfony and Laravel releases. Running it on PHP 8 is a fork-and-fix effort, not a version constraint change, so validate the underlying JasperReportBundle on PHP 8 first.
What do I need installed to render .jrxml reports with this package?
You need the MESD/JasperReportBundle dependency, a co-resident Java runtime typically reached through the PHP/Java Bridge, and your compiled .jasper or .jrxml assets provisioned on every host. That is a platform commitment rather than a simple library install. If you cannot run a JVM alongside PHP-FPM, the bundle has nothing to call.
Is mesd/jasper-report-viewer-bundle maintained and safe for production?
There is almost no community signal: zero stars, zero dependents, and no recent releases or issue triage. It also inherits an abandoned transitive dependency and an in-process PHP/Java Bridge, a well-known source of memory leaks, segfaults, and opaque failures. Compiling arbitrary .jrxml inside the web process is an unattractive attack surface with no upstream to patch it, so production use should isolate rendering outside PHP.
Is it worth forking this bundle to keep in-process report rendering?
Only if a hard constraint forces rendering inside the PHP process. A fork means stripping Symfony DI and YAML config, replacing Twig 1 templates, adding a Laravel ServiceProvider, and re-testing every rendering path on PHP 8. You also permanently own the Java bridge and JVM tuning, font configuration, and Java-side debugging. That is weeks of hardening plus ongoing maintenance for a thin controller and template layer.
How do I integrate JasperReports into a Laravel app without a Symfony bundle?
Decouple rendering from PHP entirely. Run a small Java sidecar or headless CLI that accepts a report name and parameters and returns PDF or XLS, then call it from Laravel over HTTP or from a queued job. This avoids the PHP/Java Bridge, keeps the JVM out of PHP-FPM, and lets you scale report generation independently. The viewer UI itself is the easy part and can be rebuilt in Blade quickly.
How do I export JasperReports to PDF or Excel from Laravel?
Have the report service produce the export format you need and return it as a stream or write it to storage. In Laravel, wrap that call in a controller response for small reports or a queued job for large ones, then serve the file with a signed URL. Keep the format as a parameter so you do not fork rendering code per output type.
How do I stop large JasperReports renders from timing out in Laravel?
Move rendering off the request cycle. Dispatch a queued job that calls the report service, write the output to object storage, and notify the user or stream the file when it is ready. This removes web-request timeout coupling and lets you retry failed renders without blocking users. Synchronous rendering of large reports inside a web request is a design smell regardless of which bundle you use.
What are the alternatives to the PHP/Java Bridge for JasperReports?
Prefer a headless Java CLI or a small HTTP service that wraps the JasperReports library, or the JasperReports Server REST API if you already own a license or endpoint. Both keep report compilation and the JVM out of the PHP process. If JasperReports is not a hard requirement, evaluate native PHP or JavaScript reporting tools instead of taking on a Java dependency.
How do I test JasperReports rendering in a Laravel application?
Test the seam rather than the Java internals. Use Http::fake to stub the report service responses, assert that report names and parameters are mapped correctly, and check that generated files are stored and served as expected. Keep a small integration suite against a real rendered fixture for end-to-end confidence without depending on the bundle's Twig layer.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
jinas/dhivatar
store-doc/laravel-storage-driver
plus-it/laravel-translation-manager
diephp/perhaps
diephp/telegraph
osmaviation/spreadsheet
microsoft/fluentui-system-icons
mmccook/php-json-canonicalization-scheme
middlewares/firewall
qubiqx/montapacking
nyoncode/laravel-package-console
pnscripts/filament-broadquill-lite
pnscripts/laravel-sentfold-lite
vleap/mx-sdk-laravel-internal
twidpay/utils
htetmyathlaing/scout-elasticsearch-driver
artisan-toolbox/front-awesome
ls/client-assistant
users-au/laravel-client
cgv/localized-resource