In WO 4.0.1 (now shipping with Mac OS X server :-) there is a
"Programming Topics" section of the documentation
(/System/Documentation/Developer/Topics) which gives you cookbook
style answers to many common questions. This is a really nice start
and hopefully will continue to be updated and improved (and perhaps
made available on the web).
Here's the T.O.C:
WebObjects Programming Topics
Handling Errors
� Understanding the Default WebObjects Error Page
� Customizing the Default Error Behavior
� Detecting Freed Object Exceptions
Performance Tuning
� Detecting Memory Leaks
� Batch Faulting to Improve Performance
� Prefetching
Programming Language Considerations
� Mixing Languages in an Application
Localizing Your Application
� Handling International Character Sets with EOF
Implementing Security
� Implementing a Login Panel
Web Application Considerations
� Generating a Static Site
� Providing for File Uploads
� Sending E-mail from a WebObjects Application
� Displaying Images Stored in a Database
� Dealing with Browser Backtracking
Extending WebObjects
� Extending Dynamic Elements
Designing Enterprise Objects
� Working with Unnormalized Tables
Fetching
� Batch Faulting to Improve Performance
� Fetching Distinct Results
� Fetching with an Editing Context
� Creating Sort Orderings
� Prefetching
� Refreshing Data by Refetching from the Database or Invalidating an
Object
Inserting, Updating, and Deleting
� Assigning Default Values to Enterprise Objects
� Creating a New Enterprise Object
� Generating Primary Key Values
� Inserting with the Adaptor Level
� Deleting with the Adaptor Level
� Propagating Deletions Across Relationships
� Updating with the Adaptor Level
� Detecting Changed Attributes
� Choosing an Approach for Locking
� Locking on a Column
� Optimistic Locking
� Pessimistic Locking
� Pessimistic Locking in Oracle
� Pessimistic Locking in Sybase
Programming with the Enterprise Objects Adaptor Level
� When to Choose the Adaptor Level to Improve Performance
� Deleting with the Adaptor Level
� Inserting with the Adaptor Level
� Executing Arbitrary SQL Statements
� Updating with the Adaptor Level
Managing the Object Graph
� Accessing Non-Class Property Values
� Refreshing Data by Refetching from the Database or Invalidating an
Object
� Invalidating Objects
� When to Revert or Undo in an Editing Context
Working with Enterprise Objects Framework Objects
� Setting the Delegates of Database Contexts and Adaptor Contexts
� Using Nested Editing Contexts
. Integrating Oracle Context
WO 4.0.1 ships w> From: matt kangas <[EMAIL PROTECTED]>
> Date: 1999-03-17 02:04:58 -0500
> To: Multiple recipients of list <[EMAIL PROTECTED]>
> Subject: We need a WOCookbook!
> X-UIDL: 1867a16a53356f315724f67f3af9643d
> X-Listprocessor-Version: 6.0 -- ListProcessor by Anastasios Kotsikonas
> Originator: [EMAIL PROTECTED]
> X-Comment: To unsubscribe, follow directions at
> http://www.omnigroup.com/MailArchive/
>
> (foreword: yup, this should go in webobjects-talk when it's available.
> This is an opinion on how Apple could improve its WO documentation.)
>
> What WebObjects needs is not another manual, or another FAQ... what it
> needs is a good cookbook! aka a patterns book. (but "cookbook"
sounds so
> much friendlier :)
>
>
> Allow me to elaborate...
>
> I just spent the evening pondering a component-nesting issue
that's been
> bugging me for several months now. I've known all this time that
I'm going
> about this in a bass-ackwards fashion in one of my programs, yet a
> functional and elegant solution has always eluded me. But tonight I
> started thinking about this again, writing down the exact things I
want to
> accomplish with this and going over the WO dev guide & "What's new
in WO4"
> doc with a fine-tooth comb. In the end I realized that the
> "carat notation" for non-sync components is all I really need for this.
>
> Or today I replied to Patrick Robinson's question on this forum, but it
> seems he has a more general issue:
>
> > Date: Tue, 16 Mar 1999 21:29:03 -0500 (EST)
> > From: Patrick Robinson <[EMAIL PROTECTED]>
> > To: matt kangas <[EMAIL PROTECTED]>
> > Subject: Re: how to trim leading and trailing spaces?
> > ...
> > I really just want to post-process the user input value. Maybe a
> > validator is where this behavior belongs, but I can't believe this
> > isn't something that's much more commonly done, so that it's readily
> > available.
>
> AFAIK the common thread in these examples is that we're both
looking for
> some input on *strategies* and common implementations for resolving a
> problem based on a set of requirements.
>
> An aside: Does the WO documentation suck or does it not? Depends on how
> you look at it. The WO Dev Guide makes for nice reading, but if
you have
> a "How do I?" question the answer is (IMHO) often very hard to find in
> this book. Often what you really need to look it are the
Foundation/EOF/WO
> references, but there is no coaching to this effect... the WO Dev Guide
> should at have a chapter explaining what kind of Qs are answered by the
> refs and how to find/navigate them.
>
> So, assuming this issue was resolved, there still seems to be a
great need
> for an "Ask the Guru" book. Yes, this list is *wonderful* for
exactly this
> purpose and trawling the archives is tremendously handy, but it is
neither
> a) concise & authorative, nor
> b) an Apple publication
>
> I think lots of people get lost in WO trying to do what seem to be
"simple
> things", running into a problem and not having a clue how to solve
it. I
> also thing this points to a deficiency in Apple's documentation
which, if
> resolved, would help more people grok WO more quickly.
>
> Humbly submitted for the betterment of us all...
>
> --
> \7\3\d\e\k\b\8\u\o\x\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \
\ \ \
> \m\a\t\t\.\k\a\n\g\a\s\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \
> m\a\t\t\@\k\a\n\g\a\s\.\o\r\g\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \
>
>