Wiki source code of Deployment

Version 39.1 by Pascal Robert on 2023/11/13 11:55

Hide last authors
Pascal Robert 33.1 1 === WebObjects Application Server Types / Deployment Styles ===
2
Gavin Eadie 37.1 3 There are two ways to deploy your WebObjects Application, "Standard" and "Servlet". They have different components and configurations, but they all take your Application as a .woa bundle.
Pascal Robert 33.1 4
5 ===== Standard Deployment =====
6
Gavin Eadie 37.1 7 This is how a great majority of WebObjects applications are deployed. This is the type of deployment for which there is the most documentation and support. It requires four distinct pieces of software to be installed to support your application:
Pascal Robert 33.1 8
Gavin Eadie 37.1 9 * **JavaMonitor** - a Web front-end to manage your wotaskd configuration. You can use one copy of JavaMonitor to manage multiple wotaskd daemons running on different application servers. JavaMonitor is actually a WebObjects application in its own right.
Pascal Robert 33.1 10
Gavin Eadie 37.1 11 * **wotaskd** - a daemon whose main task is to start up instances of your applications when the application server (host) is restarted. wotaskd also receives lifebeats from your application instances. If wotaskd stops receiving lifebeats after a certain amount of time it will assume that your application is dead. The wotaskd daemon is also a WebObjects application in its own right, but with no browser interface.
Pascal Robert 33.1 12
Gavin Eadie 37.1 13 * **HTTP Adapter** - This is an Apache httpd module that serves as the interface between the Apache httpd web server and your application instances. The adaptor routes requests from the web server to the appropriate application instance and sends the responses generated back to the web server. The adaptor does this while performing load balancing to distribute an application's users among its active instances. Load balancing helps to spread the user load of your site evenly across your application hosts.
14 ** Apache Adapter: [[doc:mod_WebObjects]]
Pascal Robert 36.1 15 ** IIS Adapter:
Pascal Robert 33.1 16
Gavin Eadie 37.1 17 * **Webserver (Apache httpd or Window IIS)**
Pascal Robert 33.1 18
Pascal Robert 36.1 19 Usually, people run wotaskd, JavaMonitor, their applications and the Web server on the same server, but it's also possible to run each part on different servers, or to have multiple servers filling each role if needed.
Pascal Robert 33.1 20
21 ===== Servlet Deployment (Tomcat) =====
22
23 * Tomcat
24
Gavin Eadie 37.1 25 ===== Apache Java Protocol (AJP) Deployment (% style="color: rgb(255,0,0);" %)(NO LONGER AVAILABLE)(%%) =====
Pascal Robert 33.1 26
Gavin Eadie 37.1 27 Andrew Lindesay has written an open-source [[AJP>>url:http://en.wikipedia.org/wiki/Apache_JServ_Protocol||shape="rect"]] adaptor for WebObjects 5 which should allow you to deploy your WebObjects application without servlets or the 'wotaskd' infrastructure. Such a deployment is most easily achieved with versions of the Apache HTTP server 2.2 or better as they have built-in support for load-balancing and AJP request-forwarding.
Pascal Robert 33.1 28
Pascal Robert 39.1 29 This adaptor is distributed under the [[LEWOStuff>>doc:WO.Home.Deprecated.LEWOStuff-Overview.WebHome]] open-source framework. It is however stand-alone and has no direct dependency on other libraries or frameworks other than obviously WO 5. For more details on this, see the relevant section of the PDF overview supplied with the LEWOStuff framework.
Pascal Robert 33.1 30
31 * AJP Adaptor
32 * WebServer (Apache)
33
34 === Deployment Platforms ===
35
36 All three of these Application Servers / Deployment Styles can run on any platform that supports Java 1.5 or later. The ones that there is documentation for are:
37
Gavin Eadie 38.1 38 [[doc:Platforms]]
Pascal Robert 33.1 39
Gavin Eadie 38.1 40 {{children sort="title"/}}
Gavin Eadie 37.1 41
Pascal Robert 33.1 42 === Deployment Podcast ===
43
Gavin Eadie 37.1 44 You can learn more about deployment by listening to the [[Practical Deployment>>url:http://www.wocommunity.org/podcasts/wowodc/east09/WOWODC09E-Deployment.mov||shape="rect"]] session from WOWODC 2009, available from the [[podcast page>>url:http://www.wocommunity.org/webobjects_screencasts.html||shape="rect"]] on wocommunity.org.
Pascal Robert 33.1 45
46 === Differences between Apple's and Wonder's versions of the deployment tools ===
47
Gavin Eadie 37.1 48 wotaskd and JavaMonitor were released by Apple to the community as open source when WebObjects 5.4 was released in 2007. They were added to Wonder and improvements and bug fixes were made to the tools. We strongly suggest that you use the [[Wonder Versions>>doc:Wonder JavaMonitor and wotaskd]].