# Release Notes for Enhancements and Fixes

This document describes the feature enhancements, resolved issues and any known issues for JReport in this release.

## Resolved issues

Item | Case # | Issue
--- | --- | ---
1 | 66088 | Resolved the XSS security issue when accessing a few JSP pages in JReport Sever.
2 | 66886 | Resolved the ArrayIndexOutOfBoundsException error when loading reports in JDashboard.
3 | 67331 | The parameter sessionid which is a given value in runReport.jsp can be displayed normally in the report's parameter page when calling UDS for the first time.
4 | 67331 | JReport Server now calls the database only once when loading the parameter value list for bind column parameters which are bound to UDSs and retrieve data from the database in a web main report.
5 | 67331 | The value list for the bind column parameters in a web main report will no longer be triggered when opening its linked report.
6 | 67914 | Resolved the OutOfMemory issue when SSL is turned on with JReport Server.
7 | 68120 | Resolved the jet.export.ExpException error when changing the width of an aggregation field in a page crosstab report to 0.01 and then exporting the crosstab to an Excel .xlsx file with column format.
8 | 68223 | JReport no longer requests data from the data source when user tries to view through JReport Server the web report component whose Invisible property has been set to true.
9 | 68254 | Solved the empty Excel result file problem when exporting a page banded report to Excel in JReport Server.
10 | 68255 | Resolved the duplicated table and field names issue when merging two catalogs using Catalog Doctor in JReport Designer.
11 | 68278 | JReport Designer can now create the node of hierarchy to business view normally when saving the catalog as XML.
12 | 68305 | Resolved the IllegalArgumentException error when migrating JReport Server from version 5 to 13 by using command MigrationBV52.bat.
13 | 68331 | The API function cat.getHandle(mapNames[i], CatalogAPI.COLUMN) now gets handled successfully when creating aggregations for an imported SQL using JReport Designer API.
14 | 68345 | Resolved the java.lang.NumberFormatException error when adding a filter object to a page report that is running on Internet Explorer.
15 | 68365 | Resolved the java.lang.ArrayIndexOutOfBoundsException error when scheduling a report using a bursting schema.
16 | 68365 | The security error message can pop up properly in linked page reports.
17 | 68373 | Corrected the 'Data type unmatched error' when doing format filter on the design mode of a web chart report and the field text field and the value text field of the condition are both filled with ToDate() expressions.
18 | 68390 | The word wrap function now works normally on a page crosstab report when setting properties Suppress When Empty and Suppress When No Records to true.
19 | 68395 | JReport Server no longer pops up the error page showing 'The report session has expired.' when user sets property server.session.timeout to 20 and performs continuous filters using the Filter dialog in Page Report Studio.
20 | 68422 | Solved the GenerateFormulasCodeException error when saving a catalog after JReport Designer has been upgraded to V13. 1 Update 1.
21 | 68425 | The resource permission on the Public Resource folder of JReport Server now gets enabled normally when using customized Security API.
22 | 68448 | Support exporting page reports in IE 11 browser when Page Report Studio is embedded in a page via IFrame with HTTPS (SSL) URL.
23 | 68449 | Corrected the error of a full user name in the Security > User panel of the JReport Administration page.
24 | 68550 | The filter panel now fully displays in the edit mode of a web report.
25 | 68461 | The scheduled tasks can get triggered normally when user schedules to run a few tasks at a specified time with option 'Run missed task upon server restart' checked, shuts down JReport Server before the specified time and then restarts it.
26 | 68540 | Resolved the security issue of data access race condition that caused by storing user data in Servlet member fields.
27 | 68547 | The page report formula on JReport Designer can now get correct value when calling isnull(next(@column)).
28 | 68563 | Resolved the java.lang.ArrayIndexOutOfBoundsException: 0 >= 0 error when logging onto JReport Server in an LDAP configured environment.
29 | 68596 | The new line at the bottom of the table column no longer disappears in the exported Excel workbook (.xlsx) of a page table report.
30 | 68597 | Add a blank item to the From DB Catalog drop-down list in the Input SQL Name dialog when adding a new SQL to a data source so that database and schema name defined in the URL could be applied.
31 | 68601 | The save as function can be performed normally in Page Report Studio when JReport Server is run with a JDashboard disabled license key.
32 | 68601 | The formatting changes of a page report no longer gets lost after saving it to a report folder to overwrite the report with the same name.
33 | 68608 | JReport Server now pops up with a clearer error message when someone exports a web report with invalid file name characters in the Export dialog.
34 | 68667 | Resolved the ClassCastException error when selecting Top N, specifying "other" group and using category sort in Category Options dialog of a web report.
35 | 68679 | The node icons on the legend of a page chart report now display normally.
36 | 68684 | Labels in web reports can be edited successfully now when their width extends beyond the page in JReport Server.
37 | 68688 | The field items available for the Conditional Formatting dialog in a web crosstab report are staying the same after JReport Server is upgraded to a higher version.
38 | 68696 | Solved the payment_type_name field value missing issue on Page Report Studio when Group By Transaction Type option of parameter p_GroupByTransactionType gets unchecked in the Enter Parameter Values dialog.
39 | 68726 | Solved the ClassCastException and ConcurrentModificationException errors when initializing multiple threads concurrently to call the method runReport.
40 | 68728 | Resolved the NullPointerException error when creating cached query result for several queries in JReport Designer.
41 | 68746 | The Edit Business View Security dialog appears normal when right-clicking Business View Security for a catalog and then select Edit Business View Security from the shortcut menu.
42 | 68748 | Resolved the script error when opening a report folder and its subfolders in the server resource tree in Icons or Thumbnails view.
43 | 68798 | Resolved the data type unmatched error when choosing to use a dynamic formula in a web report format filter.
44 | 68816 | Resolved the java.lang.NullPointerException error when running a page report in JReport Server with trace level logs set to TRIVIAL.
45 | 68835 | Lines in page reports are now displayed normally when viewing the reports in JReport Server.
46 | 68842 | Resolved the jave.lang.NullPointerException error when doing a drill down action in a library component running in JDashboard.
47 | 68842 | Web Report Studio now shows the field's new dynamic display name if a user modifies the dynamic display name of a field and adds the field to an existing ad hoc web report.
48 | 68863 | JReport Server now shows a loading icon when a new filter is inserted in the Filter panel of Web Report Studio.
49 | 68880 | User can now successfully insert new imported SQL files to a catalog using JReport Catalog API.
50 | 68880 | The column elements under the SQL element now get updated successfully after an SQL file is updated via JReport Catalog API.
51 | 68925 | Enhanced JReport Server performance when flex key CPU licensing is used.
52 | 68940 | Fixed the unknown exception error when linking to a report in Page Report Studio.
53 | 68964 | The summary result is displayed correctly in JReport Designer when creating a library crosstab component that uses a dynamic formula as aggregate field.
54 | 68964 | The dynamic formula which is being used as an aggregate field in a library component of a crosstab now works normally with conditional format when the library component is being viewed on JReport Designer or run in JDashboard.
55 | 68969 | Resolved the 100% CPU utilization problem when there is some typo on the keystore file name that user provides to enable SSL on JReport Server.
56 | 69054 | The page crosstab report which uses table style and has two or more repeated fields no longer is displayed with a part of the field values or additional columns when previewed in JReport Designer.
57 | 69065 | The page header panel which is set to be repeated on each page of a page report can now be displayed correctly on each sheet of the report's exported Excel result.
58 | 69078 | Updated the file welcome.jsp of JReport Server for a typo error.
59 | 69082 | The label of the field added to a web report is now displayed with its dynamic display name by default in Web Report Studio if user has configured a dynamic display name for the field.
60 | 69082 | Resolved the java.lang.reflect.InvocationTargetException error when adding parameter control to a web report in JReport Designer.
61 | 69082 | The standalone JReport Server running on Windows 7 on Internet Explorer 11 no longer gets two headers after the submission of a schedule task.
62 | 69090 | The connection name of an imported SQL file can now get changed accordingly on JReport Designer after changing the name of the same catalog's JDBC connection via Catalog Doctor.
63 | 69106 | Setting property Keep Group Together of a table group in a page report no longer results in a blank report page when running the report in Page Report Studio.
64 | 69131 | Allow users to add new categories or hierarchies to their business views in any catalog on JReport Designer.
65 | 69133 | Resolved the scrollbar and chart tooltips displaying issue when running JDashboard with multiple dashboard tabs via URL.
66 | 69160 | The Query Filter dialog in a web report no longer shows an empty value list if a user has added a filter to this query on JReport Designer and the filter condition is on parameter.
67 | 69219 | Enhanced JReport Server performance when running web reports with conditional formatting.
68 | 69219 | Resolved the NullPointerException error when opening a linked report in another linked report in Web Report Studio.
69 | 69219 | Improved JReport Server performance when opening linked reports in a web report created using user data source (UDS).
70 | 69219 | Improved JReport Server performance when running a web report created with user data source (UDS) and the cached report data in the report is expired.
71 | 69219 | Web report charts can be loaded normally in Web Report Studio which is running in Internet Explorer in case filters has been applied or removed in this report.
72 | 69219 | Proper working of undo actions when two or more sorts have been applied to a web table report in JReport Server.
73 | 69221 | The access privileges error message now pops up normally for web reports running in Google Chrome.
74 | 69249 | Resolved the java.lang.ClassCastException error when calling method catalog.delete (sqlHandle) of Catalog API instance to delete an imported SQL object from a catalog.
75 | 69273 | Dynamic formulas that are created as aggregation can now be used to create summary tables on JReport Designer plus crosstabs which use these dynamic formulas can show aggregation values normally in Web Report Studio.
76 | 69288 | The error pages in JReport Server can now be closed with the Close button.
77 | 69300 | The new line character '\r\n' added in the formula now works normally in the web table report running in Web Report Studio.
78 | 69365 | Table alias no longer gets changed in the where condition of the SQL statement when adding a table in the catalog using JReport Catalog API.
79 | 69367 | Resolved the java.lang.NullPointerException error when visiting JReport Administration page with a JReport Server running on Tomcat 8.
80 | 69411 | Resolved the NullPointerException error when running a page report on a JReport production server.
81 | 69417 | Resolved the NullPointerException error when creating a web crosstab report with the property Push Down Group Query of the JDBC connection being set to true in JReport Designer.
82 | 69461 | The last row (i.e. total/aggregation) of a page crosstab report now gets displayed properly when it shows up in the next page.
83 | 69467 | The schedule task of publishing a report to e-mail now can be submitted successfully using Internet Explorer 11.
84 | 69472 | The content of the error message in the unknown exception for Query Optimizer can be displayed normally in linked reports.
85 | 69493 | Resolved the OutOfMemory issue when sorting fields and group by fields in a page report that has a large amount of data.
86 | 69513 | The filter control of a web report no longer is exported to Excel after user sets the Export to Excel property of the web report filter control to false on JReport Designer.
87 | 69556 | Web reports with dynamic formulas running in Web Report Studio now show consistent result with the same reports in JReport Designer.
88 | 69593 | The error message now shows consistent date format with the user defined one when user enters an invalid date format in JReport User's Enter Parameter Values dialog.
89 | 69621 | The description of binded column in the page header of a page banded report now stays as it is when JReport Designer is upgraded from V12 to V13.
90 | 69650 | Enables user to insert tables to a catalog using method insert(java.lang.String dataSourceName, java.lang.String tableName, java.lang.String catalogName, java.lang.String schemaPattern, java.lang.String tablePattern, int type, java.lang.String character) when the method is simultaneously used on database catalogs and schemas.
91 | 69678 | The suppress property now works normally in a page report in which a formula with function IsNoRecord() is used to control this property.
92 | 69684 | The web report label whose width extends beyond the report page in JReport Server no longer disappears when it is no selected.
93 | 69705 | Creating web reports using the wizard that has been embedded into an IFrame is now smoother.
94 | 69708 | User can no longer run an inactive report via URL or JReport Server API.
95 | 69729 | Rebuilds the installation file of JReport Server 13.1 Update 2 to ensure its successful installation in the console interface.
96 | 69735 | Users now have no problem connecting to MongoDB 3.0 and loading tables on JReport Designer once they have a user role with the privilege of Read.
97 | 69737 | The search function can now work normally in a parameter control in Page Report Studio.
98 | 69739 | JReport Server now displays the business view tree correctly in the Group screen when creating an ad hoc page report with a business view and the first category in this business view has no sub node.
99 | 69755 | Resolved the CSS parsing javascript error in Web Report Studio by preventing business view elements' names from starting with numbers.
100 | 69769 | The parameter value's drop-down control no longer persists when user tries to enter a parameter value manually in the Enter Parameter Values dialog and press the Tab key to move onto the next parameter.
101 | 69807 | Keep the Web Report Wizard window sizable when adding a table component to a web report.
102 | 69869 | Support logarithmic scaling on the Y-axis of all chart objects running in Page Report Studio, Web Report Studio and JDashboard.
103 | 69892 | The security setting for non-admin users now works normally in JReport Server when method getFolderInPath is called in the resource manager.
104 | 69892 | Upgrading JReport Server from V11 Update 1 to V13.1 Update 2 now makes the horizontally aligned icons in Page Report Studio consistent.
105 | 69892 | Fixed the error information getting lost in the Error.log of JReport Server 13.1 Update 2.
106 | 69894 | Resolved the merged cells and extra columns in the Excel result of a page crosstab report when the report is exported to Excel with column format and the width of a certain column in the crosstab has been changed.
107 | 69938 | The web controls are now kept in right position in Page Report Studio when JReport Server is upgraded from V11 Update 1 to V13.
108 | 69941 | Resolved the access denied error when hitting OK button in a web report Save As dialog or hitting Save button in the Bind Data screen of the Web Report Wizard before the contents in both dialogs are loaded.
109 | 69958 | The Reset button in the Enter Parameter Values dialog can now function normally after JReport Server is upgraded from V11 to V13.
110 | 69997 | Solved the OutOfMemory issue caused by the heavy load on a specific JReport cluster node.
111 | 69999 | Support default display sequence of parameters in the parameter form control for cascading parameters in a web report.
112 | 70037 | The date values in a web report now get displayed correctly when the report is previewed or exported in Excel format.
113 | 70112 | Support running JReport Designer and JReport Server using Sun's Java Runtime Environment (JRE) in user's production environment.
114 | 70127 | JReport Server 10 Update 1 now works normally when running on JDK 1.8.
115 | 70141 | The filter control now works successfully for a table which locates in the page header panel of a page report.
116 | 70156 | Resolved the IndexOutOfBoundsException error when running a dashboard component with cached cube.
117 | 70237 | Resolved the NullPointerException error when passing a parameter to a linked report in Web Report Studio.
118 | 70262 | Removed the invalid object name error when adding a table to a catalog in the JDBC connection without specifying a table schema.
119 | 70312 | User now has no problem selecting a folder in the New Schedule dialog with Internet Explorer 11 when accessing JReport Server with a domain name.
120 | 70335 | Recovered the word wrap function for label texts in page crosstab reports.
121 | 70353 | Table detail rows in a library component are displayed correctly when running JDashboard against cube.
122 | 70369 | Improved JReport logging so additional errors and exceptions can be logged when issues occur.
123 | 70421 | Removes the vulnerability in JReport products with updated lib files containing serializer-2.7.2 in makewar.xml file.
124 | 70441 | Removes the java.lang.NullPointerException error when running a bursting report on JReport Server.
125 | 70451 | The version date sorting now works properly in the Download from JReport Server dialog.
126 | 70492 | The query that contains the special field "UserName" can no longer be used to create in-memory cube.
127 | 70531 | Fixed the reports hanging issue when running reports on JReport Server.
128 | 70552 | Removes the javascript error when browsing the JReport Server resource tree or selecting a folder via Internet Explorer with its compatibility version being set to 7.
129 | 70565 | Labels of the scrollbar no longer are overlapped when running a library component of a scrollbar chart on JDashboard.

