matthias
matthias

Reputation: 2062

how to store a birt report in database

I just created a birt report (.rptdesign). I thought I would save this design in my database. The application would retriebe the design and could generate a report. Moreover I would be able to modify the design without redeploying my application.

However when it comes to localization I saw that the .properties files are not embedded but referenced in the design.

I wonder if it is possible / a good idea to store the design in a database? And how would I resolve the inclusion of the properties files? Maybe zipping all files into one?

Upvotes: 2

Views: 338

Answers (1)

hvb
hvb

Reputation: 2668

You can load your report from the file system like this:

IReportRunnable design = null;
engine.getConfig().setResourcePath(reportDir + File.separator + "res");
design = engine.openReportDesign(designFilename);

If your database is Oracle, you could use a feature (don't know the name, however) where you can export a table in WebDAV format. Table can contain BLOBs for the rptdesign.

In Windows, you can import WebDAV to the file system.

From a client program's (like BIRT) point-of-view, the records in the table look like good old files in a file-system directory.

If that's not an option, I think you would have to patch BIRT.

Upvotes: 1

Related Questions