The WebObjects Beginner Book

Version 10.1 by Pascal Robert on 2023/11/13 11:54

  1. History and Introduction
    • Overview of WebObjects, EOF and Project Wonder
    • History of WebObjects, EOF, Project Wonder
    • Getting to Know Eclipse and WOLips
    • Your First Application
  2. Planning for a Maintainable Application
    • Importance of MVC separation
    • Unit Testing WebObjects with Eclipse
    • Logging from the Start, Using log4j
    • Using Frameworks for Organization and Code Reuse
    • The Hello World Scaffold Application
    • RAD: Rapid Turnaround and Hot Code Replace
  3. Thinking About Design with WebObjects
    • How a WebObjects Developer Thinks
    • Relationships not Queries
    • Qualifiers
    • Fetch Specifications
    • Business Logic for Business Objects
    • Components are for View Not Process
    • Object Design
    • The Request - Response Loop
    • Why Defer Optimization Concerns
    • Key Value Coding and WOGNL Extensions
    • Description of the Application to be Built (blog)
  4. The EOModel
    • Entities
    • Attributes
    • Value Types
    • Prototypes
    • To 1 Relations
    • To Many Relations
    • Many to Many Join Tables
    • Flattened Relations
    • Using Multiple Models
    • Relationships Across Models
    • Fetch Specs in Model
    • EO Inheritance
    • EOGenerator
    • Handling Blob Data
    • Connection Dictionary
    • Runtime Selection of the Connection Dictionary and Prototypes
    • Debugging JDBC Connections and Jdbc2info
  5. Leveraging the Power of EOF
    • Fetching Objects
    • Locking
    • Data Freshness
    • Using SQL when needed
    • Raw Rows
    • Fetch Efficiency (pre and batch fetching)
    • Optimistic Locking Failures
    • Constraint Failures
  6. Basics of Page Construction
    • Strings and Formatting
    • Loops
    • Conditionals
    • Forms
    • Switch Component
    • Action methods
    • Bindings
  7. Advanced Page Construction
    • Localization (standard and Wonder)
    • WOComponentContent
    • CSS (standard and Wonder, including localization)
    • JavaScript (standard and Wonder, including localization)
    • Returning to Previous Page
    • RR Loop and Phases
    • Common Super Class
  8. Deployment-Book
    • Using Apache: Develop Like you Deploy
    • Why Deployment at the Beginning?
    • Structure of .framework and .woa Build Products
    • WebObjects and Classpaths
    • Organizing Deployments
    • Apache Configuration
    • SSL Configuration
    • Deployment Components: JavaMonitor, Wotaskd and javawoservice
    • Setting up JavaMonitor
    • Editing spawnofwotaskd.sh
    • Configuring an Application
    • Logging and Permissions
    • Optimization: Adjusting Timeouts, Memory Usage, and Number of Instances
    • Trouble Shooting: Where to look when things go wrong
    • Deployment alternatives (servlet, mod_proxy)
    • Wonder versions of wotaskd and JavaMonitor
    • Handling Transitions between http and https
  9. Creating and Using Reusable Components
    • Design
    • Caret Notation
    • Synchronization
    • Stateless
    • Refactoring Pages into Reusable Components
  10. Validation
    • Basics from Practical WebObjects
    • Using Page to Store exceptions
    • Using form inputs which handle their own validation
    • JavaScript Client Side Validation (maybe with components)
  11. Web Services and WebObjects
    • Using Direct2WebServices
    • Using WebServices Directly
    • The Lower Levels
  12. D2W
  13. JavaClient
  14. Ajax
  15. WO and other clients
    1. Cocoa
    2. ERRest/Dojo or other