|
At first glance, JavaServer PagesTM (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.
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 AnywhereTM philosophy of the JavaTM 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. 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 JavaTM 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.
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.
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 JavaBeansTM 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 JavaBeansTM, 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. This component-based model speeds application development because it enables developers to:
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.
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:
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.
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Oracle is reviewing the Sun product roadmap and will provide guidance to customers in accordance with Oracle's standard product communication policies. Any resulting features and timing of release of such features as determined by Oracle's review of roadmaps, are at the sole discretion of Oracle. All product roadmap information, whether communicated by Sun Microsystems or by Oracle, does not represent a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. It is intended for information purposes only, and may not be incorporated into any contract.
|
| ||||||||||||