You are on page 1of 6

Bootstrap

Catalina

Digester

ServerLifecycleLis... GlobalResourcesLife...

SecurityConfig

MBeans

Bootstrap

Catalina

Digester

ServerLifecycle GlobalResources
Listener
LifecycleListener

SecurityConfig

initClassLoaders()
newInstance()
setParentClassLoader()
load()

initDirs()
initNaming()
initialize()

parse
server.xml

createDigester()
parse()

newInstance()
newInstance()
newInstance()
setPackageDefinition()
setPackageAccess()

#1Catalina.load()

File: C:\Documents and Settings\Administrator\Desktop\Tomcat_5_UML.mdl


View / 1. catalina_load Page 1

3:05:37 PM Monday, December 16, 2002

Sequence Diagram: Logical

Catalina

StandardServer

StandardService

CoyoteConnector

Catalina

StandardServer

StandardServic
e

CoyoteConnect
or

CoyoteAdapter

Http11Protocol

JkCoyoteAdapter

CoyoteAdapter Http11Protocol

JkCoyoteAdapt
er

initialize()
initialize()
initialize()
new()
new()
init()
new()
init()

#2
Catalina.initialize()

File: C:\Documents and Settings\Administrator\Desktop\Tomcat_5_UML.mdl


View / 2. catalina_initliaze Page 2

3:05:37 PM Monday, December 16, 2002

Sequence Diagram: Logical

Bootstrap

Catalina

Bootstrap

Catalina
start()

StandardServer

StandardService

StandardEngine

StandardServer StandardServic
e

StandardEngine

StandardHost

StandardPipeline

StandardHost StandardPipeline

start()
fireLifecycleEvent(BEFORE_START_EVENT)
fireLifecycleEvent(START_EVENT)
start()
fireLifecycleEvent(BEFORE_START_EVENT)
fireLifecycleEvent(START_EVENT)
start()
fireLifecycleEvent(BEFORE_START_EVENT)
addDefaultMapper()
logger.start()
realm.start()
#1 Catalina.start()
findMappers()
All StandardX will fire these
events.

findChildren()
start()
fireLifecycleEvent(BEFORE_START_EVENT)
addDefaultMapper()
logger.start()
findMapper()
findChildren()
start()
fireLifecycleEvent(AFTER_EVENT)
fireLifecycleEvent(BEFORE_START_EVENT)
fireLifecycleEvent(START_EVENT)

File: C:\Documents and Settings\Administrator\Desktop\Tomcat_5_UML.mdl


View / 3. catalina_start Page 3 (1, 1)

3:05:37 PM Monday, December 16, 2002

Sequence Diagram: Logical

StandardHost

HostConfig

StandardHostDeployer

Digester

ContextRuleSet

StandardHost

HostConfig

StandardHostDeployer

Digester

NamingRuleSet

ContextRuleSet NamingRuleSet

fireLifecycleEvent(START_EVENT)
interested[i].lifecycleEvent()
setDeployXML()
setLiveDeploy()
setUnpacksWar()
setXMLValidation()
deployDescriptors()
install()

install()

create()
new()
add(ContextRuleSet)

deployApps()
install()

new()
add(NamingRuleSet())
parse()

install() // same as above

#2 Catalina.start()

File: C:\Documents and Settings\Administrator\Desktop\Tomcat_5_UML.mdl


View / 4. catalina_start_2 Page 5

3:05:37 PM Monday, December 16, 2002

Sequence Diagram: Logical

Digester

Rule

StandardContext

StandardPipeline

StandardContextV...

SetPropertiesRule

SetNextRule

SetPropertiesRule

SetNextRule

HostConfig.deployDescriptor()

Digester

Rule

StandardContext

StandardPipeline

StandardContext
Valve

parse
startElement()
begin()

newInstance()

new()
setBasic(StandardContextValve)

begin()
//Using BeanUtil, set the object properties (from ex: admin.xml)

end()

#3 Catalina.start()

File: C:\Documents and Settings\Administrator\Desktop\Tomcat_5_UML.mdl


View / 5. catalina_start_3 Page 6 (1, 1)

3:05:37 PM Monday, December 16, 2002

Sequence Diagram: Logical

Digester

StandardHostDeplo...

StandardHost

StandardContext

WebappLoader

StandardManager
ContextConfig StandardWrapper

Deploy App.

Digester

StandardHostDe StandardHost
ployer

StandardContex WebappLoader StandardManag


t
er

StandardWrapp
er

parse
ContextConfig
startElement()
addChild

addChild

start()

new

setLoader

new

setManager
fireLifecycleEvent(START_EVENT)
// Notify interested LifecycleListeners

start()

start()

defaultConfig()
applicationConfig()
create()

// Process web.xml * tld.xml

createWarpper() // Invoked by a WebWrapperRule (not Directly by the Digester)

new

addInstanceListener()
addLifecycleListener()
addContainerListener()
File: C:\Documents and Settings\Administrator\Desktop\Tomcat_5_UML.mdl
View / 6. catalina_start_4 Page 8 (1, 1)

3:05:37 PM Monday, December 16, 2002

Sequence Diagram: Logical

You might also like