1、将webXml对象里对StandardContext的属性进行映射
、contextParams、ejbLocalRefs、ejbRefs、envEntries、errorPages、filters、filterMaps、jspPropertyGroups、listeners、localeEncodingMappings、messageDestinationRefs、metadataComplete、mimeMappings、resourceEnvRefs、resourceRefs、securityConstraints、securityRoles、serviceRefs
2、将servlet封装成Wrapper。主要是以下。
(1)、设置setLoadOnStartup
(2)、设置setName
(3)、设置servlet.getParameterMap()。
(4)、设置setServletClass
(5)、context.addChild(wrapper)
1)、主要进行super.addChild(child),当前对象StandardEngine[Catalina].StandardHost[localhost].StandardContext[/docs],代码在standardContext中。
2)、主要进行addChildInternal(child),代码在ContainerBase中。
3)、child.setParent(this),child=StandardEngine[Catalina].StandardHost[localhost].StandardContext[/docs].StandardWrapper[jsp],this=StandardEngine[Catalina].StandardHost[localhost].StandardContext[/docs]
4)、children.put(child.getName(), child);kv存储。
5)、child.start(),后续介绍。
6)、fireContainerEvent(ADD_CHILD_EVENT,child);StandardContext的container的listeners为0,所以没有动作执行。
3、context增加servletMappings
4、context设置session超时时间
5、获取SessionCookieConfig设置属性。
6、context设置taglibs。
7、context设置welcomeFiles。
8、context设置jspPropertyGroups。
本文详细介绍了Tomcat启动过程中的关键步骤,包括Web应用配置的加载、Servlet的封装及映射、上下文参数的设置等。通过理解这些过程,开发者可以更好地掌握Tomcat的工作原理。
webXml.configureContextcontext(三十七)...&spm=1001.2101.3001.5002&articleId=84445328&d=1&t=3&u=03a912ca4a094861ae8349ab42a32921)
1084

被折叠的 条评论
为什么被折叠?



