OFBIZ启动加载初始化一

来源:互联网 发布:dota2 知乎 编辑:程序博客网 时间:2024/05/29 17:37

一 org.ofbiz.base.start.Start.java   

1调用 org.ofbiz.base.start.Config.java 的getInstance方法,readConfig  方法,主要加载属性文件start.properties

2调用start.java类    initClasspath方法

3调用start.java类createLogDirectory 方法创建日志文件

4调用start.java类createListenerThread  创建监听线程

5调用start.java类initStartLoaders加载初始化组件org.ofbiz.base.container.ContainerLoader.java


二org.ofbiz.base.container.ContainerLoader.java 类load方法

1调用org.ofbiz.base.container.ContainerConfig.java加载framework/base/config/ofbiz-containers.xml

2ContainerLoader的loadContainer  方法加载container。

1) <container name="component-container" class="org.ofbiz.base.container.ComponentContainer"/>

调用ComponentContainer的init方法,调用ComponentContainer的loadComponents方法(加载framework,application,themes,specialpurpose,hot-deploy),调用loadComponentFromConfig加载每一个组件,调用loadComponentDirectory方法,调用ComponentLoaderConfig.getComponentsFromConfig获取framework下面的每一个组件。loadComponentFromConfig(String parentPath, ComponentLoaderConfig.ComponentDef def),loadComponent(ComponentConfig config)

2)container name="classloader-container" class="org.ofbiz.base.container.ClassLoaderContainer"/>


3) org.ofbiz.base.container.NamingServiceContainer

4)org.ofbiz.service.rmi.RmiServiceContainer

5)org.ofbiz.catalina.container.CatalinaContainer

调用org.ofbiz.entity.DelegatorFactoryImpl.java的getInstance(String delegatorName)方法返回delegator对象

构造org.ofbiz.entity.GenericDelegator.java 对象


原创粉丝点击