Comparing JavaServer Pages Technology and Microsoft Active Server Pages



Similar documents
Sun StorEdge A5000 Installation Guide

Sun Management Center Change Manager Release Notes

N1 Grid Service Provisioning System 5.0 User s Guide for the Linux Plug-In

Sun Enterprise Optional Power Sequencer Installation Guide

Sun StorEdge RAID Manager Release Notes

Optimizing Solaris Resources Through Load Balancing

Upgrading the Solaris PC NetLink Software

Sun Cluster 2.2 7/00 Data Services Update: Apache Web Server

Service Level Definitions and Interactions

Solaris 10 Documentation README

Scrubbing Disks Using the Solaris Operating Environment Format Program

Solaris Bandwidth Manager

Sun StorEdge N8400 Filer Release Notes

Java Dynamic Management Architecture for Intelligent Networks

SunFDDI 6.0 on the Sun Enterprise Server

Sun Enterprise 420R Server Product Notes

Sun StorEdge T3 Dual Storage Array - Part 1

Exploring the iplanet Directory Server NIS Extensions

Service Level Agreement in the Data Center

Solaris 9 9/05 Installation Roadmap

Sun Management Center 3.6 Version 5 Add-On Software Release Notes

JumpStart : NIS and sysidcfg

Sun StorEdge Availability Suite Software Point-in-Time Copy Software Maximizing Backup Performance

HelloWorld SOAP Sample:

Managing NFS Workloads

LAN-Free Backups Using the Sun StorEdge Instant Image 3.0 Software

Sun Ultra TM. 5 and Ultra 10 Product Notes. Sun Microsystems, Inc. 901 San Antonio Road Palo Alto, CA U.S.A.

Reducing the Backup Window With Sun StorEdge Instant Image Software

Power Savings in the UltraSPARC T1 Processor

Disaster Recovery Requirements Analysis

Sun TM SNMP Management Agent Release Notes, Version 1.6

Developing a Security Policy

Sun StorEdge Enterprise Backup Software 7.2

Sun Management Center 3.5 Update 1b Release Notes

Important Note on New Product Names

Sun Management Center 3.6 Version 4 Add-On Software Release Notes

Sun Fire 6800/4810/4800/3800 Systems Software Release Notes

Rapid Recovery Techniques: Exploring the Solaris Software Registry

Sun Grid Engine Release Notes

Solaris Resource Manager

Service Level Management in the Data Center

Sun Fire 6800/4810/4800/ 3800 Systems Product Notes

Sun StorEdge Network FC Switch-8 and Switch-16 Release Notes

Sun SNMP Management Agent Release Notes, Version 1.5.5

N1 Grid Engine 6 Release Notes

The Solaris Fingerprint Database - A Security Tool for Solaris Operating Environment Files

The UltraSPARC T1 Processor - High Bandwidth For Throughput Computing

Consolidation in the Data Center

Java Management Extensions SNMP Manager API

Data Center Design Philosophy

Rapid Recovery Techniques: Auditing Custom Software Configuration

Sun Fire B10n Content Load Balancing Blade Product Notes

SCSI Sense Key Error Guide

Sun StorEdge Instant Image 3.0 and Oracle8i Database Best Practices

Start Here. Installation and Documentation Reference. Sun StorEdgeTM 6120 Array

RAID Controller PCI Card for the Sun Fire V60x and V65x Servers Release Notes

Sun Microsystems, Inc Garcia Avenue Mountain View, CA FAX

Solaris 9 Installation Roadmap

Sun Fire 6800/4810/4800/3800 Systems Firmware Release Notes

SunPCi Supporting Highly Available PC Applications with Solaris

Sun StorEdge RAID Manager 6.22 User s Guide

Sun Ray, Smart Cards, and Citrix

Brocade SilkWorm 4100 FC Switch Release Notes

Automating Centralized File Integrity Checks in the Solaris 10 Operating System

Netra Data Plane Software Suite 2.0 Update 2 Release Notes

Trust Modeling for Security Architecture Development

Sun Remote System Control (RSC) Installation Guide

Sun StorEdge SAN Foundation Release Notes

Sun 450 MHz UltraSPARC -II Module Upgrade

Sun Fire V480 Server Product Notes

Sun Fire Midframe Server Best Practices for Administration

Sun N1 Service Provisioning System User s Guide for Linux Plug-In 2.0

MIGRATION WHITEPAPER MIGRATING FROM MICROSOFT OFFICE TO OPENOFFICE.ORG OR STAROFFICE 9

Distributed Application Management using Jini Connection Technology

Sun Blade 1500 Workstation Product Notes

Sun Ray Server Software 3 Release Notes