## Known issues

Summary field disappears from design view when deleting table column

If a summary is inserted in the GroupFooterPanel of a table, when you delete a column from the table, or unmerge the cell of the group footer row, sometimes you may find the summary field disappears from design view, however, from the report structure tree in the Report Inspector, you can still find the object. You can reset its coordinate related properties so as to make the summary field display again.

Compiling formulas in JReport under JDK 6 or higher gets warnings

Since generic type is introduced to JDK 6 or higher version, when compiling formulas in JReport under JDK 6 or higher, you may come across warning messages as follows:

- Note: Test.java uses unchecked or unsafe operations.
- Note: Recompile with -Xlint:unchecked for details.

You may see that the situations are logged as Javac errors. However, the warning messages do not prevent Javac from creating .class files and reports can still run correctly.

In this case, you can simply ignore the messages and logged errors.

TOC Browser tree doesn't work well for reports with cached report bursting

When end user runs a report which has been defined with some cached report bursting policy in Page Report Studio, and then opens the TOC Browser, he will see all the groups of the report instead of just the ones he is supposed to view. In addition, no matter if he has access to a group, he cannot click the group name from the TOC tree to get corresponding details. JReport will further enhance the cached report bursting feature in a future release to resolve this issue.

Report data gets cut off in PDF result

