Apple WebObjects 5 User Manual

WebObjects 5 Reviewer’s Guide
June 2001
WebObjects 5
3 Introduction
4 The WebObjects 5 Architecture
5 Key Features
5 Automated data access with Enterprise Objects 5 Streamlined page generation with Web Components 6 Rich Java clients using EOAssociations 7 Integrated tools
9 WebObjects 5 Advantages
9 Rapid time to market
9 Built-in quality 10 Scalable Java deployment 10 Market-proven solutions
11 Positioning and Target Customers
11 Education 11 Publishing 12 Business
13 WebObjects 5 Background
13 Born at NeXT 13 Joining Apple 14 Moving to Java
15 Pricing and Availability
16 System Requirements
16 For more information
Contents
2
WebObjects 5 is the powerful new release of Apple’s award-winning application server—now written in the language of the Internet: Java. This allows WebObjects to run on virtually any server; makes it easily accessible to millions of Java programmers; and enables it to easily integrate and interoperate with other Java-based solutions such as EJB containers, servlets, ORBS, and web services.
The combination of a Java runtime with advanced native tools for Mac OS X and Windows 2000 makes WebObjects the obvious environment for customers needing rapid development of flexible, scalable web applications.
Built using the same NeXT-derived tools that spawned the World Wide Web, the mature, fifth­generation WebObjects frameworks also have the Xerces parser from the Apache Software Foundation integrated directly into them. This allows developers to import and export XML datastreams as well as supporting SMIL for multimedia applications.
Although WebObjects is cross-platform—enabling development on both Mac OS X and Windows 2000 and deployment on any Java 2 Platform, Standard Edition v1.3 system— WebObjects 5 is especially designed to take full advantage of the power of Mac OS X. In fact, the WebObjects deployment is now bundled as part of the newest release of Mac OS X Server.
This document highlights key information about WebObjects 5. For those who wish to learn more about the product, WebObjects itself provides a wealth of documentation. Every copy of WebObjects includes WebObjects Overview, a 98-page book covering the rich architecture of the WebObjects frameworks. Also available from the Apple Developer Library is Discovering WebObjects for HTML, a 196-page step-by-step tutorial covering the key aspects of building three-tier web applications using WebObjects.
Introduction
3
All web application servers are designed to solve the same basic problem: how to create and maintain dynamic information. Static websites store all their content, presentation, and naviga­tion information in HTML files. Not only does this make it very difficult for webmasters to do rapid or complex updates, it also means that every visitor sees exactly the same information in exactly the same way.
To solve this problem, application servers typically store their content in a database and use some form of scripting to create web pages dynamically, in real time. While this approach allows webmasters to create sites that have continuously updated content, such flexibility usually comes at the price of greatly increased complexity. This complexity lengthens develop­ment cycles, makes the website harder to maintain, and increases qualification efforts.
The WebObjects architecture.
WebObjects improves on the traditional application server architecture with an architecture that cleanly separates the database access layer, the application-specific Java code, and the web page or Java client presentation layer. Supported by rich object-oriented frameworks, this thoughtfully designed architecture is the foundation of the powerful technologies in WebObjects. Our patented object-relational mapping engine provides automated database access via Enterprise Objects. Web Components enable the efficient generation of HTML, XML, or SMIL from reusable templates. When HTML interfaces aren’t enough, rich three-tier Java client applications are supported with EOAssociations.
An integrated suite of graphical tools streamlines application development. Unlike other graphical tools that generate hard-to-read code, the WebObjects tools dynamically bind appli­cation components with XML-like data structures, greatly simplifying application maintenance. Application components can be reused, and incremental development is easy. Both of those capabilities reduce your total cost of ownership over the life cycle of an application.
The WebObjects Architecture
4
5
WebObjects 5 offers a number of powerful features designed to speed application develop­ment, reduce errors, and permit easy updating and modification of your applications. These features include
• Automated data access
• Streamlined page generation
• Rich Java clients
• Integrated development and deployment tools
For additional information, please see the WebObjects 5 data sheet in the “Tech Specs” section of www.apple.com/webobjects.
Automated data access with Enterprise Objects
For a typical web application, the most time-consuming and error-prone step is managing data­base access. Generating correct SQL, understanding foreign keys and dependencies, ensuring that transactions are committed in the proper order—all these are difficult processes for a programmer to master and implement properly. And the price of failure is high. One erroneous entry could rapidly propagate throughout your application, corrupting the entire database.
To prevent such errors, WebObjects takes the programmer out of the data access loop. Instead, all database access is handled automatically via Enterprise Objects (EOs). The developer simply uses the graphical EOModeler tool to create a plist (an XML-like structured text file used for configuration information) called an EOModel. This model specifies how to map tables into objects, and encodes all the dependencies and the “to-one” and “to-many” relationships between them. The WebObjects frameworks use this model file to create Enterprise Objects, and transparently handle all the fetching, caching, and updating to and from the database.
After the EOModel is created, all the programmer has do to is to write straightforward Java code that accesses, modifies, and commits the Enterprise Objects. EOs can be thought of as entity beans with complete container-managed persistence. Perhaps just as important, this process is managed via configuration files rather than generated code. The database administrator can change databases, reorganize schema, switch to an ERP system, or even use multiple data sources at once. As long as the model file is properly updated, the programmer (and the code) never knows the difference.
Streamlined page generation with Web Components
The next challenge is turning objects into web pages. The traditional way to do this has been via some sort of server-side scripting, whether Perl, ASP, or JSP. However, this method can lead to a complicated mix of code and markup in the same file, and often requires one person to be both an HTML designer and a Java developer.
Key Features
Apple’s patented object-relational mapping engine lets you write all your business logic using objects. WebObjects automatically fetches, caches, and updates data for you from any JDBC 2.0 database or XML stream. You may never write another line of SQL.
Loading...
+ 11 hidden pages