欢迎来到天天文库
浏览记录
ID:39414385
大小:267.00 KB
页数:12页
时间:2019-07-02
《你就只能用这个平台了,不过,这就看你程序写的活不活了,》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、现在把,没有一种共通的方法来用程序创建一个j2ee系统用户,各个容器厂家实现的方法不同,你要是非要这么作,你就只能用这个平台了,不过,这就看你程序写的活不活了,你写活点,尽量让这部分可以拔插,以便以后的更改平台时变化。(题外话,据说最新的j2ee的jaas提出了一套登陆和验证的规范,哥几个可以研究1下去)。看图把,这是一个用户登陆和注册的活动图(题外话,啥叫活动图,说白了就是一个实例的一个动作周期),页面有两种,受保护的,不受保护的。访问受保护的页面需要登陆:《图15》当一个用户请求保护页面的时候,应用系统判断用户是否登陆了。如果用户没有登陆,应用系
2、统先保存这个请求地址,然后导向到登陆界面。登陆界面提供两个功能:l已经注册的用户可以登陆:页面验证客户的用户名和保密字,如果fail了,显示错误页。l注册一个新用户如果客户要创建一个新的用户,让他填写各种注册信息。然后创建,如果创建成功,回显这些信息,否则,跳转到错误页。如果登陆/注册成功后,应用系统会把保存在session中的信息和URL取出,跳转到那个URL中,让用户继续购物。用户登陆和客户登记模块实现用户的登陆处理时通过WAF组件,SignOnFilter,实现的。它探测到哪些请求是导向受保护页面的。SignOnFilter组件是一个servl
3、et过虑器,它可以捕获任何的请求,在请求之前作一些预处理,也可以被挂在被请求被相应之后,作一些善后处理。宠物店应用中,一些页面,只有登陆才能看,那,到底是哪些页面呢,呵呵,别着急,都在signon-config.xml文件中定义了,SignOnFilter会看你请求的是不是signon-config.xml中规定的保护页面。看图把,《图16》SignOnFilter捕获到一个请求,无非就三种情况贝:a.是个登录请求,好,那我就去读取请求传过来参数:用户名,保密字。然后使用无状态SignOnEJB到User实体EJB去核实用户名和保密字是否匹配。b.如
4、果是个普通的不受保护的页面,那么直接导向c.如果是个手保护的页面,而且,用户没有登陆,SignOnFilter先把请求得URL保存起来,并且导向到SignOn页面。当然,SignOnFilter只处理已经注册得用户,对于没有注册得用户得创建,下面讲,呵呵。用户和客户的创建的实现一个客户是由好几个实体EJB组成的。User的EJB代表了客户的用户名和保密字。其他的实体Ejb代表了客户,profile,帐户,联系信息,地址和信用卡。(这几句不太会翻译)用户创建宠物店使用WAF来创建一个新用户,你可以看到一个很好的waf被扩展功能的好方法。下图展示了创建一
5、个宠物店用户用到的所有的WAF相关的类和接口。一个URL请求一来,RequestProcessor创建和执行一个HTMLAction(这里是CreateUserHTMLAction),来执行所有的web层的处理。由于真正的创建的处理在EJB层,CreateUserHTMLAction仅仅返回一个事件(CreateUserEvent),RequestProcess会把这个事件传递给Web端的控制器(WebClientController),Web端的控制器然后传递给EJB端的控制器(有状态的EJB:EJBClientControllerEJB)。EJB
6、端的控制器,然后,找到相应的EJBAction来完成真正的商业处理。这个流程是由WAF框架类来处理的,而业务相关的处理是由开发者自己编写的代码完成。<图17>好,让我们看看交互图把,1。创建一个用户的请求是createuser.do,web的配置文件web.xml中把*.do的请求都映射到了MainServlet上。<图18>2。下面的从请求映射文件mapping.xml摘要,说明了这个URL请求createuser.do将要被CreateUserHTMLAction处理,并且说明了,处理完了以后,跳转到create_customer.screen屏
7、幕去。com.sun.j2ee.blueprints.petstore.controller.web.actions.CreateUserHTMLAction请求处理器RequestProcessor在xml文件中寻找到createuser.do对应的CreateUserHTMLAction类,创建之。3。请求处理器RequestProces
8、sor调用CreateUserHTMLAction的perform()方法。4。CreateUserHTML
此文档下载收益归作者所有