s:action标签不能使用问题解决

使用action标签,可以允许在jsp页面中直接调用Action,在调用Action时候,可以指定需要被调用的Action的name和namespace.如果指定了executeResult参数的属性值为true,该标签会把Action的处理结果(视图资源)包含到本页面中. 使用action标签指定属性有: 

id: 可选属性,作为该Action的引用ID    
   
name:必选属性,指定调用Action    
   
namespace:可选属性,指定该标签调用Action所属namespace    
   
executeResult:可选属性,指定是否将Action的处理结果包含到本页面中.默认值为false,不包含.    
   
ignoreContextParam:可选参数,指定该页面的请求参数是否需要传入调用的Action中,默认值是false,即传入参数. 

<s:action name="login" executeResult="true" namespace="/"></s:action> 

传递参数 

<s:action name="actinName" executeResult="true" namespace="/"> 
    <s:param name="currentPage" value="传递的值"></s:param> 
   </s:action> 

<s:param ></s:param>是以request方式的值的,而不是以参数传值 

所以request.getParameter("")会获取不到值 

通过request.getAttribute("")方式可以获取 

另外:使用<s:param ></s:param> value指代的是action定义的对象的名称,而不是一个值 

和 <s:textfield>中的name是一个意思,所以要要传递字符串的不能把值写value中而应该写到 

<s:param >写到这里</s:param> 
例如: 
struts.xml如下配置 
<package name="reportList" namespace="/reportList" extends="default"> 
<action name="tab_*" action="xxxx" method="{1}" 
<result></result> 
</action> 
</package> 
页面加载如下段 
<s:action na 
me="tab_gotoHeader" namespace="/reportList" executeResult="true"> 
<s:param name="headerMap" value="headerMap"></s:param> 
<s:param name="scopeId" value="1"></s:param> 
<s:param name="reportRemark" value="indicator.concept"></s:param> 
<s:param name="headerMap['lbName']" value="indicator.description"></s:param> 
</s:action> 
xxx.action中只要set,get headerMap,scopeId就可以拿到值了


s:action标签不能使用问题解决:

<a href="testa">跳转</a><br/>
action外<s:action name="testa"  namespace="/"></s:action>
 值:${request.asds }


1.没加namespace="/"加上就好了

2.action不用加.do










  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值