SlideShare a Scribd company logo
1 of 6
Download to read offline
Bootstrap Digester ServerLifecycleLis... GlobalResourcesLife... SecurityConfig
Catalina
Bootstrap Digester ServerLifecycle
Listener
GlobalResources
LifecycleListener
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 SettingsAdministratorDesktopTomcat_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 StandardServic
e
CoyoteConnect
or
CoyoteAdapter Http11Protocol JkCoyoteAdapt
er
initialize()
initialize()
initialize()
new()
new()
init()
new()
init()
#2
Catalina.initialize()
File: C:Documents and SettingsAdministratorDesktopTomcat_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 StandardServic
e
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 SettingsAdministratorDesktopTomcat_5_UML.mdl 3:05:37 PM Monday, December 16, 2002 Sequence Diagram: Logical
View / 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 SettingsAdministratorDesktopTomcat_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 StandardContext
Valve
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 SettingsAdministratorDesktopTomcat_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 StandardManager
ContextConfig StandardWrapper
Digester StandardHostDe
ployer
StandardHost StandardContex
t
WebappLoader StandardManag
er
ContextConfig
parse
startElement()
addChild addChild
start() new
setLoader
new
setManager
fireLifecycleEvent(START_EVENT)
// Notify interested LifecycleListeners
start()
defaultConfig()
applicationConfig()
start()
create()
// Process web.xml * tld.xml
StandardWrapp
er
createWarpper() // Invoked by a WebWrapperRule (not Directly by the Digester)
new
addInstanceListener()
addLifecycleListener()
addContainerListener()
Deploy App.
File: C:Documents and SettingsAdministratorDesktopTomcat_5_UML.mdl 3:05:37 PM Monday, December 16, 2002 Sequence Diagram: Logical
View / 6. catalina_start_4 Page 8 (1, 1)

More Related Content

Similar to serverStartup.pdf

Autoscaling Your Kubernetes Workloads (Sponsored by Datadog) - AWS Summit Sydney
Autoscaling Your Kubernetes Workloads (Sponsored by Datadog) - AWS Summit SydneyAutoscaling Your Kubernetes Workloads (Sponsored by Datadog) - AWS Summit Sydney
Autoscaling Your Kubernetes Workloads (Sponsored by Datadog) - AWS Summit SydneyAmazon Web Services
 
Automatically Scaling Your Kubernetes Workloads - SVC209-S - Anaheim AWS Summit
Automatically Scaling Your Kubernetes Workloads - SVC209-S - Anaheim AWS SummitAutomatically Scaling Your Kubernetes Workloads - SVC209-S - Anaheim AWS Summit
Automatically Scaling Your Kubernetes Workloads - SVC209-S - Anaheim AWS SummitAmazon Web Services
 
Online Meetup: Why should container system / platform builders care about con...
Online Meetup: Why should container system / platform builders care about con...Online Meetup: Why should container system / platform builders care about con...
Online Meetup: Why should container system / platform builders care about con...Docker, Inc.
 
Native Java with GraalVM
Native Java with GraalVMNative Java with GraalVM
Native Java with GraalVMSylvain Wallez
 
B2 2006 tomcat_clusters
B2 2006 tomcat_clustersB2 2006 tomcat_clusters
B2 2006 tomcat_clustersSteve Feldman
 
Custom faultpolicies
Custom faultpoliciesCustom faultpolicies
Custom faultpoliciesxavier john
 
Custom faultpolicies
Custom faultpoliciesCustom faultpolicies
Custom faultpoliciesxavier john
 
Learning Java 4 – Swing, SQL, and Security API
Learning Java 4 – Swing, SQL, and Security APILearning Java 4 – Swing, SQL, and Security API
Learning Java 4 – Swing, SQL, and Security APIcaswenson
 
A Cassandra + Solr + Spark Love Triangle Using DataStax Enterprise
A Cassandra + Solr + Spark Love Triangle Using DataStax EnterpriseA Cassandra + Solr + Spark Love Triangle Using DataStax Enterprise
A Cassandra + Solr + Spark Love Triangle Using DataStax EnterprisePatrick McFadin
 
