This liquor and wine distributor has been a leader in the
distribution of wine and spirits to upstate New York retailers and
restaurateurs for over 75 years. With more than 500 employees, two major
distribution facilities, and over 10,000 customers in a 50,000 square mile
service area, the company has developed an integrated portal system and thin
client infrastructure for easy and searchable access to the volumes of sales,
inventory, and logistical details supporting business operations.
The company uses IBM WebSphere Portal Server to enable customers and suppliers
to place orders, check on inventory, and check and store paperwork associated
with sales, billings, and receivables. In addition, the company uses RJS
Software's WebDocs application to manage and share accounting and
administrative documents among its employees. Recently, the distributor made
the decision to extend WebDocs to support its widely dispersed customer base
and suppliers on its corporate Web site. By extending the reach of document
access to customers and suppliers, the distributor hoped to enable rapid
distribution and create a single point of storage for documentation on orders,
sales, and other paperwork.
However, WebDocs is largely a .NET server-based application
employing Web services and a user interface enabled by a self-contained look
and feel. The company worked with RJS Software to assess the feasibility and
scope of surfacing WebDocs as a Java portlet on WebSphere Portal, and to
determine whether to move forward with the project.
WebDocs Search Page.
WebDocs runs on the IBM System i platform, and includes some .NET code for
Windows and Web user interfaces, as well as for Web services. RJS Software did
not have Java and WebSphere Portal skills available in-house, so porting would
require acquiring those skills or retraining existing staff to perform the
effort. "Despite being an IBM business partner, we had not paid a lot of
attention to Java and the WebSphere platform," said Richard Schoen, founder and
CTO of RJS Software. "Because our expertise was on IBM's System i and Windows
platforms, the gap between existing skills and project requirements seemed
costly and time intensive, and we were concerned about meeting the company's
project requirements within their required time and budget constraints." Schoen
estimated the process to rewrite WebDoc's VB.NET code as a Java portlet would
take a minimum nine months to complete and cost more than $300,000 to rewrite,
test, and maintain a new Java portlet.
There was one other alternative. Earlier, Schoen had used
Mainsoft's Grasshopper, a freely available plug-in to the Visual Studio
development environment, to cross-compile .NET code into Java bytecode and
deploy ported applications on Java-enabled platforms. In May 2006, Mainsoft
released a Portal edition, which cross-compiles .NET code directly into a JSR
168 compliant WebSphere portlet. While Schoen's development team had not yet
attempted a WebSphere Portal deployment, the company realized that it might
represent the most realistic path to follow.
RJS Software and the company jointly developed four criteria that
would determine whether or not it would be able to surface WebDocs to the
WebSphere Portal Server. These criteria were:
Rapid implementation. The initial version of the WebSphere portlet had
to be completed in less than one month.
A consistent end-user experience. Because the company was already using
WebSphere Portal for several strategic applications, the WebDocs portlet had to
be able to easily employ the company branding and the WebSphere single sign-on
Performance and scalability. WebDocs as a WebSphere portlet had to
perform and scale on the same order as the existing .NET and iSeries
Low long-term development and maintenance costs. Perhaps most important,
the company could not expend significant resources in continued development and
maintenance of the WebDocs WebSphere portlet.
Only Mainsoft for Java EE, Portal Edition, had any chance of
enabling the company to achieve success with all of these criteria.
The distributor worked with RJS Software to port WebDocs' Visual
Basic code into a Java-based WebSphere portlet within three weeks. Developers
had to change less than one-half of one percent of the entire code base to
achieve its goals of a successful application port and consistent user
experience. Informal tests show that the ported application performed
approximately as well as its .NET counterpart. "We not only achieved a complete
port in record time, but also did so without having to become WebSphere
experts," Schoen concluded.
To complete the integration, Schoen made only minor changes at
discrete points in the source code. For example, he replaced WebDocs' sign-on
logic with WebSphere Portal Server's single sign-on capabilities with five
lines of code. He also converted the existing calls opening and accessing the
database to use JDBC rather than ADO.NET. This required changing a single call
in one line of code wherever database code was found in the application.
WebDocs Search Page running in WebSphere
Mainsoft's cross-platform software enabled the liquor and wine distributor to
meet the needs of its customers and suppliers with a Java portlet developed in
Visual Basic and cross-compiled into a JSR 168 portlet. Schoen estimated that
the use of Mainsoft for Java EE, Portal Edition, saved the company
approximately $300,000 in development, testing, and long-term maintenance
costs. And, because the development effort was accomplished within its tight
time constraints, the distributor is able to immediately incorporate it into
its business processes.