2

I would like to generate reports in pdf format with following scenario: people would enter information on a web site and after submitting, data would be transfered to jasper reports server and pdf would be created.

Python would be language of choice for my task.

Is this scenario plausible with current jasper reports software (open source or similar), could it be done, and what would be steps in the right direction ?

tshepang
  • 12,111
  • 21
  • 91
  • 136
user505160
  • 1,176
  • 8
  • 25
  • 44
  • A library is available for using Jasper Reports from python, it's called pyJasper. Here's the link: https://pypi.python.org/pypi/pyJasper/0.4 – Will May 28 '14 at 22:44
  • @DaveJarvis can you remember why you advised against Python? – tshepang Oct 15 '14 at 09:44
  • Architectural simplicity. Java easily integrates with Java code. Configuring an embedded Jetty Web Server to serve PDF reports is probably the simplest and most direct way to accomplish this task. Performance would likely be better, too. – Dave Jarvis Oct 15 '14 at 18:18

3 Answers3

1

Is this scenario plausible with current jasper reports software (open source or similar),

Yes.

could it be done

Yes.

and what would be steps in the right direction ?

Write a web server in Python. Your web server will allow a user to enter information on a web site and after submitting, data would be transfered to jasper reports server and pdf would be created. Your web server would provide the PDF back to the user.

You need to pick a framework, install the components, write the unit tests, write the code, debug the code and transition the code to production.

It's hard (given the question) to determine what part of this you actually need help with.

S.Lott
  • 384,516
  • 81
  • 508
  • 779
0

Write the interface for the user with the language of your choice. Then, having the data from the user, make an API request to the jasperserver's API requesting the report.

Make sure to account for the time the report may need to be generated if you want to make it synchronous.

Otherwise, the API allows you to generate a report and poll for it's completion. When it's done, just send the file to the user.

If you use the second approach, don't point the client ajax polling mechanism to the jasperserver as you might not want it to be accessible from the internet directly. You should do that in the backend of your app.

More information about the REST web services for Jasper Server here: https://community.jaspersoft.com/documentation/jasperreports-server-web-services-guide/v550/rest-web-services-overview

Good luck! :)

marram
  • 439
  • 2
  • 8
0

Use jasper reports server to publish the report and use its rest interface to produce the output. See Render HTML to PDF in Django site that shows a practical implementation of a python rest client

Community
  • 1
  • 1
andhdo
  • 945
  • 8
  • 11