Monitoring MySQL with DTrace/SystemTap
Monitoring MySQL with DTrace/SystemTapMonitoring MySQL with DTrace/SystemTap
Monitoring MySQL with DTrace/SystemTapPadraig O'Sullivan
 
Beyond the Query: A Cassandra + Solr + Spark Love Triangle Using Datastax Ent...
Beyond the Query: A Cassandra + Solr + Spark Love Triangle Using Datastax Ent...Beyond the Query: A Cassandra + Solr + Spark Love Triangle Using Datastax Ent...
Beyond the Query: A Cassandra + Solr + Spark Love Triangle Using Datastax Ent...DataStax Academy
 
stateDatabuild.xml Builds, tests, and runs the project.docx
stateDatabuild.xml      Builds, tests, and runs the project.docxstateDatabuild.xml      Builds, tests, and runs the project.docx
stateDatabuild.xml Builds, tests, and runs the project.docxwhitneyleman54422
 
Come configurare Liferay 6.0 per Oracle
Come configurare Liferay 6.0 per OracleCome configurare Liferay 6.0 per Oracle
Come configurare Liferay 6.0 per OracleAntonio Musarra
 
Make A Shoot ‘Em Up Game with Amethyst Framework
Make A Shoot ‘Em Up Game with Amethyst FrameworkMake A Shoot ‘Em Up Game with Amethyst Framework
Make A Shoot ‘Em Up Game with Amethyst FrameworkYodalee
 
Gearman - Job Queue
Gearman - Job QueueGearman - Job Queue
Gearman - Job QueueDiego Lewin
 
Spark performance tuning eng
Spark performance tuning engSpark performance tuning eng
Spark performance tuning enghaiteam
 

Similar to serverStartup.pdf (20)

Autoscaling Your Kubernetes Workloads (Sponsored by Datadog) - AWS Summit Sydney
Autoscaling Your Kubernetes Workloads (Sponsored by Datadog) - AWS Summit SydneyAutoscaling Your Kubernetes Workloads (Sponsored by Datadog) - AWS Summit Sydney
Autoscaling Your Kubernetes Workloads (Sponsored by Datadog) - AWS Summit Sydney
 
Broker otw.pptx
Broker otw.pptxBroker otw.pptx
Broker otw.pptx
 
Automatically Scaling Your Kubernetes Workloads - SVC209-S - Anaheim AWS Summit
Automatically Scaling Your Kubernetes Workloads - SVC209-S - Anaheim AWS SummitAutomatically Scaling Your Kubernetes Workloads - SVC209-S - Anaheim AWS Summit
Automatically Scaling Your Kubernetes Workloads - SVC209-S - Anaheim AWS Summit
 
Online Meetup: Why should container system / platform builders care about con...
Online Meetup: Why should container system / platform builders care about con...Online Meetup: Why should container system / platform builders care about con...
Online Meetup: Why should container system / platform builders care about con...
 
Native Java with GraalVM
Native Java with GraalVMNative Java with GraalVM
Native Java with GraalVM
 
B2 2006 tomcat_clusters
B2 2006 tomcat_clustersB2 2006 tomcat_clusters
B2 2006 tomcat_clusters
 
Custom faultpolicies
Custom faultpoliciesCustom faultpolicies
Custom faultpolicies
 
Custom faultpolicies
Custom faultpoliciesCustom faultpolicies
Custom faultpolicies
 
Custom faultpolicies
Custom faultpoliciesCustom faultpolicies
Custom faultpolicies
 
Learning Java 4 – Swing, SQL, and Security API
Learning Java 4 – Swing, SQL, and Security APILearning Java 4 – Swing, SQL, and Security API
Learning Java 4 – Swing, SQL, and Security API
 
A Cassandra + Solr + Spark Love Triangle Using DataStax Enterprise
A Cassandra + Solr + Spark Love Triangle Using DataStax EnterpriseA Cassandra + Solr + Spark Love Triangle Using DataStax Enterprise
A Cassandra + Solr + Spark Love Triangle Using DataStax Enterprise
 
