struts2的action中为什么获取不到 request.getParamter()中的值
灬潜龙在渊 2014-08-20 05:51:32
方法执行没有问题,只是request.getParamter或者request.getAttribute都取不到值,在后台输出了一下,发现为 null。
说明前台的request根本没有传递到后台去,我百度了很多,说可能要用上拦截器,弄了好久都不成功,没有办法,只能求助
广大网友了!
先贴一下局部的代码吧
struts.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd">
<struts>
<constant name="struts.devMode" value="true"/>
<package name="struts2.acion" extends="struts-default" >
<action name="region" class="admin.Region" >
</action>
<action name="admin_*" class="admin.Admin" method="{1}">
<result >/Admin/RegionShow.jsp</result>
</action>
</package>
</struts>
action中的调用的是这个方法
public String delRegion() throws MyException
{
System.out.println("para1="+para1);
System.out.println("ab="+ServletActionContext.getRequest().getAttribute("ab"));
try
{
System.out.println("sh_type="+ServletActionContext.getRequest().getParameter("sh_type"));
region.delRe(para1);//实现删除功能,无措
System.out.println("sh_type="+ServletActionContext.getRequest().getParameter("sh_type"));
}catch(MyException e)
{
e.TraceError();
throw e;
}
return "success";
}
前台代码:
<%
int parasum = 2;
String strsql = "SELECT re_type,id FROM tbl_region where sh_type="
+request.getParameter("sh_type"); //在这里是值的
%>
<s:form theme="simple" action="admin_delRegion" onsubmit="sb()">
<div align="center" class="buttonDiv">
<input type="button" value="全 选" onClick="sltAll()" name="all">
<input type="button" id="dele" value="清 空" onClick="sltNull(this)"name="clear">
<input type="submit" value="删 除" id="delete" name="delete" >
</div>
<input type="hidden" id="para1" name="para1" value="">
</s:form>