Monday, August 06, 2012

JasperReportsIntegration 2.0.0 - Beta Test

Hi guys,

I am pleased to announce the beginning of the beta test for the upcoming release 2.0.0 of the JasperReportsIntegration kit.

I welcome you all to participate in the beta test, you might even have the chance to get some extra features in or at put your wish at least on the roadmap.

This release focuses a lot on ease of use, stability and support of different application servers. But there are interesting new features as well:

Support for JasperReports 4.7.0

I have included the latest libraries from JasperReports to stay up to date with the current JasperReports release.

Included Oracle JDBC connection pool

In addition to the JNDI configuration of the data sources you can now use a plain configuration file to use the Oracle JDBC connection pool directly. It is included in the J2EE application. Thus the configuration will be identical on all J2EE servers ... and it is really easy to use :). 





Support for the major application servers

I have already tested on Jetty, Tomcat and Weblogic. Here I will need your support to test against other J2EE servers as well!

Fine grained logging and better error messages

Iam using log4j as the logging framework now with nicely written logfiles and support for different log levels. Also, everything is checked, no more null pointer exceptions, you should always get a really precise error message. 

Reports can be deployed anywhere on the server

You can manipulate the search path for the report files using an environment variable on the operating system or a setting in the application server configuration (e.g. web.xml). This way you can easily upgrade the integration kit, your reports and the configuration files will not be removed by an undeploy/redeploy of the application. 

Storing files on the application server directly

Storing files on the application server directly (just as Oracle Reports did, destype=FILE). Developers from an Oracle Reports background will like this one. You can enable this feature and provide a filename on the server on which to save a copy of the generated report. 

Directly sending output to a network printer

Also, this is a feature well known from Oracle Reports. Just specify a printer (which is locally known to the application server) and send the output directly to it. You can specify the media (size or tray), the number of copies and whether the output shall be sorted (collate).

You can call the PrinterDiagnostics page to discover the locally installed printer and their settings: 





Major upgrade of the test application

The new version will check everything that is required and give specific suggestions on how to fix it. 

If everything is setup correctly, all tests will pass. 


If anything goes wrong, you will get detailed error messages and precise instructions on how to fix it: 





Quick Start

Personally, I love this one. Especially to get the beginners started I have included the Jetty server in the download. You can start the J2EE application just by clicking on a shell script, can it get any easier?
Even for myself it is nice to have the test report up and running in two minutes :) 

The documentation can be found here. To go to the download directly, click here

I have created another forum for the beta test, so please post all questions, issues, findings here: http://www.opal-consulting.de/forums/viewforum.php?f=10 .

Hope you enjoy it :). 

Cheers, 
~Dietmar. 

14 comments:

Eduardo Mejia said...

Great job, one question it is possible deploy jasper reports against GlassFish .....???


Thanks
Eduardo

Dietmar Aust said...

Hi Eduardo,

yes, somebody has already confirmed the successful deployment against GlassFish.

If you run into problems, please post on my forum, I will assist you then .

Cheers,
Dietmar.

Eduardo Mejia said...

Dietmar.

Great Job , I deploy japerReports into a Glassfish ,no proble, running nice, deploy your intergration program , no problems it is easy and it is very documented , but in the test application , i have the next error --> It seems like the data source default is not configured properly.

The glassfish deployment , does not configure the default data source , how do this manually ...???


Thanks

Eduardo

Dietmar Aust said...

Hi Eduardo,

I need more information.

