对于methodName 和resultName的区别很迷惑,查了很多资料都不得其解
最后在API中找到答案
引用
(1)Marks a action method that if it's not validated by ValidationInterceptor then execute input method or input result.
Annotation usage: The InputConfig annotation can be applied at method level.
Annotation parameters:
Parameter Required Default Notes
methodName no (2)execute this method if specific
resultName no (3)return this result if methodName not specific
(1)当验证方法没有通过时,改变默认返回的input视图
(2) 执行指定的方法
(3)返回result 如果methodName 没有指定
废话少说 上代码
- public class StudentAction extends ActionSupport {
- @InputConfig(methodName="input2",resultName="resultTest")
- public String inputConfigTest2(){
- return INPUT;
- }
- public void validateInputConfigTest2(){
- addFieldError("ss", "main validateInputConfigTest2");
- //validate方法在遇到 addFieldError方法时会自动返回input视图
- }
- public String input2(){
- return "test";
- }
- }
- <span style="font-size: medium;">public class StudentAction extends ActionSupport {
- @InputConfig(methodName="input2",resultName="resultTest")
- public String inputConfigTest2(){
- return INPUT;
- }
- public void validateInputConfigTest2(){
- addFieldError("ss", "main validateInputConfigTest2");
- //validate方法在遇到 addFieldError方法时会自动返回input视图
- }
- public String input2(){
- return "test";
- }
- }
- </span>
@InputConfig(methodName="input2",resultName="resultTest") 的作用是改变默认返回的input视图 API中可查
resultName只有在methodName没写如@InputConfig(resultName="resultTest") 时才起做用
Jsp页面
- <%@taglib prefix="s" uri="/struts-tags" %>//导入struts2标签
- <body>
- <s:fielderror/>
- inputconfig test
- </body>
- <span style="font-size: medium;"><%@taglib prefix="s" uri="/struts-tags" %>//导入struts2标签
- <body>
- <s:fielderror/>
- inputconfig test
- </body>
- </span>
上述代码只写了少部分 请自己配置 Action 并测试
调用方法 如 http://localhost:8080/struts2test10/studentAction!inputConfigTest2
相关推荐
5. **调试与验证**:为了方便开发者调试和验证 Convention 插件的效果,Struts2 提供了一个名为 ConfigBrowser 的工具。这个工具可以帮助开发者查看当前应用的所有 Action 名称及其对应的配置信息。只需要将 `struts...
- Annotation配置:Struts2也支持注解方式配置,可以在Action类或方法上直接标注,简化配置文件。 3. **拦截器(Interceptors)**: - 拦截器是Struts2的重要特性,它们在Action调用前后执行,可以实现日志记录、...
在Struts2中,输入验证可以通过两种方式进行:基于注解(Annotation-based)和基于XML配置(XML-configured)。本案例主要探讨的是基于XML配置的验证方式。这种方式的优点在于可以将验证规则与实际的Action类分离,...
- Struts2的拦截器是AOP(面向切面编程)的一种实现,可以用于日志记录、权限验证、事务管理等多种用途。 - 链式拦截器:多个拦截器按照定义的顺序执行,形成一个拦截器链。 **5. OGNL(Object-Graph Navigation ...
- **功能**:用于验证Action中的数据,支持自定义验证规则,并可以通过XML文件或注解定义验证逻辑。 26. **Workflow (工作流)** - **用途**:当Action中的`validate()`方法返回`false`时,可以通过此拦截器控制...
在描述中提到的"熟练掌握annotation的应用",就是指熟悉这些Struts2提供的核心注解,并能够灵活地在自定义的Action类中使用它们。 `反射技术`是Java语言的一个强大特性,Struts2利用反射来动态地调用Action类中的...
- **Interceptor**:拦截器是Struts2的核心特性,它允许在Action执行前后插入自定义逻辑,如权限检查、日志记录等。 - **ValueStack**:存储Action对象和Ognl表达式,用于视图层与模型层的数据交互。 2. **架构**...
2. **结果类型(Result Types)**:除了默认的JSP结果外,Struts2还支持多种结果类型,如FreeMarker、Velocity等模板引擎,甚至可以跳转到另一个Action。 3. **插件支持(Plugin Support)**:Struts2允许扩展其...
3. **Interceptor注解**:Struts2的拦截器可以使用注解进行配置,允许开发者自定义拦截器链。例如,`@SkipValidation`注解可以跳过特定方法的验证过程: ```java public class LoginAction { @SkipValidation @...
通过在ActionForm类中重写`validate()`方法并实现逻辑,可以自定义验证规则。此外,还可以使用Struts的`<logic:errors>`标签来显示验证错误信息。 6. **解释Struts的Tiles** Tiles是Struts的一个插件,用于管理...
Struts的跳转页JSP命名应与请求路径相同** - 例如,如果请求路径为`/customer`, 那么对应的JSP页面应命名为`customer.jsp`。 #### 二、Struts使用及类使用约定 **1. 整个Struts2框架的一般流程** - Struts2框架...
在你的例子中,你发现Spring Session需要Spring MVC支持,这意味着在Spring整合Struts2的项目中,你可能需要自定义拦截器或实现特定接口来实现session的管理。 6. **问题与调试**: 当遇到配置问题时,首先检查...