|
By
Shu-Feng Wei, CSY
This
was a talk in Client-Server Audio Conference held on
08-12-97. It is reproduced here for those of you who
were not able to attend. The primary goal of this material
is to share with you my evaluation result of using Web-Front
end tools to access HP3000/HP9000 databases. This talk
is a snapshot of Web front-end tools evaluation as of
08-12-97. In this dynamic technology environment, changes
occurred rapidly. So the view presented may not apply
to the same product when you read this.
The
following subjects are covered in this document:
Introduction
One
of CSY Interoperability Solution team's tasks is to
survey several third party WEB Front-End GUI tools for
accessing HP3000 databases via ODBC drivers. The Web
GUI tools evaluated here do not represent any promotional
agreement between HP and third party vendors. These
tools were selected based on input from internal people,
magazine reviews, and trade shows. The purpose was to
survey these tools and build demos for HP World. With
that purpose in mind, I did not explore these tools
in depth as would be needed in production environments.
Vendors
are hurrying to make Internet development tools as easy
to use as possible. Although sales are growing at an
astounding pace, the Web development tools, especially
on dynamic database connectivity, are not as mature
as Web developers wish they were.
Several
Web server vendors have developed an "application-server"
approach that links the Web server to a database through
non-CGI mechanisms. Today, we will discuss some of these
application-server products accessing HP3000/HP9000
databases via ODBCLink/SE ODBC driver test version 56.04.
I used an HP NetServer/100, running NT4.0 workstation,
as the WEB development environment.
Web development tools features
In
earlier days, people were impressed by a well designed
Web site using multimedia elements and having visual
appeal. Today's Web surfers expect interactive, instant,
and bi-directional access to information. We are now
looking at full Web-based applications that directly
support key business processes. This transforms Web
sites from collections of static HTML pages into strategic
applications capable of exploiting underlying data base
capabilities. These applications will include both intranet
and internet dynamic database connectivity.
Developers
select Web development tools based on their visual development
environment, database functionality and Web site management
features. However, for our Client-Server audio conference,
the database functionality will be our primary focus.
Web-database accessing model
Let's
discuss the general architecture of the Web-Database
model. We use a 3-tiers model, Web browser, Web server,
and Database Server. The Web browser is on any PC or
workstation client. The Web server includes an HTTP
server and a WEB GUI tools application server running
on NT.
The
database server has ALLBASE/SQL running on HP3000/HP9000
or IMAGE/SQL running on HP3000. The usefulness of the
Web is based on interactions between a Web server and
a Web browser. The integration of database occurs between
the Web server and Database server, and is transparent
to the browser.
When
a Web browser requests a data page from the Web server,
the Web server uses an application program to access
databases via an ODBC driver, generates an HTML-data
page on-the-fly, then passes the page to the Web browser.
The most common way to create the link between the Web
server and the database is through the Common Gateway
Interface (CGI). CGI programs can access files and database
on the Database server. A browser requests that a CGI
program be executed by the Web server. The output of
that program is then passed back to the browser. For
implementing CGI programs in the Windows environment,
Visual Basic is popular; whereas on the UNIX platform,
Perl is common.
However,
CGI has some deficiencies, such as slow performance
and lack of ability to maintain state between the server
and the browser. (CGI scripts carry the expensive overhead
of starting a process for every dynamic page request.)
Several Web server vendors have developed a faster "application-server"
approach that links the Web server to a database through
non-CGI mechanisms. Most of these application-servers
execute server-side script code embedded in the HTML
pages read by the browser. The server-side script connects
to a database, retrieves results, and dynamically generates
HTML pages. The generated HTML pages are then sent back
to the browser via the Web server.
Web front-end tools evaluation summary
I
have surveyed the following WEB front-end tools: Macromedia
Backstage 2.0, Microsoft dbWeb 1.0, Microsoft FrontPage
97, Microsoft VisInterDev 1.0a, NetObjects Fusion 2.0,
Haht Hahtsite 2.0, and VitalSoft BrioQuery 5.0.
Backstage
Features
Backstage
ships with six programs that make up a complete Web
development environment: Site management, Web page authoring,
Database connectivity. Backstage requires its application
server running in the background for the product to
run checks on links, forms, and database connectivity.
Backstage
supports Java, ActiveX, JavaScript, and VB Script. It
also allows developers to view source code.
System
Windows
95, Windows NT 3.51, 4.0 workstation & server via
32-bit ODBC driver.
WebServer
Supports
most popular ones. Website Webserver is bundled with
product.
Database
Connectivity
Backstage
works fine on tables without primary keys. I could not
get Backstage to handle the index column appropriately
via the ODBC interface call. I was not able to run queries
with primary key through table wizard.
Dbweb
Features
MS
dbWeb is a free, downloadable utility but is not supported
by MS. dbWeb is a gateway between ODBC data sources
and MS IIS. With dbWeb, you create a schema that contains
the specification for your data and the Web pages. dbWeb
then produces fully functional Web pages for retrieving
and dynamically displaying your data. It supports real-time
database queries based on a "client-pull"
model.
The
dbWeb utility has two major components: dbWeb service
and dbWeb administrator. The dbWeb service is an application
server which handles the data processing between an
ODBC data source and MS IIS. dbWeb is an ISAPI application.
The
dbWeb administrator creates HTML pages that can be displayed
with Web browsers. dbWeb uses schemas to control how
the database information is published on the Internet.
Schemas define the query and resulting HTML pages displayed
on the Web.
To
publish a database on the Internet, the Web developers
install dbWeb on an existing IIS system. Then, using
the dbWeb Administrator, they use the dbWeb Schema Wizard
to select an ODBC data source.
The
Schema Wizard provides a simple, visual interface for
selecting tables and records from the chosen data source.
Finally, the Web developer simply links the schema to
their Web site by embedding a URL link into an existing
HTML page that points at a specific schema created by
dbWeb. MS dbWeb does not support Web authoring and site
management.
System
Windows
NT 3.51, 4.0 workstation & server via 32-bit ODBC
driver.
WebServer
Windows
NT 3.51, 4.0 Workstation: Peer Web Service
Windows
NT 3.51, 4.0 Server: Internet Information Server
Database
Connectivity
dbWeb
works fine with select and update queries. However,
Drilldown Automatic Links did not work with ALLBASE/SQL.
The drilldown functionality creates a SELECT query with
literal value as column name in the select list, which
is not supported by ALLBASE/SQL.
Frontpage 97
Features
FrontPage
97 has an explorer allows user to do Site management,
and has an Editor to design HTML pages. To operate properly,
MS's IIS must be running in the background to provide
HTTP and support the Explorer's link checking feature
and database integration via IDC (Internet Database
Connector).
FrontPage
97 also supports many of the Web's latest technologies,
such as ActiveX controls, plug-ins, Java applets, scripting,
animation, and multimedia.
System
Windows
95, NT 3.51, 4.0 workstation & server via 32-bit
ODBC driver.
WebServer
Windows
95: Personal Web Server
Windows
NT 3.51, 4.0 Workstation: Peer Web Service
Windows
NT 3.51, 4.0 Server: Internet Information Server
Database
Connectivity
IDC
is an ISAPI dynamic link library (DLL) that uses ODBC
to gain access to databases. It allows you to create
pages dynamically from a database.
To
publish database information on the Web using IDC, the
developer creates an .IDC file that resides on the IIS
server. The .IDC file is a text file that specifies
an ODBC data source and login information, as well as
queries programmed in SQL to retrieve/update data. An
.HTX file is also created to act as a formatting template
for any retrieved results. The .IDC file references
the .HTX file so that the database information can be
formatted to display in an HTML page. Finally, the developers
create a Web page published on their site that passes
a reference to a specific .IDC file in order to connect
to and access the database from a Web Browser.
I
was able to successfully create a Web page to query
a database. However, doing update via forms is still
under investigation.
Visual interdev
Features
Visual
InterDev provides a complete development system for
building Web applications.
Visual
InterDev includes client- and server-side programming
tools, database connectivity tools, content editing
tools, publishing and site management abilities, and
team-based development support.
Visual
InterDev relies on the new technology from MS IIS called
Active Server Pages. An Active Server Page is where
your application logic is stored. A Web developer can
use server-side scripting languages, such as MS VB script
and JScript, to perform application processing directly
on the Web server. With Active Server Pages, a Web developer
can build dynamic Web applications with advanced state
management, server-side scripting, and server components.
MS
Visual InterDev also supports client-side scripting
languages, such as VBScript, JScript, and ActiveX controls.
System
Windows
95, NT 3.51, 4.0 workstation & server via 32-bit
ODBC driver.
WebServer
Windows
95: Personal Web Server
Windows
NT 3.51, 4.0 Workstation: Peer Web Service
Windows
NT 3.51, 4.0 Server: Internet Information Server
Database
Connectivity
MS
Visual InterDev uses powerful database development tools
with ODBC-based databases. It creates HTML database
forms with Data Form Wizard using Active Data Objects
(ADO). ADO provides flexible and scalable database connectivity
within MS Visual InterDev applications.
ADO
provides an object-based approach to data access over
the Web. ADO allows manipulation of database-defined
data types retrieved from databases and dynamically
written into Web pages. In addition, ADO provides a
rich set of properties for setting locking level, cursor
options, timeout, ... etc.
I
was able to make Visual InterDev to work properly with
this test Version of ODBCLink/SE. However, doing update
via Data Form Wizard is still under investigation.
Fusion
Features
Fusion
views site creation as an entire project rather than
page by page. Its concept is to look at the site with
a top-down view, by mapping the site and determining
style first, then constructing each page subsequently.
Fusion supports site management, HTML editor, and some
feature of database connectivity. Other key features
include Site Import, MasterBorders, AutoFrames, Assest
View, and Style View. Fusion offers a drag-and-drop
layout editor and Tool Palette for individual page construction.
It also supports ActiveX Controls, VBScript, and Java
Applet.
System
Windows
95, NT 3.51, 4.0 workstation & server via 32-bit
ODBC driver.
WebServer
Supports
most popular ones.
Database
Connectivity
Fusion
creates HTML pages, which contain database information,
at design time. Once these HTML pages are published,
they are not changed until pages are re-created. So,
Fusion does not require special HTTP server applications
to handle database connectivity and forms. Fusion works
well with static report publishing.
Hahtsite
Features
Hahtsite
is an integrated Internet Development System for building,
deploying and managing distributed business applications
on the Web. The Integrated Development Environment (IDE)
provides a visual, object-oriented environment with
the combined functionality of page authoring tools,
project and site management tools, programming languages,
and database access utilities.
Hahtsite
requires its application server running in the background
for the product to execute any associated application
logic. HahtSite enables complete access to multiple
applications and data sources. It dynamically generates
HTML pages to an HTTP server for response to any web
browser through any web server.
System
Windows
95, NT 3.51, 4.0 workstation & server via 32-bit
ODBC driver.
WebServer
Supports
most popular ones.
Database
Connectivity
Hahtsite's
database wizard provides for the visual creation of
tables and forms connected to a database. It also uses
the full VB-compatible development language and the
familiar MS VB-compatible Data Access Object (DAO) to
write code that performs custom database operations.
Hahsite supports select, insert, update, delete, and
navigational operations via forms.
However,
doing update via Form Wizard is still under investigation.
Brioquery
Features
BrioQuery
integrates ad hoc query, analysis, 3-D charts, and SmartReports
with dynamic metadata integration and a portable OLAP
engine for data warehousing.
In
order for a browser to view or manipulate the BrioQuery
report in different ways, the BrioInsight or QuickView
plug-in must be installed as the browser's extension.
System
Windows
3.1, 3.11, 95, NT 3.51 and 4.0 workstation & server,
and Mac
WebServer
Supports
most popular ones.
Database
Connectivity
BrioQuery
retrieves database information via an ODBC driver and
allows users analyze the report in different ways.
Conclusion
There
is one common issue for most of Web GUI tools that I
want to bring to your attention. Because Web interaction
is stateless, each a time user clicks a hyperlink to
access a server database via an ODBC driver, the connection
is established and stays until the application is terminated.
That
is, the number of connections accumulates. When it reaches
the maximum of 240 active concurrent transactions allowed
in ALLBASE/SQL, the user will experience a hang on the
browser. We are still looking into this issue. One possible
solution is to write code to explicitly disconnect from
the server database once the user switches from the
current data page.
As
I mentioned in the beginning of the Introduction, my
purpose was to survey these tools and build demos for
HP World. I did not explore these tools in depth as
would be needed in a production environment. My intention
is to share my results with you.
|