struts2中action的validate验证失败后会丢失ActionContext中的值

这该如何解决哪?jsp代码如下:<s:formaction="RuleInfo_add"method="post"enctype="multipart/form-data... 这该如何解决哪?jsp代码如下:
<s:form action="RuleInfo_add" method="post" enctype="multipart/form-data" theme="simple">
<table width="100%" border="1">
<tr>
<td>
类型:
<select name="s_type" id="s_type">
<s:iterator value="typeRs" var="t">
<option value="<s:property value="#t.type_id"/>">
<s:property value="#t.type" />
</option>
</s:iterator>
</select>
</td>
</tr>
<tr>
<td>
现象:
<input name="fact.fact" value="<s:property value="fact.fact"/>" />
</td>
</tr>
</table>

</s:form>

action的validate验证失败后typeRs值变为空使得下拉列表中没有值,该如何解决?
展开
 我来答
yunlkong
2011-08-10 · TA获得超过5711个赞
知道大有可为答主
回答量:9695
采纳率:0%
帮助的人:1.9亿
展开全部
新建
C:\Program Files\Apache Software Foundation\Tomcat 6.0\conf\Catalina\localhost\index.xml

里面输入
<?xml version="1.0" encoding="UTF-8"?>
<Context path="/index" docBase="Es:\workspace\CFMI2\WebRoot【你的web-inf目录】"/>
启动输http://localhost:8088/tess/index.jsp
百度网友1082429
2011-07-28 · TA获得超过216个赞
知道答主
回答量:58
采纳率:0%
帮助的人:28.2万
展开全部
http://zhidao.baidu.com/question/233368577.html

action的result节点这样写,
<result name="" type="redirect"></result>这样表示重定向,url就不会显示action的地址了。
3问:
要隐藏是可以的,不要用submit按钮,换成普通的按钮,把提交事件放到JS中写,比如按钮的点击事件onclick="submitForm()",JS里的submitForm函数里,写这样一句,document.form[0].submit();这就是对第1个form标签进行提交操作。
题外话,你的图片用绝对路径试试,这样写<img src="/test2/.../img/图片名"/> 直接从项目根目录开始找,我都是这么写,路径别写错了。
追问
这样重定向之后,typeRs值不会丢失,但是jsp页面就不会显示fieldError提示信息了。如果是dispatcher的话,会显示fieldError信息,可是typeRs会变为空使得下拉列表没有值。
追答
那是两个请求,当然不可能同时得到了,你只有把其中的一个写到另一个里,然后再返回另一个返回另一个就行了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
不一定是飞机
2011-07-28 · TA获得超过827个赞
知道小有建树答主
回答量:270
采纳率:100%
帮助的人:321万
展开全部
context属于服务器端得全局对象,不会丢失数据
你指的是request吧?如果是request转发是不会丢失数据的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
xuhaobooo
2011-07-29 · TA获得超过282个赞
知道小有建树答主
回答量:103
采纳率:0%
帮助的人:70.8万
展开全部
在你的validate方法里把你的下拉列表的值typeRs再得新赋一次。如果你是用的框架,那就在你的action处理方法中再赋一次。为什么要这样,因为web请求是一次性的,在你显示页面时肯定初始化了typeRs,但页面显示完成后你再请求时的Action类会是个新的,不会保存以前的值,所以失败后定向列表是空的,所以在发起定向的Action方法中一定要再次初始化typeRs。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
朱可星
2011-07-29 · TA获得超过913个赞
知道小有建树答主
回答量:1860
采纳率:91%
帮助的人:323万
展开全部
你用的什么 提交方法,struts2 不是 单例模式 ,
追问
action 不是单例,validate验证失败后,使用/AddInput.jsp这样重定向之后,typeRs值会丢失,而且jsp页面也不会显示fieldError提示信息了。如果是dispatcher的话,会显示fieldError信息,可是typeRs会变为空使得下拉列表没有值。如果是chain的话,typeRs值不会丢失,但是jsp页面就不会显示fieldError提示信息了。就没有一种能不丢失typeRs又能显示fieldError提示信息的方法吗?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式