Redirect 如何识别struts操作中的重定向和提交

Redirect 如何识别struts操作中的重定向和提交,redirect,struts2,struts,submit,struts-action,Redirect,Struts2,Struts,Submit,Struts Action,我的网站使用struts和tiles。 我使用此链接链接注册表格: <a href='<s:url action="register" namespace="/vtv" />' >Register</a> 在tiles文件中,我定义: <definition name="vtv.register" extends="basic"> <put-attribute name="content" value="/modules/regi

我的网站使用struts和tiles。 我使用此链接链接注册表格:

<a href='<s:url action="register" namespace="/vtv"  />' >Register</a>
在tiles文件中,我定义:

<definition name="vtv.register" extends="basic">
    <put-attribute name="content" value="/modules/register/register.jsp" />
</definition>
在struts文件中:

    <package name="Register" namespace="/vtv" extends="struts-default">
    <result-types>
        <result-type name="tiles"
                     class="org.apache.struts2.views.tiles.TilesResult" />
    </result-types>
    <action name="register" class="vtv.action.RegisterAction">
        <result name="success" type="tiles">vtv.register</result>
        <result name="error" type="tiles">vtv.error</result>
    </action>
</package>
我的问题是如何使用链接重定向到注册页面

<a href='<s:url action="register" namespace="/vtv"  />' >Register</a>
不执行执行操作?如何知道这是重定向还是提交?

在标记中,您可以指定要在RegisterAction中调用的特定方法:

<s:url action="register" method="yourRedirectMethodName" namespace="/vtv"  />

这样,表单提交将调用execute,而上面的链接将调用yourRedirectMethodName。

struts中是否有类似Asp.net的回发变量?据我所知不是这样,但我想到的另一件事是,您可以检查是否设置了操作的表单属性。如果是,则为表单提交。如果不是,则是链接的重定向。
<a href='<s:url action="register" namespace="/vtv"  />' >Register</a>
<s:url action="register" method="yourRedirectMethodName" namespace="/vtv"  />
public String yourRedirectMethodName() {
    // Redirect logic
    return SUCCESS;
}