asp:review
Windward Reports 3.0
Is This Report-generation Product Right for You?
By Mike Riley
Windward Reports 3.0 from Windward Studios is a J2EE-based
RTF and XML merge engine that leverages the easy page layout functionality of
Microsoft Word and the flexibility of the various document-rendering libraries
available throughout the Java community, as well as Windward Studios
proprietary contributions. Report templates are created by marking areas
containing the desired output data with < wr:>
tags, with the <wr:out/> tag being the most frequently used tag for value
output. When executed against the Windward Reports server, these tags are
populated with the appropriate values from the SQL or XML data source. The
merged report can be output into HTML, PDF, RTF, or TXT format. In addition to
the literal field names and XML tag identifiers, the < wr:>
tag can also contain conditional statements and iterative loops (<wr:forEach>,
etc.), as well as JDBC-accessible SQL and XPath statements, extending the
capability of the <wr:> tag beyond placeholder identifiers. Essentially,
the product takes advantage of what help-documentation authors have known for
years: It s much easier to use the rich, yet easy to use, design features of
Microsoft Word than having to relearn how to apply these same design rules in a
foreign standalone application geared toward developers rather than end users.
Because the server engine is entirely Java-based, system
administrators unfamiliar with the paths and property file dependencies often
associated with Java configurations will need to follow the documentation
carefully. Note that the license key for the product must be manually pasted
into the WindwardReports.properties file for the product to work. Once
configured, testing the installation with the command line string java
net.windward.xmlreport.RunReport order.xml template.rtf report.htm should
generate an HTML report from the merged XML data file and RTF template. However,
it took me a few tries to finally configure all the property settings and jar
file dependencies to run the application successfully. The Windward Reports
server requires a JVM of 1.4 or higher and the Java client requires 1.3 or
higher. Once properly configured, an instance of the server can be created via java
net.windward.xmlreport.server.ReportServer with two additional, optional
parameters for the name/location of the properties file and the desired port
number on which the server should be listening (port 1707 is used as the
default).
Although the product advertises itself as a J2EE/.NET
solution, only the client is offered in the two language sets, with the .NET
client contained within the WindwardReports.dll assembly. The .NET client
requires the .NET 1.1 Framework and, unlike the Java client or server, does not
require additional libraries to be installed and configured to work with the
Windward Reports server. Because the primary purpose of the client is to
transport the data and template to the server for processing, and then receive
the resulting file output, programming a .NET client to communicate with the
Windward Reports server is straightforward, and the product ships with a single
C# demonstration on how to do this. Unfortunately, because the product is so
heavily focused on the Java language, the other 12 examples included in the
product do not have a .NET equivalent. The product s Programmer s Guide is also primarily geared toward the Java
developer, with barely a page of the 26-page guide generically expended on the
.NET client. And while the product is designed to work with Java application
servers to generate reports from a Web-based platform, no ASP.NET integration
is readily apparent, limiting its Web serving functionality to a JSP-oriented
market.
To facilitate the tagging of the RTF file within Microsoft
Word, Windward Studios has also created a separate COM-based AutoTag library. Although
compatible with Word XP, the add-in is best suited for use within Microsoft
Word 2003 or higher. This add-in not only helps with tag placement and identification,
but also is invaluable for its tag syntax validation feature. To see how the
tag (and the product in general) works in action, view the six-minute Windward
Reports Flash-enabled demonstration at http://www.windwarddownloads.net/AutoTagSummary.html.
Overall, although the product does deliver what it
advertises and makes the process of designing report templates easier than
other report-generation packages, its Java-centric nature may be inappropriate
for .NET-exclusive development and deployment environments. Additionally, many
third-party report and multi-document generation server-side components already
flourish in the .NET marketplace. As such, the product s primary draw of a
Word-centric report design surface may appeal to a limited subset of .NET shops
that are even further constrained by the necessity of running the latest
version of Microsoft Word to truly leverage the power that Windward Reports
provides. Perhaps if Windward Studios re-engineers their server into a native
.NET product with a friendly front-end property configuration utility, the
product may become more appropriate and interesting to .NET developers. Until
then, it is a product that Java-centric environments will appreciate more than
their .NET counterparts.
Mike
Riley is an
advanced computing professional specializing in emerging technologies and new
development trends. Readers may contact him at mailto:mike@mikeriley.com.
Rating:
Web
Site: http://www.windwardreports.com
Price: Single-developer version,
US$179; unlimited production edition, US$1,795.