Regarding J2EE, this platform provides its own complete standard deployment mechanism.
Although there are more options for alternative deployment methods than the J2ME (given the
abundance of hardware and software resources on this environment), it makes little sense to
discuss alternative deployment options on this platform, for the following reasons:
•Given the server-side nature of J2EE executables, deployment issues are less vital than
those on consumer or desktop environments.
• The nature of users (not end-users, but programmers and developers who use J2EE soft-
ware for their own applications) allows for a simpler deployment mechanism. Often
J2EE applications are deployed via CD-ROM or using a Web connection.
For more J2ME and J2SE deployment details, see Chapter 5, “Deployment Options for Non-
Planning the Deployment Strategy
Paradoxically, given the great number of options available, choosing how to deploy Java soft-
ware for J2SE or legacy 1.x platforms is not easy. We will propose a simple approach to solve
Our approach is to solve the Java deployment issue in three steps:
1. Choose the deployment services.
2. Decide how to implement the chosen deployment services and how to solve the first
3. Implementing what was thought out in the previous steps.
Both deployment services and means will be introduced in the following sections, in which we
will detail the three steps proposed here.
Several criteria should guide our decisions. Depending on the situations, we could shape our
design around different factors: end-user priorities, short time-to-market, minimum develop-
ment costs, and so on.
Basically, there are two main approaches to practical software deployment: the minimal one, in
which only the simplest deployment services are needed; and the radical approach, in which
more sophisticated services are required.
We saw in Chapter 2 that one could establish a deployment circuit offering various kinds of
services. The purpose of this chapter is to provide advice for designing the proper deployment
circuit for our Java software.