Wizard API updated!
Tim Boudreau has released a new version of the Swing Wizard library (version 0.997) that fixes the WizardException bug reported in JavaWorld's recent Open Source Java Project profile. The article's examples have been reworked to test out the new, improved WizardException. Thanks, Tim, for this helpful fix!
Open Source Java Projects: The Wizard API

Newsletter sign-up

Sign up for our technology specific newsletters.

Enterprise Java
View all newsletters

Email Address:

A Java proxy for MS SQL Server Reporting Services

Explore the URL interface of a new contender on the enterprise reporting tool market

A Java Web application often uses a SQL Server database. SQL Server now comes bundled with a reporting tool, Reporting Services. RS has generated a lot of attention among developers since it first came on the market about a year ago. It is a full-featured reporting tool that includes a WYSIWYG report editor with scripting/programming capabilities, a delivery engine, and a powerful Web services interface. Using RS makes sense—not only from a cost perspective, but also because of the reduced development and deployment complexities compared with using a third-party vendor. This article explores such an integration scenario.

RS can be added to any SQL Server installation with no additional license fees (the current distributions of SQL Server 2000 Enterprise, Standard, or Developer Edition already include RS). RS requires that IIS (Internet Information Services) run on the server as well. The Report Developer client is a Visual Studio plug-in and installs as part of the RS client setup. The most recent version is 1.0; however, Microsoft has made available Service Pack 1 for download. Considering that the product is relatively young, it provides a complete and consistent development experience.

Note: In this article, the terms "report" and "document" are used interchangeably, assuming that RS is used for the generation of any print output.

Reporting Services overview

The solution described in this article enables numerous users to generate individual documents; that is, reports are generated exclusively on an ad-hoc basis. This article focuses specifically on ad-hoc generation and delivery of reports via HTTP streams to a Web browser; other approaches are not covered.

Our Web application issues a rendering request to RS after collecting all the necessary input for a report, either by storing control data in the database or by passing parameters. The result in the requested format subsequently appears on the user's screen.

There are two fundamentally different approaches for integrating RS with a Web application.

First, users can access the report server directly. Therefore, RS must be exposed to the external network. The application would typically link or redirect to the reports served by the RS server.

Second, RS can be wrapped by the Web application. The report server should not be directly accessible. The Web application issues requests to the RS server and streams report data back to the user.

Let's look closer at these alternatives.

RS server exposed to users

When users access the RS server directly, the application can simply link or redirect to the reports (see Figure 1). While this scenario at first looks attractive because it is simple, it often results in an undesirable implication.

Figure 1. In this configuration, users access RS directly. Click on thumbnail to view full-sized image.

RS supports only Windows Integrated Authentication (formerly called NTLM, or NT Lan Manager). By default, the RS install script configures IIS so that Integrated Authentication is the only allowed option. This means that Internet Explorer automatically authenticates using the current user's Windows credentials, while other browsers cannot achieve access. Once basic authentication is enabled, non-IE browsers will challenge a user (some features of RS do not work with non-IE browsers, though—more about browser limitations later). Whatever form of authentication is used, the user must have access to the report server, either through a domain account or a local account.

1 | 2 | 3 | 4 | 5 |  Next >

Discuss

Start a new discussion or jump into one of the threads below:

Subject Replies Last post
. Client does not support cookies, session disabled
By nedzeplin
1 10/19/07 06:28 PM
by rptan
. steps for sql server reporting service thru java
By samar
0 02/22/07 06:37 AM
by samar
. Help Req.
By MukeshAntil
1 10/05/06 09:08 AM
by ilia
. A Java proxy for MS SQL Server Reporting Services
By JavaWorldAdministrator
10 10/05/06 09:07 AM
by Anonymous
. Anybody have any luck getting the toolbar?
By
0 10/03/06 03:27 PM
by Anonymous
. Thanks (and help)
By belugabob
2 10/03/06 12:32 PM
by Anonymous
. spoofing header doesn't work
By PascalCo
1 05/12/06 07:29 AM
by Anonymous
. Dynamic report
By madrid
1 03/29/06 03:44 PM
by ilia
. Java proxy for ms sql server reporting services
By Anonymous
6 03/02/06 10:12 AM
by Anonymous
. How to get a dynamic report.
By dimboo
0 02/26/06 10:06 AM
by Anonymous
. No cookie
By Anonymous
1 02/01/05 10:30 AM
by ilia
. Images in the report are not shown
By Anonymous
1 01/20/05 10:15 AM
by ilia


Resources