History and Introduction

Last modified by David Avendasora on 2011/05/09 13:04

History and Introduction

Overview of WebObjects, EOF and Project Wonder

History of WebObjects, EOF, Project Wonder, WOLips

History of WebObjects and EOF

WebObjects was a project initiated at NeXT Software. A demo of WebObjects was first in 1995 and WebObjects 1.0 was released in March 1996, making it one of the older Web development toolkit (and one of the few who is still alive). EOF is even older, EOF was created for building OpenStep desktop applications that connect to data sources and was released in 1994. Right from the start, WebObjects applications were built in Objective-C, and a Java bridge was available to use Java instead of Objective-C.

In 2001, 4 years after Apple bought NeXT, WebObjects 5.0 was released and that release was a all-Java rewrite. Apple shipped a tool that converted the Objective-C code to Java, Apple motive was that more developers were using Java for Web apps than Objective-C (remember, this was in 2001, when we didn't have hordes of Cocoa and iOS developers). The year before, the price list for WebObjects was also dropped from $50,000 USD to $699, again to try to get more people to use WebObjects. With the release of WebObjects 5.0, Apple also dropped the "desktop" version of EOF for Objective-C, after 2001 the only way to create desktop applications using EOF was to use JavaClient, a technology that enabled developers to write Java applications with Swing and EOF to talk to a WebObjects application server to exchange data.

In 2005, Apple released WebObjects 5.3, which became free and was bundled with Xcode. This was also the first release that dropped Windows as a supported development platform and the license was modified so that deployment was allowed (but not supported by Apple, except for OS X Server) on any platform that could run a JVM.

When Apple released Mac OS X 10.5 (Leopard) in 2007, they also shipped WebObjects 5.4. The biggest changes was a move from Axis 1.1 to Axis 1.4, support for Java generics, a Ajax request handler was added. But Apple also deprecated the Objective-C/Java bridge, and the developer tools (EOModeler, WebObjects Builder, and some third-party tools) were using that bridge. This is when the community started moving to WOLips, a plugin that allowed the creating of WebObjects projects into Eclipse, a open source Java IDE. When Mac OS X 10.6 (Snow Leopard) was released, the Objective-C/Java bridge was gone and Apple deprecated the WebObjects installation that was available on Mac OS X Server.

History of Project Wonder

Project Wonder have an nice story too. That project started at NetStruxr, a software shop who worked on a commercial real estate system on the Web. Sadly, NetStruxr closed its doors in 2002, but lucky for us, they donated a good piece of their frameworks and created a SourceForge repository for their code. For many years, Project Wonder was there to provide some fixes to the core WebObjects frameworks, and added some complimentary frameworks (like ERJavaMail). But starting with WebObjects 5.3, Wonder become a lot bigger and even Apple contributed to Project Wonder (some of the NetStruxr people are now working at Apple). And since 2009, Project Wonder is where any new stuff for WebObjects is added. For example, a ERRest framework was added to Project Wonder to provide RESTful services from your EOModels. Apple also given the source code for JavaMonitor and wotaskd, the two most common deployment tools, and Project Wonder added enchantments to the tools.

History of WOLips

WOLips started a "woproject", a set of tools that used Ant to build WebObjects projects and to manage WebObjects projects inside Eclipse. It didn't have any tools to manage components or EO models. But following the announcement about the deprecation of the Objective-C/Java bridge, development on WOLips went way up, and support to manage Web components and EO models was added to WOLips, so it became the "official" IDE for WebObjects development when WebObjects 5.4 was released. By 2008, most of the community already switched to Eclipse/WOLips and after the release of Snow Leopard, it became the only real workable complete IDE for WebObjects development.

Getting to Know Eclipse and WOLips

Your First Application