Jump to content
We've recently updated our Privacy Statement, available here ×

lucianc

Members
  • Posts

    5,609
  • Joined

  • Last visited

  • Days Won

    3

 Content Type 

Profiles

Forum

Events

Featured Visualizations

Knowledge Base

Documentation (PDF Downloads)

Blog

Documentation (Test Area)

Documentation

Dr. Jaspersoft Webinar Series

Downloads

Everything posted by lucianc

  1. Should be fixed starting with JasperReports 6.19.0, quoting the release notes: honour the EXIF orientation information found in photos taken with mobile digital cameras and thus match the way browsers make use of this information to auto-rotate photos in HTML; You need a com.drewnoakes:metadata-extractor jar on your classpath for this to work.
  2. Please log a bug in the trackers with the details needed to reproduce the problem.
  3. We're aware that elements with Master delayed evaluation do cause some memory do be retained during the report generation. We haven't investigated your specific case to see if what we already know fully explains what you're describing, or if there's something that we're not aware of. It would be better to log an issue in the trackers with the information you provided here, we'll take a look at it when possible and see if there's anything that can be done to reduce the memory usage. Regards, Lucian
  4. A heap dump would probably help. But before uploading one, please be aware that heap dumps can contain sensitive information. If it's not easy to provide the data to run the report, we could take a look at the report .jrxml(s), maybe we'll be able to reproduce the problem with some dummy data. So attaching the report .jrxml would fine as a starting point.
  5. It would be easier to discuss this by looking at a concrete case. Do you have a self contained example to illustrate what you're describing? If so, please attach it to a tracker so that we can run it and see what exactly is the memory used for and what can be done about it. Regards, Lucian
  6. serialVersionUID = 606 means JasperReports 0.6.6, release in April 2005. You can download an iReport version released around the same time, for instance 0.5.0, from the iReport classic downloads list, and try to use it to open the .jasper file. Or you can write a simple Java class that uses the JasperReports API to convert the .jasper file to a .jrxml which you would then be able to open in Jaspersoft Studio. The code would look something like this: JasperReport report = (JasperReport) JRLoader.loadObject(new File("report.jasper")); JRXmlWriter.writeReport(report, "report.jrxml", "UTF-8");[/code]Note that in both cases you will probably need an old Java version (such as 1.4 or 5) to run iReport or JasperReports. Regards, Lucian
  7. $P{..} in queries are translated into JDBC prepared statement parameters, which use ? as placeholders in the query. You can read more about ? placeholders in the JDBC prepared statement tutorial. Regards, Lucian
  8. artifactoryonline.com has been replaced by jfrog.io, you need to change the http://jaspersoft.artifactoryonline.com/jaspersoft/third-party-ce-artifacts/ repository in your project to https://jaspersoft.jfrog.io/jaspersoft/third-party-ce-artifacts/ Regards, Lucian
  9. You need to include a jasperreports-custom-visualization jar in your application. If you use Maven see https://search.maven.org/artifact/net.sf.jasperreports/jasperreports-custom-visualization Regards, Lucian
  10. Try setting minDetailsToStartFromTop="1" and preventOrphanFooter="true" for the group. Regards, Lucian
  11. The purpose of the error UID is to link a problem experienced by a user in the UI to an exception stacktrace in the logs. It would normally work something like this: a user does something in the JasperReports Server UI, it goes wrong and the users gets a screen that reads "There was an error, UID: XYZ". The users sends the error UID to the server administrator, who searches the logs for the UID, finds the exception stack trace and (in the optimistic case) identifies the cause of the problem and fixes it. Regards, Lucian
  12. You can set a JRExportProgressMonitor in SimpleReportExportConfiguration.
  13. I assume you don't have an input control defined for the issue-status-filter parameter in the server report unit. The recommended solution is to create a multi valued input control for the parameter. The input control can be either backed by a query (something like select distinct status from ... in your case) or by a static values list (if there's a fixed set of status values). I would also recommeng using $X{IN,status,issue-status-filter} instead of manually constructing the status in (...) clause with String.join. For one, $X{IN} protects you from SQL injection. If for some reason you don't want to create an input control, your only chance is to write the parameter so it works with both single values and collections of values. Something like this: <parameter name="issue-status-filter" class="java.lang.Object" /> <parameter name="issue-status-filter-list" class="java.util.List" isForPrompting="false"> <defaultValueExpression> ($P{issue-status-filter} == null) ? null : (($P{issue-status-filter} instanceof Collection) ? new ArrayList((Collection) $P{issue-status-filter}) : Collections.singletonList($P{issue-status-filter})) </defaultValueExpression> </parameter>[/code]Then you can use issue-status-filter-list for the query. It's not pretty but I don't see any other way. Regards, Lucian
  14. Boolean chart property values should be provided as expressions. Values set using the static attribute are passed as strings (and probably converted to booleans using JavaScript rules). <hc:chartProperty name="plotOptions.pie.dataLabels.enabled"> <hc:propertyExpression>false</hc:propertyExpression> </hc:chartProperty>[/code]Regards, Lucian
  15. You'll have to extend JRViewer and add the listener to JRViewerPanel. Like this (using an anonymous class, but you can define a named class as well): new net.sf.jasperreports.swing.JRViewer(...) { @Override protected JRViewerPanel createViewerPanel() { JRViewerPanel panel = super.createViewerPanel(); panel.addHyperlinkListener(listener); return panel; } };[/code]Regards, Lucian
  16. You need to enable PDF embedding for the font that you want to use. Also, if you want to use a newer version of DejaVu, it's probably safer to change the name of the font family because Jaspersoft Studio comes with builtin DejaVu Sans/Serif font extensions, and if you add a new font extension with the same name there's a risk of confusion. So when you add the new DejaVu Sans font in Jaspersoft Studio, change the family name to something like "DejaVu Sans New" and use that font name in reports. Fwiw, I'm attaching a PDF that uses the most recent DejaVu Sans font to display U+1E9E (and U+00DF for reference).
  17. For PDF you'll need to use a font extension with a font that supports U+1E9E. The DejaVu fonts included in the jasperreports-fonts extension do not support the character, but the last version of the fonts (which can be downloaded at https://sourceforge.net/projects/dejavu/files/) do include a glyph for U+1E9E, so you can create your own font extension using the latest DejaVu fonts. You can also log a bug/enhancement request in the trackers to update the DejaVu fonts shipped in jasperreports-fonts. Regards, Lucian
  18. What you need to do is to set the net.sf.jasperreports.default.font.name property to the family name as defined in the font extension/Jaspersoft Studio (which is not necessarily the same as the name of the physical font). Regards, Lucian
  19. Set mode="Opaque" for the element. Regards, Lucian
  20. What version of JasperReports are you using?
  21. The FusionCharts version included with JasperReports Server 6.2.1 did not support Javascript/SVG Gantt charts. Upgrading to JasperReports Server 6.3.0 would resolve the problem. Regards, Lucian
×
×
  • Create New...