Getting StartedWith Sun Java System Application Server 9.1 Update 2

Sun StorEdge network FC switch-8 and switch-16 Release Notes

Security and the Sun Java System Web Server

Operations Management Capabilities Model

Brocade 5300 Switch Hardware Release Notes

Brocade 300 Switch Hardware Release Notes

Sun GlassFish Enterprise Manager SNMP Monitoring 1.0 Installation and Quick Start Guide

Sun Fire V20z Server Release Notes

Netra X4200 M2 Server Site Planning Guide

Sun Blade 100 and Sun Blade 150 Workstations

Sun Cobalt Control Station. Using the LCD Console

A Strategy for Managing Performance

Platform Notes: The SunHSI/P Device Driver

Solaris Volume Manager Administration Guide

Sun Ray Connector for Windows OS, Version 2.1 Release Notes

Sun StorEdge FC-100 Long Wave Gigabit Interface Converter Guide

Transcription:

Comparing JavaServer Pages Technology and Microsoft Active Server Pages An Analysis of Functionality Sun Microsystems, Inc. 901 San Antonio Road Palo Alto, CA 94303 1 (800) 786.7638 1.512.434.1511

Copyright 1999 Sun Microsystems, Inc., 901 San Antonio Road, Palo Alto, California 94303 U.S.A. All rights reserved. This product or document is protected by copyright and distributed under licenses restricting its use, copying, distribution, and decompilation. No part of this product or document may be reproduced in any form by any means without prior written authorization of Sun and its licensors, if any. Third-party software, including font technology, is copyrighted and licensed from Sun suppliers. Parts of the product may be derived from Berkeley BSD systems, licensed from the University of California. UNIX is a registered trademark in the U.S. and other countries, exclusively licensed through X/Open Company, Ltd. Sun, Sun Microsystems, the Sun logo, Java, JavaBeans, Enterprise JavaBeans, JavaMail, Java Naming and Directory Interface, JavaServer Pages, JDBC, Solaris, and Write Once, Run Anywhere are trademarks, registered trademarks, or service marks of Sun Microsystems, Inc. in the U.S. and other countries. All SPARC trademarks are used under license and are trademarks or registered trademarks of SPARC International, Inc. in the U.S. and other countries. Products bearing SPARC trademarks are based upon an architecture developed by Sun Microsystems, Inc. The OPEN LOOK and Sun Graphical User Interface was developed by Sun Microsystems, Inc. for its users and licensees. Sun acknowledges the pioneering efforts of Xerox in researching and developing the concept of visual or graphical user interfaces for the computer industry. Sun holds a non-exclusive license from Xerox to the Xerox Graphical User Interface, which license also covers Sun s licensees who implement OPEN LOOK GUIs and otherwise comply with Sun s written license agreements. RESTRICTED RIGHTS: Use, duplication, or disclosure by the U.S. Government is subject to restrictions of FAR 52.227-14(g)(2)(6/87) and FAR 52.227-19(6/87), or DFAR 252.227-7015(b)(6/95) and DFAR 227.7202-3(a). DOCUMENTATION IS PROVIDED AS IS AND ALL EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND WARRANTIES, INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NON- INFRINGEMENT, ARE DISCLAIMED, EXCEPT TO THE EXTENT THAT SUCH DISCLAIMERS ARE HELD TO BE LEGALLY INVALID. Copyright 1999 Sun Microsystems, Inc., 901 San Antonio Road, Palo Alto, Californie 94303 Etats-Unis. Tous droits réservés. Ce produit ou document est protégé par un copyright et distribué avec des licences qui en restreignent l utilisation, la copie, la distribution, et la décompilation. Aucune partie de ce produit ou document ne peut être reproduite sous aucune forme, par quelque moyen que ce soit, sans l autorisation préalable et écrite de Sun et de ses bailleurs de licence, s il y en a. Le logiciel détenu par des tiers, et qui comprend la technologie relative aux polices de caractères, est protégé par un copyright et licencié par des fournisseurs de Sun. Des parties de ce produit pourront être dérivées des systèmes Berkeley BSD licenciés par l Université de Californie. UNIX est une marque déposée aux Etats-Unis et dans d autres pays et licenciée exclusivement par X/Open Company, Ltd. Sun, Sun Microsystems, the Sun logo, Java, JavaBeans, Enterprise JavaBeans, JavaMail, Java Naming and Directory Interface, JavaServer Pages, JDBC, Solaris, et Write Once, Run Anywhere sont des marques de fabrique ou des marques déposées, ou marques de service, de Sun Microsystems, Inc. aux Etats-Unis et dans d autres pays. Toutes les marques SPARC sont utilisées sous licence et sont des marques de fabrique ou des marques déposées de SPARC International, Inc. aux Etats-Unis et dans d autres pays. Les produits portant les marques SPARC sont basés sur une architecture développée par Sun Microsystems, Inc. L interface d utilisation graphique OPEN LOOK et Sun a été développée par Sun Microsystems, Inc. pour ses utilisateurs et licenciés. Sun reconnaît les efforts de pionniers de Xerox pour la recherche et le développement du concept des interfaces d utilisation visuelle ou graphique pour l industrie de l informatique. Sun détient une licence non exclusive de Xerox sur l interface d utilisation graphique Xerox, cette licence couvrant également les licenciés de Sun qui mettent en place l interface d utilisation graphique OPEN LOOK et qui en outre se conforment aux licences écrites de Sun. CETTE PUBLICATION EST FOURNIE EN L ETAT ET AUCUNE GARANTIE, EXPRESSE OU IMPLICITE, N EST ACCORDEE, Y COMPRIS DES GARANTIES CONCERNANT LA VALEUR MARCHANDE, L APTITUDE DE LA PUBLICATION A REPONDRE A UNE UTILISATION PARTICULIERE, OU LE FAIT QU ELLE NE SOIT PAS CONTREFAISANTE DE PRODUIT DE TIERS. CE DENI DE GARANTIE NE S APPLIQUERAIT PAS, DANS LA MESURE OU IL SERAIT TENU JURIDIQUEMENT NUL ET NON AVENU. Please Recycle

