// struts2 重定向 传参数问题。 <action name="addInfo" class="infoAction" method="add"> <result name="success" type="redirectAction"> <param name="actionName">listInfo</param> <param name=" ">${info.id}</param> <param name=" ">${info.title}</param> </result> //param name=" "应该怎么填写? </action> <action name="listInfo" class="infoAction" method="list"> <result name="success">/infolist.jsp</result> </action> //infolist.jsp <s:iterator id="c" value="infos" status="s"> <s:property value="id" /> //id是自增的,别说用转发 type=chain ?<s:property value="title" /> </s:iterator> |
|
不知道楼主用意是什么,为什么要这么写。如果真不知道去struts-config.xml文件查看一下,strut2底层有哪个常量与这种方式有关,就像那个actionName是怎么来的一样!!!
|
|
我的用意很明显啊,点击保存执行addInfo.Action.然而addInfo重定向到listInfo也就是遍历所有数据。可是就是卡在这一步<param name=” “> 不知道这填写什么,试了各种结果都没解决。 |
|
//param name=” “应该怎么填写? 参数名,是你需要定义的,然后在action中(infoAction)定义并生成参数的set、get方法,那么你可以直接通过参数获取参数值
|
|
这个用不着重定向,直接在add方法里写完自己的逻辑后给info赋值,result写
<result name=”success”>/infolist.jsp</result> |
|
action中定义的是对象,集合,没有属性,属性单独定义在实体类中。那此时的//param name=” “应该怎么填写?还是一定要在action中 写上 id title 属性get set方法吗? |
|
表示未曾知道过这种方法,新手!
|
|
您没明白我的意思,在页面填写数据完成时,点击按钮执行addInfo这个action时就会重定向到listInfo。问题是重定向//param name=” ” 写什么? 。 |
|
当然listInfo是遍历所有数据,也就是添加完成后重定向到遍历数据页面。 |
|
参数名可以随便定义,也已定义sid,stitle,一般还是定义有意义的。你还是多去动动手。不要怕,东西都是玩出来的、 |
|
<param name="info.id">${info.id}</param> <param name="info.title">${info.title}</param> |
|
表示无力啊~~~~
|
|
<param name="info.id">${info.id}</param> <param name="info.title">${info.title}</param> 这种写法是错误的。 |
|
10楼的不可能错的,要使${info.id}有值,必须为info对象添加set方法,获取值必须有它的get方法,,你自己看看怎么做的,
|
|
15分 |
你先把自己的需求想清楚,重定向查询需要把添加的数据传过去吗?传过去真的有用吗?你用添加的数据做列表查询的参数吗? 如果必须传,直接<result name=”success” type=”redirect”> |
谢谢这位大哥给的提醒,想了想,添加数据后重定向确实没必要传到list页面,我遇到一个问题,添加数据后点击保存 直接跳到list页面,但是添加页面的有一个主键自增的ID,怎么才能传到list页面了。 |
|
问题解决了,在struts 添加方法中 返回 return list() 也就是遍历的方法就能拿到数据库ID,但是为什么在struts.xml 添加action 我写type=chain 跳转到list的action ,为什么就拿不到ID了,我也不知道为什么。
|
|
5分 |
难道非要用这样方式才能实现吗、你就是想添加成功后,在listinfo页面再立马遍历出刚才添加成功的数据是吧,那么你先添加成功后再查一遍不就完了。。。。
|
<action name=”errCodeAtion_*” class=”errAction” method=”{1}”>
<result name=”errlist”>WEB-INF/jsp/errlist.jsp</result> <result name=”detial”>WEB-INF/jsp/rdetial.jsp</result> <result name=”errcode”>WEB-INF/jsp/errcode.jsp</result> </action> <action name=”replyAction” class=”replyAction” method=”reply”> <result name=”detial” type=”redirectAction”> <param name=”actionName”>errCodeAtion_detial.action?rid=${eid}</param> </result> </action> |