In order to make this decision, a deployment engineer should determine whether a given
deployment policy is applicable on its particular application scenario. A comparison of some
deployment technologies is shown in Table 6.1 of Chapter 6, “Deploying Existing Software.” If
no standard deployment tool can be employed, the only solution is to implement in-house the
required deployment circuit.
In the following table (an extreme summing up of several considerations in Part II), the major
shortcomings for some of the main deployment technologies are summarized. The
represents a high end-user burden, whereas the $ symbol represents the attendance of license
fees in order to use that deployment technology.
mainly technical, see below
limited deploym. services
Third-Party Deployment Solutions
Although the Sun Plug-In provided the capability to deploy full-fledged J2SE applets,
developers should be aware that the applet model itself, though very handy on the
deployment side, could appear limited in many cases. Applets are document-bounded
(by the document hosting the Web page), and little control over the lifecycle could
be enforced by developers. For this and other reasons, they don't work very well
when implementing complex applications.
An even simpler approach, valid for many cases, is the following.
First of all, if the planned deployment circuit features only simple one-shot deployment,
installer utilities could be used for installing the given software. Analogously, if our executa-
bles could be sensibly implemented as an applet, the deployment choice is clear.
If none of these apply, it is left to see whether the JNLP technology may be utilized for the
given application deployment. If it doesn't apply, for technical or other reasons (see Chapter 4
or Chapter 7, “Building Your Own Deployment Solution,” for the possible reasons behind a
deployment means choice), developers could resort to advanced third-party deployment solu-
tions (some examples of such tools are presented in Chapter 3, “Existing Solutions”) or to self-
implemented deployment means.