简体   繁体   中英

Struts 2 <s:if> tag How to get action name to be evaluated in jsp

Now I can get any desired results if I use the <s:if> tag in Struts2

    <s:if test="status==1">
         //do some stuff
    </s:if>

but I don't know how to get the action currently executed, I am expecting like

    <s:if test="action==addaction">
         //do some stuff
    </s:if>

You can get action name from the context

<s:if test="#context['struts.actionMapping'].name=='addaction'">
   do some stuff
</s:if>

Since Struts version 2.3.34 and 2.5.13 #context is not available anymore because of security reasons (see WW-4852 ) As a workaround you can use #request which is documented here

<s:if test="#request['struts.actionMapping'].name=='addaction'">
   do some stuff
</s:if>

Try this

<s:if test='%{com.opensymphony.xwork2.ActionContext.name=="YourActionName"}'>
     //do some stuff
</s:if>

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM