jQuery in Action, 2nd edition*
The moose likes EJB and other Java EE Technologies and the fly likes Design issue : Reporting module Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Java » EJB and other Java EE Technologies
Bookmark "Design issue : Reporting module" Watch "Design issue : Reporting module" New topic
Author

Design issue : Reporting module

Nikhil Khedkar
Greenhorn

Joined: Dec 18, 2002
Posts: 3
I would like to have some suggestions on a design issue. I have a standard 3-tier architecture Java/J2EE application. The clint is a Swing application, which communicates with Business Object deployed on an App Server. BO talks with DAO for database operations. This application has a reporting module, which is designed and developed as follows right now : 1) Client submits request to BO for fetching data pertaining to a report, 2) BO in turn gets this data from DAO and return to the client, 3) client then processes this data into a report format and send it to the printer for printing.

Problems with this approach are : 1) client uses too much of memory to hold the raw data retrieved from server (around 750 MB for big reports), 2) client does quite some processing to generate report (sometimes more than 30 min).

Hence I was thinking of something like 1) client only submitting the request for report generation to BO, 2) BO fetches data from DAO, prcesses it and send it for printing, 3) once the request for printing is dispatched by BO, client getting some notification

Possible problems I could see are 1) if BO has to send the report to the printer, then the client printers need to be registered on the server, is that thing practically possible 2) increase of CPU load on server, since its doing the report procesing now, so Thin Vs Thick client

For the first problem, I could think of an alternative which is, e-mailing the report output in some electronic format (maybe PDF) to the client mailbox, once the report is generated, using JFreeReports.

Do you guys know of any standard design patterns for this kind of requirement?

Thanks,
Nikhil
 
It is sorta covered in the JavaRanch Style Guide.
 
subject: Design issue : Reporting module