`
hyhai7
  • 浏览: 35282 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

如何效验父类继承了ActionSupport类的输入数据

阅读更多
请问如何效验父类继承了ActionSupport的类的输入数据,可能我问的也不是清晰,请告诉指点!

UserRootAction.java 父类
package com.dhsj.stu.action.root;

import com.dhsj.stu.entity.Admin;
import com.dhsj.stu.service.BaseDaoService;
import com.opensymphony.xwork2.ActionSupport;

public class UserRootAction extends ActionSupport {  //父类,继承了ActionSupport
	
	private static final long serialVersionUID = 1L;
	protected BaseDaoService baseDaoService; //业务逻辑接口
	public Admin admin; //实体类
	
	public void setAdmin(Admin admin) {
		this.admin = admin;
	}
	public Admin getAdmin() {
		return admin;
	}

	public BaseDaoService getBaseDaoService() {
		return baseDaoService;
	}
	public void setBaseDaoService(BaseDaoService baseDaoService) {
		this.baseDaoService = baseDaoService;
	}

}


UserAction.java 子类
package com.dhsj.stu.action;

import java.util.List;

import org.hibernate.criterion.DetachedCriteria;
import org.hibernate.criterion.Restrictions;

import com.dhsj.stu.action.root.UserRootAction;
import com.dhsj.stu.entity.Admin;
import com.opensymphony.xwork2.ActionContext;

public class UserAction extends UserRootAction { //子类
	private static final long serialVersionUID = 1L;
	
	public String login() throws Exception{ //实现登陆的方法
		DetachedCriteria criteria=DetachedCriteria.forClass(Admin.class);
		this.baseDaoService.findAll(criteria);
		criteria.add(Restrictions.eq("username", admin.getUsername())).add(Restrictions.eq("password", admin.getPassword()));
		List<Object> userList=this.baseDaoService.findAll(criteria);
		if(!userList.isEmpty()){
			ActionContext.getContext().getSession().put("user", admin.getUsername());
			return SUCCESS;
		}
		this.addActionError(getText("loginError"));
		return INPUT;
	}
}


struts.xml
	<package name="user" extends="struts-default" namespace="/stu">
		<action name="*User" class="userAction" method="{1}">
			<result name="input">/index.jsp</result>
			<result name="success">/WEB-INF/page/success.jsp</result>
			<result name="error">/WEB-INF/page/error.jsp</result>
		</action>
	</package>


appliactionContext.xml
	<bean name="userAction" class="com.dhsj.stu.action.UserAction" scope="prototype">
		<property name="baseDaoService" ref="baseDaoService" />
	</bean>


<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE validators PUBLIC "-//OpenSymphony Group//XWork Validator 1.0.2//EN"
 "http://www.opensymphony.com/xwork/xwork-validator-1.0.2.dtd">

<validators>
	<field name="admin.username">
		<field-validator type="requiredstring">
			<message>请输入用户名!</message>
		</field-validator>
	</field>
	<field name="admin.password">
		<field-validator type="requiredstring">
			<message>请输入密码!</message>
		</field-validator>
	</field>
</validators>




登陆不成功跳转到登陆页面,但是,如果没有输入数据,不会显示效验的信息,请问怎么修改,是在父类做效验还是在子类做效验?我两者都做效验都不行,依然不会显示错误提示,请告手帮忙解决这个问题!!!

问题已经解决,忘记在这里补充了,其实是在子类和父类中只要效验一方就可以了。
分享到:
评论

相关推荐

    struts 2 基础2__继承ActionSupport完成输入校验

    在基础的Struts2应用中,我们常常会继承`ActionSupport`类来实现输入校验,从而提高代码的复用性和可维护性。 `ActionSupport`是Struts2提供的一种基础Action实现,它包含了默认的行为,如错误处理、国际化支持和...

    自定义Action继承ActionSupport实现简单登录

    当我们需要实现一个特定的功能,比如这里的“简单登录”,我们可以创建一个新的Action类并继承`ActionSupport`,这样可以利用其提供的便利功能,同时添加自己的业务逻辑。 首先,让我们了解下`ActionSupport`类的...

    Struts2继承ActionSupport例子

    1. **字段验证**:`ActionSupport`提供了内置的验证机制,通过在Action类中定义`validate()`方法,可以对用户输入的数据进行校验。如果验证失败,将会返回一个错误消息集合,这些消息可以在页面上展示给用户。 2. *...

    Spring和Struts整合---继承ActionSupport的方法

    5. **编写Action类**: 继承`ActionSupport`,并实现业务逻辑。使用`@Autowired`注解或其他方式注入需要的依赖。 6. **测试**: 使用JUnit或其他测试框架编写单元测试,验证Action的行为和依赖注入是否正常工作。 ...

    ActionSupport与action区别1

    有两种常见的创建Action的方式:实现Action接口和继承ActionSupport类。这两种方式各有特点,但ActionSupport类通常更受开发者青睐,因为它提供了许多内置的功能。 1. 实现Action接口(implements Action) 当一个...

    ActionSupport接口类

    action类中为何要继承ActionSupport这个接口类。

    使用Spring 的ActionSupport 类整合 Struts,Hibernate实例

    ActionSupport是Spring MVC框架中的一个基础类,它继承自Struts2的ActionSupport类。这个类提供了诸如错误和消息管理、状态维护等功能,使得在Spring MVC中可以方便地集成Struts2的一些特性。在整合过程中,我们可以...

    【张冰Struts2学习笔记】0201_Action接口与ActionSupport类

    1. **字段绑定**:`ActionSupport`类实现了`ModelDriven`接口,可以自动将请求参数绑定到Action类的私有属性上,方便数据的获取。 2. **类型转换**:通过`ConversionService`,`ActionSupport`可以自动进行类型转换...

    ActionSupport源代码

    总结,ActionSupport是Struts2中一个非常关键的类,它简化了Action的实现,提供了数据验证、本地化和错误处理等功能。通过继承ActionSupport,开发者可以快速构建符合Struts2规范的Action,而无需从头开始实现所有...

    Struts 2 数据校验功能及校验问题的解决方案

    首先,ActionSupport类是Struts 2提供的一个基础类,开发者通常会自定义Action类时继承它。ActionSupport不仅实现了Action接口,还提供了验证、本地化等功能。Action接口包含了一些预定义的常量,如SUCCESS、NONE、...

    ActionSupport源码

    ActionSupport源码

    校验框架1

    本篇文章将聚焦于“校验框架1”,具体是Struts2框架中的数据验证机制,包括如何通过继承ActionSupport类以及利用内置的校验框架来实现有效的用户输入验证。 【标签】:“doc文档” 【正文】: Struts2作为一款...

    Struts2数据输入验证教程详解

    - `RegisterAction`:继承自`ActionSupport`,重写`validate()`方法或`validateRegister()`方法,添加验证逻辑。例如,检查用户名是否为空,密码是否一致等。 4. XML配置文件验证: 除了重写Java方法,Struts2还...

    默然说话struts2入门2-标签及ActionSupport.rar-part1

    入门级,无声视频,这一集比上一集感觉拍得好多了,找到一些窍门。 对Struts2的标签导入,错误信息显示,ActionSupport类的addFieldError()方法,validate()方法,execute()方法的使用进行了介绍。

    J2EE课堂小测试_答案

    ActionSupport类是Struts2实现Action接口的一个重要基类,继承该类会导致代码污染,webWork不强制要求继承ActionSupport基类,但继承该类后,可以提供更多的额外功能,如国际化、输入校验等。 Action的默认处理类:...

    使用Spring , ActionSupport ,struts1整合实例

    例如,创建一个Action类的Bean,这个类可能继承自`org.apache.struts.action.ActionSupport`,以便利用其内置的错误处理和国际化支持: ```xml ``` 这里的`MyAction`类需要实现`execute`方法,这是Struts1中...

    struts2 简单数据校验

    - 创建一个ValidatorForm或者继承ActionSupport的Action类,这些类包含了内置的校验逻辑。 - 使用`@Field`或`@Property`注解定义字段级别的验证规则,如`@NotEmpty`、`@Min`、`@Max`等。 - 或者在struts.xml文件...

    Struts2的输入校验实例代码

    - **步骤二:继承ActionSupport**:为了利用Struts2的内置校验功能,自定义的Action类需要继承`ActionSupport`类,这个类提供了默认的校验行为。 - **步骤三:覆盖Validate方法**:在Action类中覆盖`validate`方法...

    用struts2拦截器实现输入数据过滤前后空格

    首先,创建一个新的Java类,让它继承自`org.apache.struts2.interceptor.StrutsPrepareAndExecuteInterceptor`或者`com.opensymphony.xwork2.interceptor.AbstractInterceptor`,并实现`intercept()`方法。...

Global site tag (gtag.js) - Google Analytics