CHAPTER 1 Introduction At first glance, JavaServer Pages (JSP) and Microsoft Active Server Pages (ASP) technologies have many similarities. Both are designed to create interactive pages as part of a Web-based application. To a degree, both enable developers to separate programming logic from page design through the use of components that are called from the page itself. And both provide an alternative to creating CGI scripts that makes page development and deployment easier and faster. While JavaServer Pages technology and Microsoft Active Server Pages are similar in many ways, there are also a number of differences that exist. And these differences are just as significant as the similarities, and have far-reaching implications for the developers who use them as well as the organizations that adopt them as part of their overall Web-based architecture. 1

CHAPTER 2 JSP Technology: An Open Approach In many ways, the biggest difference between JSP and ASP technologies lies in the approach to the software design itself. JSP technology is designed to be both platform and server independent, created with input from a broader community of tool, server, and database vendors. In contrast, ASP is a Microsoft technology that relies primarily on Microsoft technologies. Platform and Server Independence JSP technology adheres to the Write Once, Run Anywhere philosophy of the Java architecture. Instead of being tied to a single platform or vendor, JSP technology can run on any Web server and is supported by a wide variety of tools from multiple vendors. Because it uses ActiveX controls for its components, ASP technology is basically restricted to Microsoft Windows-based platforms. Offered primarily as a feature of Microsoft IIS, ASP technology does not work easily on a broader range of Web servers because ActiveX objects are platform specific. Although ASP technology is available on other platforms through third-party porting products, to access components and interact with other services, the ActiveX objects must be present on the selected platform. If not present, a bridge to a platform supporting them is required. 2

Open Development Process, Open Source Sun developed JSP technology using the Java Community Process. Since 1995, Sun has used this open process to develop and revise Java technology and specifications in cooperation with the international Java community. Working with Sun in the JSP effort are authoring tool vendors (such as Macromedia), container companies (such as Apache and Netscape), end users, consultants, and others. Going forward, Sun is licensing the latest versions of JSP and Java Servlet (JSP 1.1 and Java Servlet 2.2) source code to Apache to be developed and released under the Apache development process. Apache, Sun, and a number of other companies and individuals will openly develop a robust reference implementation (RI) that is freely available to any company or individual. Additional information can be found at http://jakarta.apache.org. The JSP application programming interface (API) has undoubtedly benefited and will continue to benefit from the input of this extended community. In contrast, ASP technology is a specifically Microsoft initiative, developed in a proprietary process. ASP Technology JSP Technology Web Server Microsoft IIS or Personal Web Server Any Web server, including Apache, Netscape, and IIS Platforms Microsoft Windows 1 Most popular platforms, including the Solaris Operating Environment, Microsoft Windows, Mac OS, Linux, and other UNIX platform implementations 1. Accessing other platforms requires third-party ASP porting products. For a company selecting the components of a growing, Web-based information architecture, JSP technology provides a flexible, open choice that works with a wide variety of vendors tools and reflects industry input and collaboration. An Analysis of Functionality 3