Monitoring MySQL with DTrace/SystemTap
Monitoring MySQL with DTrace/SystemTapMonitoring MySQL with DTrace/SystemTap
Monitoring MySQL with DTrace/SystemTap
 
Beyond the Query: A Cassandra + Solr + Spark Love Triangle Using Datastax Ent...
Beyond the Query: A Cassandra + Solr + Spark Love Triangle Using Datastax Ent...Beyond the Query: A Cassandra + Solr + Spark Love Triangle Using Datastax Ent...
Beyond the Query: A Cassandra + Solr + Spark Love Triangle Using Datastax Ent...
 
stateDatabuild.xml Builds, tests, and runs the project.docx
stateDatabuild.xml      Builds, tests, and runs the project.docxstateDatabuild.xml      Builds, tests, and runs the project.docx
stateDatabuild.xml Builds, tests, and runs the project.docx
 
Hackingtomcat
HackingtomcatHackingtomcat
Hackingtomcat
 
Hacking Tomcat
Hacking TomcatHacking Tomcat
Hacking Tomcat
 
Come configurare Liferay 6.0 per Oracle
Come configurare Liferay 6.0 per OracleCome configurare Liferay 6.0 per Oracle
Come configurare Liferay 6.0 per Oracle
 
Make A Shoot ‘Em Up Game with Amethyst Framework
Make A Shoot ‘Em Up Game with Amethyst FrameworkMake A Shoot ‘Em Up Game with Amethyst Framework
Make A Shoot ‘Em Up Game with Amethyst Framework
 
Gearman - Job Queue
Gearman - Job QueueGearman - Job Queue
Gearman - Job Queue
 
Spark performance tuning eng
Spark performance tuning engSpark performance tuning eng
Spark performance tuning eng
 

Recently uploaded

internal analysis on strategic management
internal analysis on strategic managementinternal analysis on strategic management
internal analysis on strategic managementharfimakarim
 
Safety T fire missions army field Artillery
Safety T fire missions army field ArtillerySafety T fire missions army field Artillery
Safety T fire missions army field ArtilleryKennethSwanberg
 
Call Now Pooja Mehta : 7738631006 Door Step Call Girls Rate 100% Satisfactio...
Call Now Pooja Mehta :  7738631006 Door Step Call Girls Rate 100% Satisfactio...Call Now Pooja Mehta :  7738631006 Door Step Call Girls Rate 100% Satisfactio...
Call Now Pooja Mehta : 7738631006 Door Step Call Girls Rate 100% Satisfactio...Pooja Nehwal
 
Agile Coaching Change Management Framework.pptx
Agile Coaching Change Management Framework.pptxAgile Coaching Change Management Framework.pptx
Agile Coaching Change Management Framework.pptxalinstan901
 
GENUINE Babe,Call Girls IN Baderpur Delhi | +91-8377087607
GENUINE Babe,Call Girls IN Baderpur  Delhi | +91-8377087607GENUINE Babe,Call Girls IN Baderpur  Delhi | +91-8377087607
GENUINE Babe,Call Girls IN Baderpur Delhi | +91-8377087607dollysharma2066
 
Beyond the Codes_Repositioning towards sustainable development
Beyond the Codes_Repositioning towards sustainable developmentBeyond the Codes_Repositioning towards sustainable development
Beyond the Codes_Repositioning towards sustainable developmentNimot Muili
 
International Ocean Transportation p.pdf
International Ocean Transportation p.pdfInternational Ocean Transportation p.pdf
International Ocean Transportation p.pdfAlejandromexEspino
 
Strategic Management, Vision Mission, Internal Analsysis
Strategic Management, Vision Mission, Internal AnalsysisStrategic Management, Vision Mission, Internal Analsysis
Strategic Management, Vision Mission, Internal Analsysistanmayarora45
 