When you export a report to PDF format, if the report contains a large amount of data but its page mode was specified to be continuous page mode, or its page size was set to be larger than 200 inches, you will find that in the PDF result some data of the report are cut off. This is because in one PDF page, the data displayed can be no larger than 200 inches.

Starting JReport with 64-bit JDK 1.7

To use 64-bit JDK 1.7 to start JReport on 64-bit Sun Solaris System, you need to modify the launch script JReport.sh (for JReport Designer) or JRServer.sh (for JReport Server) in `$REPORTHOME/bin` by changing the value $JAVAHOME/bin/java to $JAVAHOME/bin/amd64/java.

Deploying monitor.war (servlet.war) and jreport.war in the same domain gets exception

When integrating JReport Server and JReport Server Monitor into one application server, you need to make sure that they are deployed to different domains. JReport Server Monitor is supposed to be just an application for the administrator which doesn't need to come along with a JReport Server as the report system. So it is recommended that JReport Server Monitor be installed on a separate system or on systems for system administrators.

Limitation of going to another group on chart

When you perform the go-to action on a chart which uses a dynamic formula as its shown value, and the formula contains group information, you will get exceptions. This is a limitation in current version. We will resolve the issue in future release.

The zooming in or out of JReport browsers is not supported

All JReport browsers such as Page Report Studio, Web Report Studio, JDashboard and so on do not support being zoomed in or out by the way of scrolling the mouse while holding the Ctrl key. This may result in that the JReport UI cannot display well.

## API change

jet.formula.ParamDesc.value has been set to private now. You can use getDisplayValue(DbValue paramvalue, java.util.Locale locale) instead.

For example:

`ParamDesc desc = new ParamDesc();`

`... ...`

`desc.getDisplayValue(desc.getValue(), Locale.getDefault());`