WebObjects
From Wikibooks, open books for an open world
![]() |
This book is out of date and needs to be updated An updated version is present at http://wiki.objectstyle.org/confluence/display/WO/Home. Once this page has been brought up to date, you can remove this tag |
WO is a free Java framework for developing Internet applications. WO supports Rapid Application Development (RAD) of Ajax, web services, streaming media, file transfers, and many other web technologies. WO was originally developed by and for NeXT computers in the mid 1990's. Apple ported WO to Objective C for use with MacOS X and MacOS X Server, but later deciding to use Java for the framework instead.
WO has an active developer community which provides support through the WO Developer and WO Deployment email lists. New developers may also find the WO Community Wiki helpful.
Contents
Introduction[edit]
- What is WO?
- History
- Naming Conventions
- Foundation
- Objective-C to Java Transition
- Licensing
- Hands On: Hello World - Your First WO Application
- Key Value Coding
- Database Development
Enterprise Object Framework (EOF)[edit]
Introduction[edit]
Modeling[edit]
Using EOF[edit]
- Overview
- Required Reading
- The EOF Commandments
- EO Enterprise Object
- EO Editing Context
- EO Object Store
- EO Database
- EO Adaptor
- Context and Database Locking
- Faulting
- Fetching
- Updating
- Deleting
- Caching and Freshness
- Optimistic Locking
- Memory Management
- EOF Best Practices
- Configuration Settings
- Common Pitfalls and Troubleshooting
- Advanced
- EOGenerator
- Logging
- EOF Performance Tuning
- Primary Keys
- Compound Primary Keys
- Concurrency
- Validation
- Database Adaptors and Plugins
- Undo and Redo
- EO's and Multiple Editing Contexts
- EOSharedEditingContext
- Raw Rows
- Batch Fetching
- Fetch Limits
- Bulk Operations
- Schema Changes
- Delegates and Notifications
- Multiple Stacks or Instances
- Custom Qualifiers
- Localization and Internationalization
- Default Values
- Custom EOAdaptor
- EOF Traces
- Problems
- Tips and Tricks
- Examples
- Help! EOF is Doing Strange Things!
Web Applications[edit]
Introduction[edit]
Development[edit]
- Overview
- Required Reading
- Apache
- WO Adaptor
- WO Application
- WO Session
- WO Component
- Component Actions
- Direct Actions
- Request-Response Loop
- Using EOF in a WOA
- Authentication and Security
- General Best Practices
- WOForm Best Practices
- WODisplayGroup
- Debugging Techniques
- Direct Connect
- Frameworks
- Ajax
- CSS
- Sending Emails
- The Build Products
- Errors and Explanations
- Common Pitfalls and Troubleshooting
- Advanced
- Audit Trails
- Backtracking
- Concurrency
- Image Thumbnailing
- Database vs Filesystem (aka Images in the Database?)
- WOLongResponsePage
- Stateless Components
- Non-HTML WO's
- WOEvents and Logging
- PDF Generation
- Excel Generation
- SSL
- Localization and Internationalization
- Testing and JUnit
- Custom Error Handling
- Custom Request Handlers
- Custom Templates
- Calling Commandline Applications
- High Performance WOA's and WO's
- Profiling WO Apps
- J2EE Integration
- WO and Subversion
- Third Party Jars
- Generating Static Pages
- Cocoa EO Applications
- Custom Resource Manager
- Persistent Sessions
- How Forms Work
- Development on Windows
- Tips and Tricks
- Examples
Deployment[edit]
- Overview
- Required Reading
- Advanced
- Platform Specifics
- Helpful Tools & Shellscripts
Web Services[edit]
Complementary Frameworks[edit]
Project WONDER[edit]
WireHose[edit]
- Overview
- Basic Concepts
- Reference
- Installation
- Online Reference Library
- Recently Deployed Sites
LEWOStuff[edit]
GVC Frameworks and GVC.SiteMaker[edit]
Development Tools[edit]
Direct-To[edit]
Case Studies[edit]
- iTunes Music Store
- .Mac
- Apple Store
- Original Dell Store
- Radar
- ShopToIt.ca
- EverLearn
- WO Showcase
- WO Sites
Java Client[edit]
Testing[edit]
Database Compatibility / Comparisons[edit]
Alternative Technologies Pros / Cons[edit]
- ASP.NET
- ASP.NET + Monorail
- JSP and Taglibs
- EJB
- Hibernate
- Core Data
- Cayenne
- Tapestry
- Ruby on Rails
- Struts
- WebWork
- SOPE