The DynamicJasper team is pleased to announce the DynamicJasper 3.0.0 release! DynamicJasper (DJ) is an API that hides the complexity of Jasper Reports, it helps developers to save time when designing simple/medium complexity reports generating the layout of the report elements automatically. It creates reports dynamically, defining at runtime the columns, column width (auto width), groups, variables, fonts, charts, crosstabs, sub reports (that can also be dynamic), page size and everything else that you can define at design time. DJ keeps full compatibility with Jasper Reports since it's a tool that helps create reports programmatically in a easy way (it only interferes with the creation of the report design doing the layout of the elements). You can use the classic .jrxml files as templates while the content and layout of the report elements are handled by the DJ API. Changes in this version include: New features: o StyleBuilder :: Convenient methods added for constructing o Web Export to HTML :: DynamicJasperHelper.exportToHtml(...) generates and sets up everything for a clean web html response. Fixed Bugs: o Images border were shown all the time Changes: o Subreport white space when empty :: Now removing white space when a subreport is empty o Custom Expressions :: Cleaner interface, they receive 3 maps (fields, variables and parameters). They also have now a className attribute, so many types other than String can be returned (for formatting using patterns, etc) o Conditional Styles :: Changes needed due to changes in CustomExpression. Custom implementations of ConditionStyles will need fixing and recompiling. o Group Header Style :: Now each group can define it's own header when showing column names. Removed: o Deprecated methods in builders and DynamicJasperHelper were removed. Have fun! -DynamicJasper team