bootstrap digester serverlifecycle catalina ... · bootstrap catalina digester...

Post on 14-Jun-2018

214 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Bootstrap Digester ServerLifecycleLis... GlobalResourcesLife... SecurityConfigCatalina

Bootstrap Digester ServerLifecycleListener

GlobalResourcesLifecycleListener

SecurityConfig

initClassLoaders()

parse server.xml

MBeans

#1Catalina.load()

Catalina

initDirs()

initNaming()

initialize()

newInstance()

setParentClassLoader()

load()

createDigester()

parse() newInstance()

newInstance()

newInstance()

setPackageDefinition()

setPackageAccess()

File: C:\Documents and Settings\Administrator\Desktop\Tomcat_5_UML.mdl 3:05:37 PM Monday, December 16, 2002 Sequence Diagram: Logical View / 1. catalina_load Page 1

Catalina StandardServer StandardService CoyoteConnector CoyoteAdapter Http11Protocol JkCoyoteAdapter

Catalina StandardServer StandardService

CoyoteConnector

CoyoteAdapter Http11Protocol JkCoyoteAdapter

initialize()

initialize()initialize()

new()

new()

init()

new()

init()

#2 Catalina.initialize()

File: C:\Documents and Settings\Administrator\Desktop\Tomcat_5_UML.mdl 3:05:37 PM Monday, December 16, 2002 Sequence Diagram: Logical View / 2. catalina_initliaze Page 2

Bootstrap Catalina StandardServer StandardService StandardEngine StandardHost StandardPipeline

Bootstrap Catalina StandardServer StandardService

StandardEngine StandardHost StandardPipeline

start()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()

findMappers()

findChildren()

start()

fireLifecycleEvent(BEFORE_START_EVENT)

addDefaultMapper()

start()

logger.start()

findMapper()

findChildren()

#1 Catalina.start()

fireLifecycleEvent(BEFORE_START_EVENT)

fireLifecycleEvent(START_EVENT)

fireLifecycleEvent(AFTER_EVENT)

All StandardX will fire these events.

File: C:\Documents and Settings\Administrator\Desktop\Tomcat_5_UML.mdl 3:05:37 PM Monday, December 16, 2002 Sequence Diagram: LogicalView / 3. catalina_start Page 3 (1, 1)

StandardHost HostConfig StandardHostDeployer Digester ContextRuleSet NamingRuleSet

StandardHost HostConfig StandardHostDeployer Digester ContextRuleSet NamingRuleSet

fireLifecycleEvent(START_EVENT)

interested[i].lifecycleEvent()

setDeployXML()

setLiveDeploy()

setUnpacksWar()

setXMLValidation()

deployDescriptors()

install()

install() create()

parse()

new()

new()

add(ContextRuleSet)

add(NamingRuleSet())

#2 Catalina.start()

deployApps()

install()

install() // same as above

File: C:\Documents and Settings\Administrator\Desktop\Tomcat_5_UML.mdl 3:05:37 PM Monday, December 16, 2002 Sequence Diagram: Logical View / 4. catalina_start_2 Page 5

Digester Rule StandardContext StandardPipeline StandardContextV... SetPropertiesRule SetNextRule

Digester Rule StandardContext StandardPipeline StandardContextValve

SetPropertiesRule SetNextRule

parse

startElement()

begin()newInstance()

begin()

setBasic(StandardContextValve)

new()

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

end()

HostConfig.deployDescriptor()

#3 Catalina.start()

File: C:\Documents and Settings\Administrator\Desktop\Tomcat_5_UML.mdl 3:05:37 PM Monday, December 16, 2002 Sequence Diagram: Logical View / 5. catalina_start_3 Page 6 (1, 1)

Digester StandardHostDeplo... StandardHost StandardContext WebappLoader StandardManagerContextConfig StandardWrapper

Digester StandardHostDeployer

StandardHost StandardContext

WebappLoader StandardManager

ContextConfigparse

startElement()

addChild addChildstart() new

setLoadernew

setManager

fireLifecycleEvent(START_EVENT) // Notify interested LifecycleListeners

start()

defaultConfig()

applicationConfig()

start()

create()

// Process web.xml * tld.xml

StandardWrapper

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

addInstanceListener()

addLifecycleListener()

addContainerListener()

Deploy App.

File: C:\Documents and Settings\Administrator\Desktop\Tomcat_5_UML.mdl 3:05:37 PM Monday, December 16, 2002 Sequence Diagram: Logical View / 6. catalina_start_4 Page 8 (1, 1)

top related