CHAPTER 3 The Developer s Perspective Both ASP and JSP technologies let developers separate content generation from layout by accessing components from the page. ASP supports the COM model, while JSP technology provides components based on JavaBeans technology or JSP tags. As noted previously, the differences outweigh the similarities. Extensible JSP Tags The first difference apparent to any page author are the JSP tags themselves. While both ASP and JSP use a combination of tags and scripting to create dynamic Web pages, JSP technology enables developers to extend the JSP tags available. JSP developers can create custom tag libraries, so page authors can access more functionality using XML-like tags and depend less on scripting. With custom tags, developers can shield page authors from the complexities of page creation logic and extend key functions to a broader range of authors. Reusability Across Platforms Developers will also notice the focus on reusability. The JSP components (Enterprise JavaBeans, JavaBeans, or custom JSP tags) are reusable across platforms. An Enterprise JavaBean component accessing legacy databases can serve distributed systems on both UNIX and Microsoft Windows platforms. And the tag extension capability of JSP technology gives developers an easy, XML-like interface for sharing packaged functionality with page designers throughout the enterprise. 4

This component-based model speeds application development because it enables developers to: Build quick prototype applications using lightweight subcomponents, then integrate additional functionality as it becomes available Leverage work done elsewhere in the organization and encapsulate it in a JavaBean or Enterprise JavaBean component The Java Advantage JSP technology uses the Java language for scripting, while ASP pages use Microsoft VBScript or JScript. The Java language is a mature, powerful, and scalable programming language that provides many benefits over the Basic-based scripting languages. For example, the Java language provides superior performance to the interpreted VBScript or JScript languages. Because they use Java technology and are compiled into Java servlets, JSP pages provide a gateway to the entire suite of server-side Java libraries for HTTP-aware applications. The Java language makes the developer s job easier in other ways as well. For example, it helps protect against system crashes, while ASP applications on Windows NT systems are susceptible to crashing. The Java language also helps in the area of memory management by providing protection against memory leaks and hard-to-find pointer bugs that can slow application deployment. Plus, JSP provides the robust exception handling necessary for real-world applications. Easier Maintenance Applications using JSP technology are easier to maintain over time than ASP-based applications. Scripting languages are fine for small applications, but do not scale well to manage large, complex applications. Because the Java language is structured, it is easier to build and maintain large, modular applications with it. JSP technology s emphasis on components over scripting makes it easier to revise content without affecting logic, or revise logic without changing content. An Analysis of Functionality 5

The Enterprise JavaBeans architecture encapsulates the enterprise logic, such as database access, security, and transaction integrity, and isolates it from the application itself. Because JSP technology is an open, cross-platform architecture, Web servers, platforms, and other components can be easily upgraded or switched without affecting JSP-based applications. This makes JSP suitable for real-world Web applications, where constant change and growth is the norm. Reusable, Cross-Platform Components Security Against System Crashes ASP Technology No No JSP Technology JavaBeans, Enterprise JavaBeans, custom JSP tags Yes Memory Leak Protection No Yes Scripting Language VBScript, JScript Java Customizable Tags No Yes 6 Comparing JSP Technolgy and Microsoft ASP

CHAPTER 4 Scalability in the Enterprise The Java 2 Platform, Enterprise Edition (J2EE) is the Java architecture for developing multitier enterprise applications. As part of J2EE, JSP pages have access to all J2EE components, including JavaBeans and Enterprise JavaBeans components and Java servlets. JSP pages are actually compiled into servlets, so they have all of the benefits of these flexible, server-side Java applications. The J2EE platform containers manage the complexities of enterprise applications, including transaction management and resource pooling. JSP pages have access to all of the standard J2EE services, including: Java Naming and Directory Interface API JDBC API (communicating with relational databases) JavaMail (classes supporting Java-based mail and messaging applications) Java Message Service (JMS) Through J2EE, JSP pages can interact with enterprise systems in many ways. J2EE supports two CORBA-compliant technologies: Java IDL and RMI-IIOP. With Enterprise JavaBeans technology, JSP pages can access databases using high-level, object-relational mappings. Finally, because JSP technology was developed through the Java Community Process, it has wide support from tool, Web server and application server vendors. This enables users and partners take a best-of-breed approach, selecting the best tools for their specific applications while protecting their investment in code and in personnel training. Compatible with Legacy Databases ASP Technology Yes (COM) JSP Technology Yes (using JDBC API) 7

Ability to Integrate with Data Sources ASP Technology Works with any ODBC-compliant database JSP Technology Works with any ODBC- and JDBC technology-compliant database Components COM components JavaBeans, Enterprise JavaBeans, or extensible JSP tags Extensive Tool Support Yes Yes 8 Comparing JSP Technolgy and Microsoft ASP

Sun Microsystems, Inc. 901 San Antonio Road Palo Alto, CA 94303 1 (800) 786.7638 1.512.434.1511 http://java.sun.com November 1999