云自无心水自闲

天平山上白云泉,云自无心水自闲。何必奔冲山下去,更添波浪向人间!
posts - 288, comments - 524, trackbacks - 0, articles - 6
  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

appfuse 1.9.4 学习心得

Posted on 2007-03-04 23:08 云自无心水自闲 阅读(1577) 评论(0)  编辑  收藏 所属分类: Java心得体会Appfuse

1、编译部署成功后,在地址栏中输入:http://localhost:8080/appfuse,即可看到首页-登录页

2、第一个页面是login.jsp,此页面使用include包含了taglibs.jsp和loginForm.jsp
其中taglibs.jsp是一个公共页面,定义了页面中使用到的taglibs
而loginForm.jsp则是用户登录Form定义的页面

3、现在会发现一点:此时浏览器中显示的内容比login.jsp的内容要多,包括最上方的语言切换行,下面的标题行,最下文的版本信息行等。
这是因为Appfuse使用了Sitemesh的Decorator。
在WEB-INF目录下,有两个Xml文件:sitemesh.xml和decorators.xml
在Web.xml中定义了sitemesh的Filter
在decorators目录下有default.jsp这个布局文件。
Sitemesh的作用就是对定义的文件进行装饰。
在Appfuse中,会对所有的文件作为Body安放到default.jsp这个布局文件中。

4、查看login.jsp,发现他的Form的Action是比较奇怪的:j_security_check
这并不是一个真实存在的URL
在security.xml中可以发现,这个是authenticationProcessingFilter的filterProcessesUrl属性
这就是Spring中使用Acegi安全认证服务,在Appfuse1.9.4中使用的是Acegi的基于表单的身份认证
filterProcessUrll告诉AuthenticationProcessingFilter应该拦截哪个URL
属性authenticationFailureUrl指定当身份验证失败时用户应该被送往哪里
defaultTargetUrl定义登陆成功时转向的页面

5、用户登录成功后,转到defaultTargeUrl所指定的路径:/ 根路径
而此路径的Welcome file是index.jsp, 而index.jsp又redirect到了mainMenum.html
因此会显示mainMenu.html页面。




只有注册用户登录后才能发表评论。


网站导航: