Web Application Development Environment

Solaris 8 does not include native support for Web protocols, instead Solaris relies on the Sun WebServer 2.1 or the iPlanet Web Server components. These two platforms include support for Java, JavaScript, Common Gateway Interface (CGI) technology, Perl, C, C++, and other scripted and compiled languages.
Windows 2000 includes Internet Information Services (IIS) 5.0. In addition to common CGI languages such as C/C++ and Perl, and the Visual Basic® software development system, IIS 5.0 also supports Active Server Pages (ASP). ASP is a server-side scripting environment that is used to create and run dynamic, interactive Web server applications. Using it, HTML pages can be combined with script commands and Microsoft Component Object Model (COM) components to create interactive Web pages or Web applications.
Windows 2000 also includes support for COM. COM allows individual components to be developed and then shared among all the applications on the machine. ASP provides the mechanism for supporting COM-based applications on the Web. The use of ASP and COM technologies decreases the development time compared to scripting, as objects can be re-used. The Distributed COM (DCOM) model expands on this by allowing individual COM components to be shared across a server farm to provide maximum scalability.
Solaris 8 includes a Java Virtual Machine (JVM) as a built-in component of the operating system’s kernel. The kernel level support also allows for the development of server-based Java applications, called servlets, allowing complex interactive applications to be deployed with two-way communication between the client’s browser and the Web server. The servlets themselves are loaded dynamically, allowing for the best use of system resources. Because of their dynamic nature, servlets can also be modified without interrupting the user application, helping to improve Web service availability.
The Solaris Java implementation also includes extensions to the Java language including JDBC, the Java interface to Open Database Connectivity (ODBC)-aware database engines. For applications not based on Java, the Sun WebServer also supports ODBC connectivity. However, the Solaris 8 platform does not include any form of native data storage. Separate applications and tools must be supplied to support data storage.
Windows 2000 includes the Microsoft Java Virtual Machine for Java support. By combining Java components, ASP and transaction server features, a Java developer can easily build enterprise-wide Java-driven Web applications. Under Solaris 8, integration between the supported languages and data sources is entirely language dependent, requiring additional libraries and code to access database systems either natively or through the use of the Open Database Connectivity (ODBC) system. Support for other database types is dependent on the scripting language used. The lack of a universally consistent data interface system means that Solaris 8 is limited to the external applications and languages supported by the system.
Windows 2000 provides native database connectivity through the ASP development environment. Using ASP you can connect to traditional ODBC resources such as Microsoft SQL Server or Oracle and through the use of the ActiveX® Data Objects (ADO) and the OLE DB system to a wide variety of non-relational sources. The OLE DB component provides access to non-relational sources such as mainframe databases, hierarchical storage systems, e-mail databases, and traditional file systems.
To further extend the features for developing Web applications, especially in the realm of e-commerce, Windows 2000 incorporates Microsoft Transaction Services (MTS) and Microsoft Message Queuing Services (MSMQ). Microsoft Transaction Services allow for Web applications to perform multiple actions on a transactional basis, ensuring data integrity by allowing all or none of the actions to complete depending if any one action should fail. This ensures that operations like database updates happen consistently and is particularly important in an unreliable network environment such as the Internet.
For distributed systems, MSMQ provides a reliable asynchronous communications method for individual machines to send and receive messages over inherently unreliable Internet connections. For e-commerce and other secure transactions, MSMQ allows public Internet servers and internal operational servers to remain separate, while still allowing transaction operations to be conducted over a secure connection.
Solaris 8 does not provide any built-in transaction or message queuing services. Although there are products available that will support each service, none of these are integrated either with each other, or the Web server and operating system. The customer, systems integrator, or consultant must perform the necessary integration of software components. A summary of the Web application features can be seen in Table 4 below.
Table 4: Internet Languages on Solaris 8 and Windows 2000
|
Language/Application Environment
|
Solaris 8
|
Windows 2000
|
C/C++
|
Y
|
Y
|
Perl
|
Y
|
Y
|
Python
|
Y
|
Y
|
Visual Basic
|
N
|
Y
|
Java
|
Y
|
Y
|
Java Servlets
|
Y
|
N
|
Server hosted Scripts
|
Y
|
Y
|
JavaScript
|
Y
|
Y
|
Active Server Pages
|
N
|
Y
|
Supports FrontPage® Extensions
|
Y
|
Y
|
Message Queuing Services
|
N
|
Y
|
Transaction Services
|
N
|
Y
|
ODBC Interface
|
Y
|
Y
|
JDBC Interface
|
Y
|
Y
|
OLE DB
|
N
|
Y
|
ActiveX Data Objects
|
N
|
Y
|
|