IBM的Maximo-6体系架构

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

IBM的Maximo6.0体系架构1.1MAXIMO体系架构1.1.1整体结构maximo.ear的结构:nMETA-INF(相关描述文件)nLib(类库资源)nbusinessobjects.jar(maximo相关类)nproperties.jar(maximo的配置文件)nmboejb.jar(maximo集成相关的包)nmbojava.jar(maximo一些自测试的包)nmeajmsejb.jar(maximo集成相关的包)nmaximouiweb.war(webclient应用)nmboweb.war(Maximo的启动加载的web应用)nmeaweb.war(集成相关的web应用)1.1.1.1目录结构lMaximo应用的目录结构Maximouiweb、mboweb、meaweb是三个web应用,最终会分别打包为maximouiweb.war、mboweb.war、meaweb.war。Maximouiweb和mboweb是两个重要的web应用,它们各自包括自己要发布的资源,其中自身要用到的类放在\WEB-INF\classes下,需要的第三方的库放在各自的lib下。而共通的MAXIMO的类则抽出打包成jar放在Maximo.ear的根目录。Maximouiweb和mboweb还包括META-INF的配置。lMeaweblMboweblMaximouiweb:主要负责maximo的页面展现,同时负责与mbo交互1.Maximouiweb目录结构:2.Maximouiweb的程序结构:lBussinessobjects:Bussinessobjects主要包括系统级服务和业务级服务两个方面的内容。1.Bussinessobjects的目录结构。l其他uLib:公共类库uMboejb:集成相关uMeajmsejb:集成相关uMbojava:maximo一些自测试的类uProperties:maximo相关配置文件。1.1.1.2包结构l每个web应用使用的具体的类统一放置在WEB-INF的class下nmaximouiweb\WEB-INF\classesnmboweb\WEB-INF\classesnmeaweb\WEB-INF\classesl每个web应用使用的专有的第三方类库放置在web应用的lib文件夹下maximouiweb\WEB-INF\libJAMon.jar(文本模板引擎)ncpro.jar(图像工具包)ssce.jarxp.jar(JamesClark的XML解析器)l所有web应用共享的MAXIMO类以JAR的形式存放在MAXIMO的EAR的根目录下businessobjects.jar(共用)properties.jar(共用)mboejb.jarmbojava.jarmeajmsejb.jarl所有类共享的第三方类库放在MAXIMO的EAR的根目录下的lib文件夹下acweb.jar(安讯报表)idapi.jar(安讯报表)acme.jar(通用类库)commons-discovery.jar(通用类库)commons-logging.jar(通用类库)log4j-1.2.8.jar(通用类库)jaws.jar(通用类库)ldapbp.jar(LDAP)db2jcc.jar(数据库相关)db2jcc_license_cisuz.jar(数据库相关)db2jcc_license_cu.jar(数据库相关)Opta.jar(数据库相关)oraclethin.jar(数据库相关)jdom.jar(XML处理)xercesImpl.jar(XML处理)xmlParserAPIs.jar(XML处理)axis-ant.jar(webservice)axis.jar(webservice)saaj.jar(webservice)uddi4j.jar(webservice)wsdl4j.jar(webservice)jaxrpc.jar(webservice)MAXIMO包包含的描述文件说明:lMAXIMO的war包、jar包包括用以描述模块间依赖关系的manifest文件,该文件放在META-INF下(MANIFEST.MF文件定义classpath,为模块间类调用时提供支持)l描述服务器要加载的所有资源的说明文件。如META-INF文件夹下的application.xml、INDEX.LIST等1.1.1.3参数配置Maximo的配置文件主要放在properties文件夹下。包括1.maximo.properties:lMXSERVER属性配置l数据库属性配置(重要参数的描述如下)mxe.db.url:默认的URL是mxe.db.url=jdbc:oracle:thin:@dbserver:1521:siddbserver是数据库服务器的服务器名称。1521是默认的Oracle端口号。sid是Oracle系统标识符。n数据连接池需要的参数描述:mxe.db.initialConnections:启动应用程序服务器时要创建的数据库连接数量mxe.db.maxFreeConnections:连接池中自由数据库连接的最大数量mxe.db.minFreeConnections:为分配更多的连接连接池中需要的自由数据库连接的最少数量mxe.db.newConnectionCount:当连接池中可用的自由连接数量最少时需要新建的连接数量n与事务处理相关的参数设置:mxe.db.transaction_isolation:定义事务的隔离级别mxe.db.autocommit:定义是否自动提交事务l管理员邮箱配置l工作流相关属性配置l重订购属性配置lCronTaskManager属性配置lDebug属性配置l报表服务器属性配置l电子签名属性配置webclient.properties:与web端访问有关的配置。如登陆登出页面,错误页面等等。logging.properties:与日志相关的配置(注意MAXIMO对log4j进行了包装,可以为MAXIMO提供的根配置其对应的日志输出级别。如:log4j.logger.maximo.sql=ERROR)。2.doclink.properties:与MAXIMO文件上传相关的配置文件3.ldapsync.xml:ldap相关配置文件4.ldapsync.dtd:ldap相关配置文件1.1.2程序结构1.1.2.1概述本章节将对整体结构中描述的程序进行具体的分析。分析将按照表现层、控制层、业务层、持久层几个大的方面展开。1.1.2.2表现层MAXIMO的页面除了用户登录验证的过程外,其余的页面内容均由XML进行提供。这些XML存储在MAXPRESENTATION表中。XML文件由JSP的控制标签组件组成。其中Controls组件和Javascript中的脚本共同生成需要显示的页面。每个Controls组件都有自己的CSS定义,同时所有页面共享的CSS在CSS共通中进行定义。相关资源如下:nControls:组成页面的基本的控制组件页面nCss:所有页面共享的样式表nImages:图片文件nJavascript:脚本文件nLogin:与登陆相关的页面nUtility:常用功能页面nCommon:共通页面1.1.2.3控制层1.mboweb的部署描述符(web.xml)MBOWebApplicationMAXIMOStartupServletMAXIMOStartupServletServerusedtoloadMAXIMOBusinessObjectsenvironmentpsdi.servlet.MAXIMOStartupServlet1根据1可知,服务器将首先装载和初始化该servlet。MAXIMOStartupServlet的主要功能是读取MAXIMO的配置文件maximo.properties,并将其以Properties对象的形式传递给MXServer的start方法。MAXIMOStartupServlet调用MXServer.start(properties)主要是建立MXServer的实例,并初始化与其相关的信息。MXServer是MAXIMO的系统服务和应用服务的运行期间的上下文。A.系统服务主要包括数据连接池的建立和管理、对MAXIMO缓存的实现、调用MaximoDD从数据库读取并加载所有数据字典信息、实例化系统服务和应用服务的对象、实现所有远程应用服务的灵活定位、注册RMI、提供MaxSession的线程管理等。B.应用服务主要是与业务相关的MBO.程序主要包含在:psdi.server.*:定义了和maximo系统有关的类,如数据库的连接管理,session的管理,线程的管理,数据对象内容的加载,实例化系统服务和应用服务的对象,mbo和mboset的访问等等。2.Maximouiweb的部署描述符(web.xml)(部分)webclientpsdi.webclient.servlet.WebClientServletchar_encodingUTF-8webclient/ui/*WebClientServlet是其最核心的一个servlet,所有和/ui/*匹配的URL都会映射到这个servlet,该servlet负责定义页面的内容类型,并调用RequestHandler进行相关处理。RequestHandler:验证MXSession是否有效(已登录),并根据请求生成WebClientEvent,开始消息队列并委托具体的ControlHandlers处理产生的事件,同时负责处理与用户的登录和注销相关的操作。ControlHandler:负责调用对应的Controls控制组件来完成具体的操作。相关的程序:Applet:与工作流的定义、展现相关的Applet程序nBeans:nServlet:nSystem::1.1.2.4业务层BussinessobjectsBussinessobjects的目录结构。Bussinessobjects主要包括系统级服务和业务级服务两个方面的内容。psdi.app.*:定义了业务对象Mbo、MboSet(一组Mbo的集合,如一个列表),主要是描述和应用程序有关的所有业务逻辑。psdi.server.*:定义了和maximo系统有关的类,如数据库的连接管理,session的管理,线程的管理,数据对象内容的加载,实例化系统服务和应用服务的对象,mbo和mboset的访问等等。psdi.util.*:定义了maximo很多有用的类,如克隆app,删除app,httpsession的管理,加密解密,客户化应用生成等等。psdi.workflow.*:定义了工作流所需要的逻辑处理。1.1.2.5持久层psdi.mbo.*:定义了maximo核心的持久层的操作.,实现ORmaping.1.1.3程序流程描述1.1.3.1mboweb执行过程描述Maximo的启动加载是由Mboweb.war包来完成的启动的时由psdi.servlet.MAXIMOStartupServlet这个Servlet调用MXServer来完成MAXIMO的很多初始化工作。具体MAXIMOStartupServlet的功能描述如下:Init()方法中包含:读取maximo.properties配置文件的具体内容。调MXServer的start方法java.io.InputStreaminputstream=getClass().getResourceAsStream(/maximo.properties);………MXServer.start(properties);MXServer的start方法做的事情:publicstaticvoidstart(Propertiesproperties){Resolver.isApp(true);//注释1if(MAXIMOLOGGER.isInfoEnabled())MAXIMOLOGGER.info

1 / 27
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功