struts2中对于default-action-ref配置
来源:互联网 发布:动漫恶搞软件 编辑:程序博客网 时间:2024/06/05 05:03
有一部份的朋友在某个自定义的action中定义default-action-ref这个配置的时候,
认为在地址栏中输入地址如http://localhost:8080/project的时候(project为项目名),如果该项目后面不输入任何名字,则会自动进入default-action-ref定义的action并进入对应的类方法中进行操作并根据result返回页面,但是很多人发现结果并不是这样,而不管怎样都返回进入到index.jsp页面。
实际上这一点从原理上来讲可以理解,default-action-ref这个配置的意思是当用户在点击了没有定义的action时,如果struts没有找到用户定义的action名称,则会自动跳转到该默认定义的action中。
个人觉得地址栏中项目后不写名称和名称不存在是两个概念,
比如用户定义了一个strtus.xml:
<package name="a" extends="struts-default"><default-action-ref name="dispatcher" /><action name="dispatcher" class="com.UserAction" method="dispatcher"> <!-- dispatcher --><result type="dispatcher">/hello.jsp </result> </action><action name="redirect" class="com.UserAction" method="redirect" > <!-- redirect --><result type="redirect">/hello.jsp</package>
但是如果用户输入http://localhost:8080/project,该请求会首先被项目中web.xml来进行接收,由于web.xml中默认指定的页面是index.jsp,因此无论struts.xml中如何设置,服务器都会先跳转至index.jsp。原因其实很简单,因为在一个web project中,web.xml为整个项目的入口。
刚刚本人也试了将web.xml中welcome file定义删除,默认也会进入index.jsp,因此该配置如果不写的话,对于用户来讲该部分是透明的。
其实大家可以做一个实验,就可以证明这块的运行过程:
大家可以把index.jsp修改为其他名称,比如aaa,bbb.jsp等。此时在服务器启动并进行加载的时候,会根据web.xml去寻找所谓的index.jsp,但是由于index.jsp已被我们修改名称,那么肯定会找不到,并进入到strtus.xml中,这时我们定义的default-action-ref就可以起作用了,此时由于没有对应的主页配置,浏览器会进入default的引用中进行操作,也就可以实现直接进入action的操作了。
- struts2中对于default-action-ref配置
- struts2中对于default-action-ref配置的解析思路
- struts2中对于default-action-ref配置的解析思路
- struts2中对于default-action-ref配置的解析思路
- struts2中对于default-action-ref配置的解析思路perfect
- Struts2---->default-action-ref
- 关于struts2中的default-action-ref
- struts 中default-action-ref的问题
- 关于struts2中default-action-ref的一些问题,首页设置
- 关于struts2中default-action-ref的一些问题及首页设置
- 关于struts2中default-action-ref的一些问题及首页设置
- <default-action-ref>的用法
- Struts2设置默认action <default-action-ref name="index" />失效
- Struts2中Action配置
- Struts2中Action配置
- struts2的default-action-ref 的一个“BUG”(其实并非bug)
- 关于 default-action-ref 的一个BUG
- struts.xml中的default-action-ref问题
- abstractembeddedcomponents.propertyref
- wordpress获取某个分类的链接地址的两种方法
- Linux系统函数之socketpair()
- u-boot-2009.08在mini2440上的移植(二)---增加nor flash功能
- Plugin com.intellij failed to initialize and will be disabled: null错误
- struts2中对于default-action-ref配置
- vs2012+win7 发布牛腩新闻发布系统
- 高水位(HWM)详解
- JAVA GC 总结
- 例题3-8
- 鸡兔同笼
- Java中抽象类和接口的区别
- 百度优酷土豆小技巧
- 点线计算