Dealing with Poor Performance - get the full picture from 3C Performance Mana...
Dealing with Poor Performance - get the full picture from 3C Performance Mana...Dealing with Poor Performance - get the full picture from 3C Performance Mana...
Dealing with Poor Performance - get the full picture from 3C Performance Mana...Hedda Bird
 
BDSM⚡Call Girls in Sector 99 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 99 Noida Escorts >༒8448380779 Escort ServiceBDSM⚡Call Girls in Sector 99 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 99 Noida Escorts >༒8448380779 Escort ServiceDelhi Call girls
 
Reviewing and summarization of university ranking system to.pptx
Reviewing and summarization of university ranking system  to.pptxReviewing and summarization of university ranking system  to.pptx
Reviewing and summarization of university ranking system to.pptxAss.Prof. Dr. Mogeeb Mosleh
 
Call now : 9892124323 Nalasopara Beautiful Call Girls Vasai virar Best Call G...
Call now : 9892124323 Nalasopara Beautiful Call Girls Vasai virar Best Call G...Call now : 9892124323 Nalasopara Beautiful Call Girls Vasai virar Best Call G...
Call now : 9892124323 Nalasopara Beautiful Call Girls Vasai virar Best Call G...Pooja Nehwal
 
Day 0- Bootcamp Roadmap for PLC Bootcamp
Day 0- Bootcamp Roadmap for PLC BootcampDay 0- Bootcamp Roadmap for PLC Bootcamp
Day 0- Bootcamp Roadmap for PLC BootcampPLCLeadershipDevelop
 

Recently uploaded (15)

internal analysis on strategic management
internal analysis on strategic managementinternal analysis on strategic management
internal analysis on strategic management
 
Abortion pills in Jeddah |• +966572737505 ] GET CYTOTEC
Abortion pills in Jeddah |• +966572737505 ] GET CYTOTECAbortion pills in Jeddah |• +966572737505 ] GET CYTOTEC
Abortion pills in Jeddah |• +966572737505 ] GET CYTOTEC
 
Safety T fire missions army field Artillery
Safety T fire missions army field ArtillerySafety T fire missions army field Artillery
Safety T fire missions army field Artillery
 
Call Now Pooja Mehta : 7738631006 Door Step Call Girls Rate 100% Satisfactio...
Call Now Pooja Mehta :  7738631006 Door Step Call Girls Rate 100% Satisfactio...Call Now Pooja Mehta :  7738631006 Door Step Call Girls Rate 100% Satisfactio...
Call Now Pooja Mehta : 7738631006 Door Step Call Girls Rate 100% Satisfactio...
 
Agile Coaching Change Management Framework.pptx
Agile Coaching Change Management Framework.pptxAgile Coaching Change Management Framework.pptx
Agile Coaching Change Management Framework.pptx
 
GENUINE Babe,Call Girls IN Baderpur Delhi | +91-8377087607
GENUINE Babe,Call Girls IN Baderpur  Delhi | +91-8377087607GENUINE Babe,Call Girls IN Baderpur  Delhi | +91-8377087607
GENUINE Babe,Call Girls IN Baderpur Delhi | +91-8377087607
 
Beyond the Codes_Repositioning towards sustainable development
Beyond the Codes_Repositioning towards sustainable developmentBeyond the Codes_Repositioning towards sustainable development
Beyond the Codes_Repositioning towards sustainable development
 
International Ocean Transportation p.pdf
International Ocean Transportation p.pdfInternational Ocean Transportation p.pdf
International Ocean Transportation p.pdf
 
Strategic Management, Vision Mission, Internal Analsysis
Strategic Management, Vision Mission, Internal AnalsysisStrategic Management, Vision Mission, Internal Analsysis
Strategic Management, Vision Mission, Internal Analsysis
 
Intro_University_Ranking_Introduction.pptx
Intro_University_Ranking_Introduction.pptxIntro_University_Ranking_Introduction.pptx
Intro_University_Ranking_Introduction.pptx
 
Dealing with Poor Performance - get the full picture from 3C Performance Mana...
Dealing with Poor Performance - get the full picture from 3C Performance Mana...Dealing with Poor Performance - get the full picture from 3C Performance Mana...
Dealing with Poor Performance - get the full picture from 3C Performance Mana...
 
