Wiki source code of Java Client-Overview

Last modified by David Avendasora on 2008/07/16 10:13

Show last authors
1 Java Client is a Three-Tier development model for WebObjects. The interface is a Java Application instead of a web page or web service. One of the big advantages of Java Client is that you can easily program client-side logic into the user interface that requires little or no direct communication with the server. This allows for a rich client experience without the complications of Ajax, but now requires extensive Swing programming which has it's own set of hardships.
2
3 Historically there were three methods of WebObjects Java Client development:
4
5 1. Direct To Java Client (D2JC)
6 1. Java Client using Interface Builder to create NIB files that define the UI
7 1. Java Client using pure Swing
8
9 The first two types used other files (XML/NIB files) to build the Swing code during run-time. This can make for quick development times requiring very little Java programming.
10
11 D2JC is very flexible with the UI generated almost entirely at runtime by text-based configuration files (the same rules-system used by Direct to Web). This allows the developer to go from Database or Model to a native-UI application in just minutes. Major changes to the underlying database/EOModel can often-times be reflected in the UI with little or no Java programming or refactoring at all.
12
13 NIB-Based development used Project Builder/Xcode's Interface Builder application to create cocoa-based NIB files that were then interpreted at run-time using the Cocoa-Java Bridge to create a pure Swing application. NIB-based development has been deprecated due to the deprecation of the tools required for development and the Cocoa-Java Bridge.
14
15 Swing-based Java Client Development has recently gotten much simpler with the release of Florijan Stamenkovic's [[javaBound (JBND) framework>>url:http://web.mac.com/flor385/JBND/||shape="rect"]] which greatly streamlines many key pieces of native-client application development.
16
17 While there are not a lot of WebObjects Java Client projects when compared to the quantity of Web-Based projects, it seems to be getting more attention now than it has in several years.
18
19 There are a couple third-party developers working on solutions to streamline the development of pure Swing/SWT/etc Java Client applications for Web Objects. See [[Complimentary Frameworks>>doc:documentation.Home.Development Architecture.Java Client.Java Client-Complimentary Frameworks.WebHome]]