Java 如何通过struts2编写一个action类和action-validation.xml来验证两个不同jsp页面中的两个表单

Java 如何通过struts2编写一个action类和action-validation.xml来验证两个不同jsp页面中的两个表单,java,struts2,validation,Java,Struts2,Validation,我正在创建一个struts2应用程序,它有一个登录页面和另一个用户详细信息页面。在这里,我只需要创建一个action类。因此,我无法通过将两个页面中的字段validation添加到action-validation.xml来运行应用程序。因为登录页面验证会验证validation.xml中的其余字段验证(属于用户详细信息页面的字段验证) 因此,请在struts2中分享您的知识,使用一个action类和action-validation.xml进行两页(表单)验证。您可以使用和使用单个action

我正在创建一个struts2应用程序,它有一个登录页面和另一个用户详细信息页面。在这里,我只需要创建一个action类。因此,我无法通过将两个页面中的字段validation添加到action-validation.xml来运行应用程序。因为登录页面验证会验证validation.xml中的其余字段验证(属于用户详细信息页面的字段验证)

因此,请在struts2中分享您的知识,使用一个action类和action-validation.xml进行两页(表单)验证。

您可以使用和使用单个action类:

通配符映射

在struts.xml中,定义如下操作:

<action name="user-*" class="DoSomething" method="{1}" >
    <result name="input">/WEB-INF/{1}.jsp</result>
    <result name="success">/WEB-INF/{1}-success.jsp</result>
</action>
结果是,请求中连字符(“登录”或“详细信息”)后面的部分将替换操作定义中的
{1}
。因此,第一个URL将调用
DoSomething.login()
方法,在输入时转到login.jsp,或在成功时转到login-success.jsp

您所要做的就是在
DoSomething
类中定义
login()
details()
方法

验证规则关联

要将验证规则与
DoSomething
操作类关联,只需将包含它们的.xml文件命名为DoSomething validation.xml。由于用户登录和用户详细信息请求都使用该类,因此将为它们运行规则

http://yourapp.com/user-login.action
http://yourapp.com/user-details.action