Please post this issue in the forum (https://www.opal-consulting.de/forums/)

and post the following:

- log files from the directory $OC_JASPER_CONFIG_HOME/logs

Also, what is the exact error message that you get?

Try the test in the J2EE app: http://host:port/JasperReportsIntegration

Which directory is the configuration read from? It is the file application.properties, the location is displayed on this test page.

Cheers,
Dietmar.

Sasha Splinter said...

Dietmar, I do appreciate You for Your Job! It works for me under TomCat 7.0.32 iReport Designer 5.0.0 jdk 1.709. But it's so sorry about performance (( Even a simple clear page is preparing too long time ((( I hope, may be You'll give an ideas ((

Dietmar Aust said...

Hi Sasha,

I have approved your post here to let others see it. We did take the communication here ( http://www.opal-consulting.de/forums/viewtopic.php?f=6&t=3322 ) and fixed the issue.

Cheers,
~Dietmar.

Александр Коротков said...

Hi. I have a few problems. Please help if you can. Thanks an advance!

Check 6: Is the data source "default" configured properly?
Error occured: ORA-29273: HTTP request failed ORA-06512: at "SYS.UTL_HTTP", line 1674 ORA-29268: HTTP client error 404 - Not Found ORA-06512: at "SYS.HTTPURITYPE", line 34

We couldn't make a successful connection to http://192.168.2.11:8090/JasperReportsIntegration/test?_dataSource=default.

It seems like the data source default is not configured properly.
Check 7: Does the test report return a result for the data source "default"?
Error occured: ORA-29273: HTTP request failed ORA-06512: at "SYS.UTL_HTTP", line 1674 ORA-29268: HTTP client error 404 - Not Found ORA-06512: at "SYS.HTTPURITYPE", line 34

We couldn't make a successful connection to http://192.168.2.11:8090/JasperReportsIntegration/report?_dataSource=default.

It seems like the data source default is not configured properly.

Dietmar Aust said...

Did you configure the data source?

Please do use version 2.1.0 from here: http://www.opal-consulting.de/downloads/free_tools/JasperReportsIntegration/2.1.0/

Cheers,
~Dietmar.

Александр Коротков said...

Yes. I use 2.1.0.0 version JasperReportsIntegration. And i have a few problems describes above.
i changed file JasperReportsIntegration.xml as described here
http://www.opal-consulting.de/apex/f?p=20090928:7:0::NO:7::

What else do I need to do?
Thanks an advance!

Александр Коротков said...

I got all set up! Thank you very much. Tell me how to set up direct printing of the report?

Dietmar Aust said...

Hi,

you first need to figure out the name of the printer as it is configured on the server. There is a link to see the details of all printers, you can find it on the homepage of the integration: http://:/JasperReportsIntegration

And then you use the printer via the api xlib_jasperreports.show_report or xlib_jasperreports.get_report.

The documentation is also available online: http://www.opal-consulting.de/downloads/free_tools/JasperReportsIntegration/2.1.0/Index.html

Cheers,
~Dietmar.

Anonymous said...

Is the JRI forum still active? The lost password function is not working and there is no option to create a new account.

Dietmar Aust said...

Hi anonymous,

yes, the forum is still active. I have just tried the lost password function and it seems to work ... it sent me an email with the new password, didn't reset it though.

What is your account name, perhaps I can reset the password for you?

Send me an email to dietmar.aust@opal-consulting.de .

Cheers,
~Dietmar.

Ying Lihang said...

Thanks for your great integration kit. But I encounter an issue relating to image absolute path. Hope you can help.

My report works well if calling it directly by:
http://jasper.maxapex.net:8090/JasperReportsIntegration/report?_repName=A13587/StudentPrintOutReport&_repFormat=html&_dataSource=IRE_A13587_510 . But when I call by using the following code at the process PL/SQL.
begin
xlib_jasperreports.set_report_url('http://jasper.maxapex.net:8090/JasperReportsIntegration/report');
xlib_jasperreports.show_report (p_rep_name => 'A13587/StudentPrintOutReport',
p_rep_format => 'html',
p_data_source => 'IRE_A13587_510',
p_out_filename => null,
p_rep_locale => 'zh_CN',
p_rep_encoding => 'UTF-8',
p_additional_params => 'PERSONID=' || :P3_PERSONID);

-- stop rendering of the current APEX page
apex_application.g_unrecoverable_error := true;
end;


The images are all broken. I realized the reason is that it uses the relative image path (e.g. "<img src="/JasperReportsIntegration/reports/tmp/img_0_0_0") and referring to the base apex URL (e.g. https://maxapex.net/apex/f?p=11:1:13212159434017::NO:::) instead of "http://jasper.maxapex.net:8090/JasperReportsIntegration/report" .

How can I resolve this issue?