BDSM⚡Call Girls in Sector 99 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 99 Noida Escorts >༒8448380779 Escort ServiceBDSM⚡Call Girls in Sector 99 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 99 Noida Escorts >༒8448380779 Escort Service
 
Reviewing and summarization of university ranking system to.pptx
Reviewing and summarization of university ranking system  to.pptxReviewing and summarization of university ranking system  to.pptx
Reviewing and summarization of university ranking system to.pptx
 
Call now : 9892124323 Nalasopara Beautiful Call Girls Vasai virar Best Call G...
Call now : 9892124323 Nalasopara Beautiful Call Girls Vasai virar Best Call G...Call now : 9892124323 Nalasopara Beautiful Call Girls Vasai virar Best Call G...
Call now : 9892124323 Nalasopara Beautiful Call Girls Vasai virar Best Call G...
 
Day 0- Bootcamp Roadmap for PLC Bootcamp
Day 0- Bootcamp Roadmap for PLC BootcampDay 0- Bootcamp Roadmap for PLC Bootcamp
Day 0- Bootcamp Roadmap for PLC Bootcamp
 

serverStartup.pdf

  • 1. Bootstrap Digester ServerLifecycleLis... GlobalResourcesLife... SecurityConfig Catalina Bootstrap Digester ServerLifecycle Listener GlobalResources LifecycleListener 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 SettingsAdministratorDesktopTomcat_5_UML.mdl 3:05:37 PM Monday, December 16, 2002 Sequence Diagram: Logical View / 1. catalina_load Page 1
  • 2. Catalina StandardServer StandardService CoyoteConnector CoyoteAdapter Http11Protocol JkCoyoteAdapter Catalina StandardServer StandardServic e CoyoteConnect or CoyoteAdapter Http11Protocol JkCoyoteAdapt er initialize() initialize() initialize() new() new() init() new() init() #2 Catalina.initialize() File: C:Documents and SettingsAdministratorDesktopTomcat_5_UML.mdl 3:05:37 PM Monday, December 16, 2002 Sequence Diagram: Logical View / 2. catalina_initliaze Page 2
  • 3. Bootstrap Catalina StandardServer StandardService StandardEngine StandardHost StandardPipeline Bootstrap Catalina StandardServer StandardServic e 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 SettingsAdministratorDesktopTomcat_5_UML.mdl 3:05:37 PM Monday, December 16, 2002 Sequence Diagram: Logical View / 3. catalina_start Page 3 (1, 1)
  • 4. 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 SettingsAdministratorDesktopTomcat_5_UML.mdl 3:05:37 PM Monday, December 16, 2002 Sequence Diagram: Logical View / 4. catalina_start_2 Page 5
  • 5. Digester Rule StandardContext StandardPipeline StandardContextV... SetPropertiesRule SetNextRule Digester Rule StandardContext StandardPipeline StandardContext Valve 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 SettingsAdministratorDesktopTomcat_5_UML.mdl 3:05:37 PM Monday, December 16, 2002 Sequence Diagram: Logical View / 5. catalina_start_3 Page 6 (1, 1)
  • 6. Digester StandardHostDeplo... StandardHost StandardContext WebappLoader StandardManager ContextConfig StandardWrapper Digester StandardHostDe ployer StandardHost StandardContex t WebappLoader StandardManag er ContextConfig parse startElement() addChild addChild start() new setLoader new setManager fireLifecycleEvent(START_EVENT) // Notify interested LifecycleListeners start() defaultConfig() applicationConfig() start() create() // Process web.xml * tld.xml StandardWrapp er createWarpper() // Invoked by a WebWrapperRule (not Directly by the Digester) new addInstanceListener() addLifecycleListener() addContainerListener() Deploy App. File: C:Documents and SettingsAdministratorDesktopTomcat_5_UML.mdl 3:05:37 PM Monday, December 16, 2002 Sequence Diagram: Logical View / 6. catalina_start_4 Page 8 (1, 1)