已阅读5页,还剩46页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
PBS超级金融分行业务平台eTeller开发手册新宇软件主要功能1、 多种数据源处理功能,包括主机交易、XML文件、本地数据库2、 和PowerBranch紧密集成,运行于PowerBranch平台之上3、 提供Web强制流程控制、防止重复提交4、 内置客户端和服务器端的表单验证功能,并可根据需要扩充5、 分离页面设计和处理逻辑,简化页面设计和表现逻辑的实现6、 使用页面模板,简化界面开发和管理7、 支持多个web应用模块并行开发8、 灵活方便的定制工具,适合进行二次开发9、 提供API接口,用于扩展系统功能安装JDKJava 2 version 1.3或更高版本。Servlet Container支持Servlet API Specification version 2.2或更高版本,如果使用Filter功能,要求version 2.3或更高版本。支持JavaServer Pages (JSP) Specification version 1.1或更高版本。XML parser and Xalan XSLT Processor支持Java API for XML Parsing (JAXP) specification 1.1或更高版本。Servlet API Classesservlet.jar,支持Servlet API Specification version 2.2或更高版本,如果使用Filter功能,要求version 2.3或更高版本。支持JavaServer Pages (JSP) Specification version 1.1或更高版本。Jakarta StrutsJakarta struts是目前最流行的web开发框架之一struts 1.1 或更高版本:struts.jarJakarta Commons PackagesBeanutils (Version 1.5 或更高版本) :commons-beanutils.jarCollections (Version 2.1 或更高版本) :commons-collections.jarDBCP (Version 1.0 或更高版本) :commons-dbcp.jarDigester (Version 1.3 或更高版本) :commons-digester.jarFileUpload (Version 1.0 或更高版本) :commons-fileupload.jarLang (Version 1.1 或更高版本) :commons-lang.jarLogging ( Version 1.0.3 或更高版本) :commons-logging.jarPool (Version 1.0.1 或更高版本) :commons-pool.jarValidator (Version 1.0.1 或更高版本):commons-validator.jarJakarta OROApache Jakarta ORO version 2.06 (或更高版本):jakarta-oro.jarPBS Packagespbsmvc.jarweb.xml文件设置主控ActionServletactionpbs.kernal.echannel.PbsActionServletinitializerpbs.kernal.echannel.PbsWebAppInitializermappingpbs.kernal.echannel.PbsActionMappingconfig/WEB-INF/struts-config.xml1action*.do1. 所有提交的请求,如果是以“.do”为后缀的,都将由pbs.kernal.echannel. PbsActionServlet来处理2. pbs.kernal.echannel. PbsActionServlet在初始化init()销毁destroy()阶段将调用 pbs.kernal.echannel.PbsInitializer的init()和destroy()方法完成额外的工作3. 使用pbs.kernal.echannel.PbsActionMapping作为mapping实例。该类派生自 默认的org.apache.struts.action.ActionMapping4. 配置文件路径是/WEB-INF/struts-config.xml应用模块设置应用模块允许将单个Struts应用划分成几个模块,每个模块有自己的Struts配置文件,JSP页面,Action,并且可以有各自的controller、message resource、plug-in设置。这个特性是为了更好的支持并行开发允许多个配置文件而不是单个配置文件。为了使用多应用模块功能,必须执行以下几个准备步骤: 为每个应用模块创建独立的Struts配置文件。 配置web 部署描述符 web.xml文件。 使用org.apache.struts.actions.SwitchAction 来实现程序在模块之间的跳转. config /WEB-INF/struts-config.xml config/bm /WEB-INF/struts-config-bm.xml config/ebank /WEB-INF/struts-config-ebank.xml当Struts载入应用程序时,它首先载入缺省应用模块的配置文件。然后查找带有字符串config/xxx 形式的附加的初始化参数。对每个附加的配置文件也进行解析并载入内存。这一步完成后,用户就可以很随意地用config/后面的字符串也就是名字来调用相应的应用模块。用户身份验证和授权检查用户身份验证判断用户是否已登录(签到),授权检查判断用户是否有权限执行某个action。这两种检查都是使用Filter机制实现的,由于Filter机制是Servlet 2.3规范的新功能,所以要求web.xml文件开头的声明使用Servlet 2.3规范:AuthenticateFilterpbs.kernal.echannel.AuthenticateFilterlogon/logon.jsplogon pagedisabledActionPaths/logon.do,/register.do,/logon.jsp,/register.jspregister actionAuthorizeFilterpbs.kernal.echannel.AuthorizeFilteraccess_denied/accessdenied.jspaccess denied pageAuthenticateFilter*.jspAuthenticateFilter*.doAuthorizeFilter*.do从以上内容看出,对任何jsp文件的访问和后缀为“.do”的提交请求,在提交给ActionServlet之前,先由pbs.kernal.echannel.AuthenticateFilter进行用户身份验证。AuthenticateFilter使用两个初始参数:logon和disabledActionPaths,前者指定当验证未通过时,重定向到的登录页面;后者指定不需要进行身份验证的提交请求和jsp页面列表(以逗号分隔),如登录、注册等,不需要进行身份验证。同样的方法可以设置授权检查,由pbs.kernal.echannel.AuthorizeFilter来实现,形成一个Filter Chain,请求将一步步由Filter处理,处理通过的请求将提交给ActionServlet。标签库描述文件所有自定义tag,除了必须有java类来实现其功能外,必须在标签库描述文件对其进行描述,如标签名、实现该标签的类名、body content的类型、标签可用属性列表。该文件是xml格式。/WEB-INF/tag.tld/WEB-INF/tag.tldstruts-config.xml文件设置action-mappingsconfig.xml的根元素,action、global-forward是其子元素form beanform bean定义表单提交后自动生成的bean的名称、类名、bean的属性名称及类型。每个提交都必须定义一个相应的form bean。示例:定义一个名为logonForm的form bean,有两个属性username和password,均为java.lang.String类型,对应的类为org.apache.struts.validator.DynaValidatorForm。 nameform bean的名称,唯一标识form bean,必须和相应的action元素的name属性相同typeform bean的类型全名,可以是抽象类org.apache.struts.action.ActionForm的任何一个派生类:org.apache.struts.action.ActionForm | - pbs.kernal.echannel.core.PbsActionForm | - org.apache.struts.action.DynaActionForm| - org.apache.struts.validator.DynaValidatorForm | - org.apache.struts.validator.DynaValidatorActionForm | - pbs.kernal.echannel.PbsDynaValidatorForm| - org.apache.struts.validator.ValidatorForm | - org.apache.struts.validator.ValidatorActionFormpbs.kernal.echannel.PbsDynaValidatorForm中的getRequestBuffer()方法可以返回一个FieldBuffer实例,包含用户提交的数据。form-property定义form bean的属性name属性名称,和相应的表单域的名称相同type属性的类型,必须是java类的全名,如:java.lang.Stringaction一个action元素对应一个包含表单form的jsp页面,或者对应一个直接运行的URL,系统将根据action元素的设置来处理表单。属性有path、type、name、scope、input、validate、parameter,子元素有forward、exception。path 在config.xml中唯一标识该action的一个字符串。表单的action属性必须和path属性相同。例如:/editRegistration则在jsp中对应的form应这样写(使用FormTag标签):“/”代表webapp的根目录。 type处理提交的类的全名,如:pbs.kernal.echannel.core.HttpQueryname表单的name属性,必须和相应的form bean的name属性相同scopeActionForm的存在范围,可以是session或request,分别对应PageContext.SESSION_SCOPE和PageContext.REQUEST_SCOPEinputaction处理的表单页面的相对路径,或者是一个forward的名称,由该名称找到对应的页面相对路径,视controller元素的inputFoward属性决定,参见controller - inputForwardvalidate是否进行数据验证,默认为true。在数据提交后,而在处理之前,对提交的数据进行有效性验证,如数据类型、长度等,当验证无误,提交给type属性制定的类处理,否则,返回到input元素指定的页面,该页面应有一个ErrorsTag来显示错误信息。验证时是使用自定义标签的属性来实现的,如:TextTag有属性disabled就是验证提交的值是否符合这些属性的设置。请参考标签库中自定义属性的设置。parameter以逗号分隔的附加参数列表,这些参数的值将和用户提交的数据一起传递给ActionServlet。用于将前次提交的数据加入本次请求中。自定义属性自定义属性在struts-config.xml文件中作为元素的子元素来设置,设置方法如下:如:description 描述信息factory数据处理工厂类的名称,默认为pbs.kernal.echannel.TxHandlerFactory,还可以使用pbs.kernal.echannel.XmlHandlerFactory,用于处理xml文件;也可以编写其它数据处理工厂类,参考编程指南中的数据处理工厂类和数据处理类。trancode交易码,区分不同的交易。tranmodel交易模式,区分不同的交易处理0 添加 1 修改 2 查询 3 删除4 成批提交A 签到 B 签退 C 修改密码step该action是否是成批处理的一个“step”。默认为为false,表示该action不是成批处理的一个“step”,而是一个独立的处理过程;如果为true,表示是成批处理的一个“step”,在成批提交前,用户提交的数据并没有被处理,而是缓存在服务器端,真正的处理将在最终提交时。xml当使用pbs.kernal.echannel.XmlHandlerFactory作为factory时,指定xml文件的名称。不含路径的文件名称。用户必须事先在web app server的启动参数中指定一个xmldir参数,指向xml文件的路径,也就是说,所有存取的xml文件必须放在该目录下。xml文件对应的xdr文件由xml文件的根元素中的schema属性指定,在schema中指定xdr文件名称,包含相对于xml文件的路径。如果未设置schema属性,默认xdr文件和xml文件在同一目录下。save为了在页面显示交易结果,返回数据将保存在pageContext中,save元素指定返回数据是否以独自的名称保存在pageContext中,默认为false。forward该元素用于设置后台处理完后返回的页面,一个action元素可包含0-n个forward元素。如果没有设置forward,在action处理完后将跳转到name属性为“success”的global-forward中。name在action的所有forward中唯一标识该forward的字符串path返回页面的地址,如:/expense/ShowSalaryFee.jsp也可以是另一个action,如:/queryReply.do也就是说,当前action运行完后将运行path元素指定的另一个action其中“/”表示web app的根目录。redirect是否将请求重定向,值为true,表示将请求重定向exception定义action类的异常处理机制key消息资源keytype抛出的异常类名path发生错误后,跳转到的页面,如未指定该属性,默认为提交的页面handler处理异常的类的全名,默认为org.apache.struts.action.ExceptionHandler,或者指定该类的派生类global-forward该元素用于设置后台处理完后返回的页面,和forward元素不同的时,它不被包含在任何action中,对所有action有效。当某个action处理完后,要返回一个name元素为“success”的forward的path所指定的页面,则系统先在该action的所有forward中查找是否有name为“success”的forward,如果有,则跳到该forward的path指定的页面;如果没有,则在所有global-forward中查找,找到后该global-forward的gpath元素所指定的页面。 name在所有global-forward中唯一标识该global-forward的字符串path返回页面的地址,如:/expense/ShowSalaryFee.jsp也可以是另一个action,如:/queryReply.do也就是说,当前action运行完后将运行path元素指定的另一个action其中“/”表示web app的根目录。redirect是否将请求重定向,值为true,表示将请求重定向global exceptions定义应用于所有action类的异常处理机制。示例:定义一个global exception,处理java.lang.Exception异常当action抛出一个异常,系统会依次在action的exceptions和global exeptions中根据异常类全名,查找相应的handler,如果找到,则由handler指定的类来处理异常;如未找到,则再根据异常类的父类依次查找,依此类推。如果最终未找到,则由org.apache.struts.action.ExceptionHandler来处理异常。key错误描述的消息资源keytype抛出的异常类名path发生错误后,跳转到的页面,如未指定该属性,默认为提交的页面handlerorg.apache.struts.action.ExceptionHandler派生类的全名,若未指定,默认为org.apache.struts.action.ExceptionHandlercontroller设置系统参数processorClass处理请求的类名,默认为org.apache.struts.action.RequestProcessor,可以使用该类的派生类,主控servlet将调用派生类来处理请求。参见编程指南中的扩展RequestProcessorinputForward如为true,action元素的input属性被看作是一个forward的名称,否则input属性指定一个相对路径,默认为falsebufferSize文件上传的buffer大小,默认为4096contentType响应信息的内容类型,默认为text/htmlforwardPatternmaxFileSize文件上传的最大文件大小,默认为256mmemFileSize内存中保留的最大文件大小,默认为256kmultipartClassMultipartRequestHandler类名,默认为org.apache.struts.upload.CommonsMultipartRequestHandlernocache响应信息中是否设置no-cache HTTP headerspagePatterntempDir文件上传的临时工作目录message resources定义web应用程序使用的消息资源文件,默认的消息资源文件是一个.properties文件,可以指定其它格式的文件作为消息资源文件,此时需要扩展消息资源工厂类及消息资源类,并指定使用该消息资源工厂类。factory消息资源工厂类全名,默认为org.apache.struts.util.PropertyMessageResourceFactoryparameter消息资源文件名称plug-in表单验证设置验证设置位于validation.xml文件中,该文件定义了表单域必须满足哪些验证规则及相应的参数、变量、正则表达式。required检查field是否非null并且长度大于0(不包括空格)注:arg0为消息资源中的一个key,用于查找域的描述信息,下同。requiredif检查在某种条件下field是否非null并且长度大于0(不包括空格) field0 lastName field-test0 NOTNULL field1 insureDependents field-test1 EQUAL field-value1 true field-join AND field-testi:NULL、NOTNULL、EQUALfield-join:AND、ORmaxlength检查field长度是否小于或等于最大长度maxlength16minlength检查field长度是否大于或等于最小长度minlength3mask检查field是否符合正则表达式 mask a-zA-Z*$ email检查field是否是一个有效的email地址date检查field是否是一个有效的日期值 datePatternStrict MM/dd/yyyy byte检查field是否能转
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年安徽省滁州市公务员人员招聘笔试备考题库与答案详解
- 2026年广东省惠州市公务员人员招聘笔试参考试题与答案详解
- 2026年佳木斯市检察机关公开招聘聘用制书记员10人考试备考题库及答案解析
- 某铝型材厂工艺管控制度
- 2026广东广州市海珠区凤阳街道市容环境卫生监督检查所招聘环卫工人7人考试备考题库及答案解析
- 2026年云南省曲靖市公务员人员招聘考试试题与答案详解
- 2026年江西省萍乡市公务员人员招聘考试参考题库与答案详解
- 2026年周口市川汇区事业单位人员招聘笔试备考题库与答案详解
- 2026江西省妇幼保健院第三方派遣员工招聘2人考试备考题库及答案解析
- 国企招聘|山东能源云鼎科技股份有限公司招聘考试备考题库及答案解析
- 前程无忧mat管理能力测试题库35题
- 2026年苏州五区四市七上数学期中试卷含答案
- 农田鱼塘回填施工方案
- 发电车基本知识培训内容课件
- 《智能制造技术基础》课件
- 储罐内浮盘拆除施工流程方案
- 10kv高压开关柜培训
- 2025国际焊接工程师(IWE)考试试题及答案
- 2025年中考语文三轮冲刺:议论文+说明文+记叙文+名著阅读 刷题练习题汇编(含答案)
- 胸腰椎围手术期护理
- 大班美术课件:树叶
评论
0/150
提交评论