<a href="<s:url action="blogList"/>">XXXX</a>即可
更簡單的寫法是
<a href="blogDelete.action?id=XXX">直接寫就行了
如果這個Action在struts里面聲明的時候有命名空間如/user
那么寫成<a href="user/blogDelete.action?id=XXX">
使用struts2的action標簽時,可以在jsp頁面直接調用Action,在調用Action的時候,可以指定Action的name和 namespace,如果指定了executeResult參數的屬性值為true,那么該標簽會把Action的處理結果(即視圖資源)包含到本頁面 中。s:action標簽指定屬性有:
id:可選屬性,作為該Action的應用ID
name:必選屬性,指定需要調用的Action名
namespace:可選屬性,指定該標簽調用Action所屬的namespace
executeResult:可選屬性,指定是否將Action的處理結果包含到本頁面中.默認值為false(不包含)
ignoreContextParam:可選參數,指定該頁面的請求參數是否需要傳入調用的Action中,默認值是false,即傳入參數
實例:index.jsp主要代碼
- <%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%>
- <%@taglib prefix="s" uri="/struts-tags"%>
- <%
- String path = request.getContextPath();
- String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
- %>
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
- <html>
- <head>
- <base href="<%=basePath%>">
- <title>Struts2 a:action</title>
- </head>
- <body>
- <div>
- <s:action name="modle_show" namespace="/webs" executeResult="true">
- <s:param name="name" value='1'>
- </s:param>
- </s:action>
- </div>
- </body>
- </html>
test.jsp主要代碼
- <%@ page contentType="text/html; charset=UTF-8" language="java"%>
- <%@taglib uri="/struts-tags" prefix="s"%>
- <s:property value="content" escape="false" />
struts.xml的action代碼:
- <action name="modle_*" class="modleAction" method="{1}" >
- <result name="test">/webs/content.jsp</result>
- </action>
這樣當訪問index.jsp時,會在頁面上執行modle_show這個aciton,並將最終的結果頁面(也就是test.jsp上所有的結果頁面)包含在index.jsp中