struts.xml配置文件中需要注意的地方
2016-03-01 15:57
761 查看
1.
设置全局的返回结果 放在web-inf下面的不能通过redirect形式,如下面
2.
包继承extends问题,一般package里面会配置自定义拦截器,默认的action,异常处理,全局返回结果,因此一般需要继承包,无非就是继承里面的配置文件,或者使用里面的action。但是继承的不得当,那么就会出现各种各校的问题。
如:包名为default 的包 里面定义了登录拦截器。
3.
访问其它package里面的action
4.
action中的参数有两种
一种在action下面,这种参数是将值传进action,给变量赋值。
一种是在result下面,这种参数是从action中取值,将值传递到视图页面中。
设置全局的返回结果 放在web-inf下面的不能通过redirect形式,如下面
<global-results> <!-- <result name="login" type="redirectAction">login</result> 错误--> <result name="login">/WEB-INF/back/login.jsp</result> <result name="error404">/WEB-INF/back/error/error404.jsp</result> <result name="error500">/WEB-INF/back/error/error500.jsp</result> <result name="accessDenied">/WEB-INF/back/error/AccessDenied.jsp</result> </global-results>
2.
包继承extends问题,一般package里面会配置自定义拦截器,默认的action,异常处理,全局返回结果,因此一般需要继承包,无非就是继承里面的配置文件,或者使用里面的action。但是继承的不得当,那么就会出现各种各校的问题。
如:包名为default 的包 里面定义了登录拦截器。
<package name="default" extends="struts-default" abstract="true" namespace="/"> <!-- 添加拦截器 --> <interceptors> <!-- 新建一个栈,把登陆拦截器和默认的栈放进去 --> <interceptor-stack name="mystack"> <interceptor-ref name="defaultStack" /> <interceptor-ref name="loginValidate" /> <interceptor-ref name="securityInterceptor" /> </interceptor-stack> <!-- 添加登陆拦截器 --> <interceptor name="loginValidate" class="com.lemon.intecept.AuthrityInterceptor" /> <!-- 权限拦截器 --> <interceptor name="securityInterceptor" class="com.lemon.intecept.SecurityInterceptor"></interceptor> </interceptors> <!-- 修改默认拦截器 --> <default-interceptor-ref name="mystack" /><span style="font-family: Arial, Helvetica, sans-serif;"></package></span>但是前台主页如果继承了这个包
<package name="front" extends="default" namespace="/"> <default-interceptor-ref name="defaultStack"></default-interceptor-ref> <action name="mainPage_*" class="mainPageAction" method="{1}"> <result name="{1}">/main.jsp</result> </action> </package>就会出现问题,必须把默认拦截器改成defaultStack。或者在action里面更改拦截器,否则主页也会被拦截。
3.
访问其它package里面的action
<action name="logining" class="loginAction" method="logining"> <!-- redirectAction 跳转到另外的package中的action --> <result name="main" type="redirectAction"> <param name="actionName">bannerList</param> <param name="namespace">/</param> </result> <result name="login">/WEB-INF/back/login.jsp</result> </action>
4.
action中的参数有两种
一种在action下面,这种参数是将值传进action,给变量赋值。
一种是在result下面,这种参数是从action中取值,将值传递到视图页面中。
<action name="appAdding" class="appTypeAction" method="addApping">
<param name="uploadPaht">/upload</param> <result name="addApping" type="redirectAction"> <param name="actionName">appList</param> <param name="typeid">${typeid}</param> </result> </action>
相关文章推荐
- java-WEB中的监听器Lisener
- GUI - Web前端开发框架
- Extjs4.0 最新最全视频教程
- JQuery+Strusts1.x无刷新登录
- MyEclipse Web Project转Eclipse Dynamic Web Project
- axis备忘
- ActionScript 3.0 编程体验
- AS3 中的package(包)应用实例代码
- 再谈Jquery Ajax方法传递到action(补充)
- Erlang实现的一个Web服务器代码实例
- 防止网页脚本病毒执行的方法-from web
- 自学成才的秘密:115个 web Develop 资源
- 使用批处理修改web打印设置笔记 适用于IE
- Apache Web让JSP“动”起来
- web下载的ActiveX控件自动更新
- 推荐六款WEB上传组件性能测试与比较第1/10页
- 关于三种主流WEB架构的思考
- 使用 Iisext.vbs 列出 Web 服务扩展文件的方法
- 使用 Iisext.vbs 删除 Web 服务扩展文件的方法
- 使用 iisext.vbs 禁用 Web 服务扩展的方法