Programming__WebObjects

Version 830.1 by Pascal Robert on 2010/09/13 00:10

WebObjects is a an integrated suite of freely available Java frameworks and tools that helps a developer to develop scalable, sophisticated applications for the Internet on most computers with Java support.

It is the most mature platform available for enterprise level web server development, providing object oriented framework support for relational database object persistence (in any JDBC compliant database), Ajax, Web Services, streaming media, Java Client, Rapid Application Development, file upload/download and many other popular web technologies.

Originally developed by and for NeXT computers in the mid 1990's, it was ported by Apple to Mac OS X and Mac OS X Server under Objective C and then completely translated to Java. It is the technology on which Apple's own iTunes Music Store was developed.

It has a very active and helpful developer community with mailing list support at the WO Developer Mailing List.

Introduction

  • What is WebObjects?
  • History
  • Naming Conventions
    <blockquote>
    The naming convention for objects in WebObjects is that names are written in what is now called "camel case".

The various prefixes are not hard to explain. The "NS" stands for "NextStep", the "EO" for "EnterpriseObject", the "WO" for WebObjects.
</blockquote>

License

As of WebObjects 5.3, the deployment of WebObjects built server applications is now permitted on any platform. The XCode license (within which WebObjects is included) reads:

<blockquote>
D.  WebObjects Software.  Subject to the terms and conditions of this License, you may use, install and permit others to access the WebObjects deployment software included with the Developer Software to deploy application programs developed using Apple's WebObjects Software.  You may also reproduce and distribute:  (1) over a network, components of the WebObjects deployment software for installation and use by others ("Java Client End Users") on any remote computer's volatile memory (e.g. RAM) to enable Java Client functionality for the sole purpose of communicating with Apple's WebObjects Software that may be installed and executed on the same Apple-labeled computer on which you have installed the Developer Software (the "Licensed System"); and (2) both manually and automatically over a network, components of the WebObjects deployment software for installation and use by Java Client End Users on any remote computer's non-volatile memory (e.g. ROM) to enable Java Client functionality for the sole purpose of communicating with Apple's WebObjects Software that may be installed and executed on the Licensed System; provided that all distributions to Java Client End Users are made under terms that are at least as restrictive as those set forth in this License and contain the disclaimers and limitations set forth in Sections 6 and 7 of this License.  Subject to the terms and conditions of this License, you may also deploy server applications built with the WebObjects Software on any platform.
</blockquote>

Sections 6 and 7 are standard Apple license disclaimers of warranty and limitations of liability clauses. Deployment to other platforms requires WebObjects software be built as Java servlet for deployment on a servlet compatible server such as Apache Tomcat.

Foundation

Enterprise Object Framework (EOF)

Introduction

Modeling

Using EOF

Web Applications

Introduction

Development

Deployment

Web Services

Complementary Frameworks

Project WONDER

WireHose

LEWOStuff

GVC Frameworks and GVC.SiteMaker

Development Tools

Direct-To

Case Studies

Java Client

Testing

Database Compatibility / Comparisons

Alternative Technologies Pros / Cons

Additional Resources

Category:Programming
Category:WebObjects