`
senhehe
  • 浏览: 15417 次
  • 性别: Icon_minigender_1
  • 来自: 石家庄
社区版块
存档分类
最新评论

Struts标签<html:radio/>校验失败返回后默认值不能保持

阅读更多
最近看了看struts,遇到一个问题:
Struts标签<html:radio/>校验失败返回后默认值不能保持,纠结半天是乱码问题!!
1、标签页面
<strong>用户注册</strong>
		<html:form action="/register">
		
			用户名 : <html:text property="username"/><html:errors property="regun"/><br/>
			密码 : <html:password property="password"/><html:errors property="regpw"/><br/>
			确认密码 : <html:password property="password2"/><html:errors property="regpw2"/><br/>
			性别 : <html:radio property="sex" value="男">男</html:radio>
				  <html:radio property="sex" value="女">女</html:radio><br/>
			生日 : <html:text property="birthday" onclick="JTC.setday(this)" readonly="true"/><html:errors property="regbday"/><br/>
			邮箱 : <html:text property="email"/><html:errors property="regemail"/><br/>
			
			<html:submit value="提交"/><html:reset value="重置"/>
		</html:form>

2、actionForm中添加校验和默认值
public ActionErrors validate(ActionMapping mapping,
			HttpServletRequest request) {
		ActionErrors errors = new ActionErrors();
		if(username == null || username.trim().equals("")) {
			errors.add("regun",new ActionMessage("reg.error.username"));
		}
		if(password == null || password.trim().equals("")) {
			errors.add("regpw",new ActionMessage("reg.error.password"));
		}
		if(password2 == null || password2.trim().equals("") || !password2.equals(password)) {
			errors.add("regpw2",new ActionMessage("reg.error.password2"));
		}
		if(birthday == null || !birthday.matches("[0-9]{4}-[0-9]{2}-[0-9]{2}")) {
			errors.add("regbday",new ActionMessage("reg.error.birthday"));
		}
		if(email == null || !email.matches(".+@.+\\..+")) {
			errors.add("regemail",new ActionMessage("reg.error.email"));
		}
		return errors;
	}

	public void reset(ActionMapping mapping, HttpServletRequest request) {
		sex = "男";
	}

3、页面提交后,提示校验信息,但是<html:radio/>标签不显示默认值!
这种情况下不选择值,直接提交保存,可以保存,但是radio是乱码!
--------没有设置编码,添加编码的filter:
public static final String ENCODING = "UTF-8";

	public void destroy() {

	}

	public void doFilter(ServletRequest request, ServletResponse response,
			FilterChain chain) throws IOException, ServletException {

		((HttpServletRequest) request).setCharacterEncoding(ENCODING);
		((HttpServletResponse) response).setCharacterEncoding(ENCODING);

		chain.doFilter(request, response);
	}

	public void init(FilterConfig arg0) throws ServletException {

	}

便可以正常显示了,原来是中文传过程中编码出现问题。望借鉴!最好用英文字符!
分享到:
评论

相关推荐

    Struts2中实现页面的跳转

    如果想要调用Action,应该使用Struts2的标签库,如`&lt;s:actionexecute/&gt;`或`&lt;s:redirect/&gt;`。 解决“no found”问题的步骤可能包括检查上述所有方面,确保配置正确、路径无误、拦截器没有干扰,以及web.xml的错误...

    struts2 标签使用

    ### Struts2 `&lt;s:if&gt;` 标签使用详解 #### 概述 Struts2 是一款基于 Java 的企业级 Web 应用框架,它利用了 MVC(Model-View-Controller)架构模式来帮助开发者构建可扩展、易于维护的 Web 应用程序。在 Struts2 中...

    Struts2中使用标签实现组合查询和带分页的例子

    在Struts2框架中,`&lt;sx:&gt;`标签是Struts2 XWork库的一部分,用于增强JSP页面的功能,提供更强大的数据绑定和表单处理能力。本篇将重点讲解如何利用`sx:`标签实现组合查询和带分页功能。 首先,让我们了解下Struts2的...

    struts2标签库struts2标签库struts2标签库

    在Struts2标签库中,还有许多其他的标签,如&lt;s:checkbox /&gt;、&lt;s:radio /&gt;、&lt;s:textarea /&gt;等,每个标签都有其特定的使用场景和应用。 Struts2标签库提供了一系列的标签,帮助开发者快速构建Web应用程序,并提高了...

    <html:select>: 选择默认值

    `&lt;html:select&gt;`通常与`&lt;html:option&gt;`标签一起使用,后者用于定义每个可选项。 #### 二、设置默认选中的选项 为了设置`&lt;html:select&gt;`中的默认选中项,可以通过以下两种方式实现: 1. **通过`&lt;html:option&gt;`标签...

    struts2<s:if>使用心得

    在Struts2框架中,`&lt;s:if&gt;`标签用于条件判断,类似于Java中的if语句。本篇文章将深入解析这段代码所涉及的关键知识点,并通过实际案例帮助理解如何使用Struts2中的`&lt;s:if&gt;`标签进行逻辑控制。 ### Struts2概述 ...

    struts2标签技术

    &lt;s:property /&gt;&lt;br/&gt; &lt;/s:iterator&gt; &lt;/s:generator&gt; 例2: 生成一个iterator,使用count属性。因为count属性值为3,所以只有前三个内容(aaa,bbb,ccc)在生成的iterator中。 Generate an iterator with count ...

    struts标签(如<html:form>)

    关于STRUTS标签的一些详细说明。 如:&lt;html:form&gt;的说明。

    Struts 1.XX <html:file>的使用

    `&lt;html:file&gt;`是Struts提供的一个标签,主要用于处理用户在HTML表单中上传文件的功能。在Struts 1中,这个标签简化了文件上传的复杂性,使得开发者可以方便地将用户选择的本地文件传递到服务器。 首先,我们来看`...

    struts2标签库

    1. `&lt;s:if test=""&gt;&lt;/s:if&gt;`、`&lt;s:elseif test=""&gt;&lt;/s:elseif&gt;`和`&lt;s:else&gt;&lt;/s:else&gt;`:条件判断标签,用于控制页面的逻辑显示。 F部分: 1. `&lt;s:fielderror&gt;&lt;/s:fielderror&gt;`:显示字段级别的错误信息。 2. `&lt;s:...

    struts2 标签库 帮助文档

    &lt;%@ taglib prefix="s" uri="/struts-tags" %&gt; 就能使用struts2.0的标签库 下面就介绍每个标签的具体应用实例说明:按字母排列 A: 1. 2. &lt;s:a href=""&gt;&lt;/s:a&gt;-----超链接,类似于html里的&lt;a&gt;&lt;/a&gt; 3. &lt;s:...

    Struts2标签 s:if test 判断String类型的对象属性值和单字符是否相等的问题

    在Struts2框架中,`&lt;s:if&gt;`标签被广泛应用于页面上根据不同的条件显示或隐藏某些元素。它的工作原理是基于表达式的结果来决定是否渲染其内部的HTML代码。当涉及到对String类型的对象属性值与单个字符进行比较时,...

    Struts2标签列表及说明

    Struts2 标签列表及说明 Struts2 是一个基于 Java 语言的 Web 应用程序 Framework,它提供了许多标签来帮助开发者快速构建 Web 应用程序。下面是 Struts2 的标签列表及说明: A: * &lt;s:a&gt;:超链接,类似于 HTML ...

    Strust2的if-else <tr></tr>用法

    在这个例子中,`&lt;s:iterator&gt;`标签遍历一个名为`listOfObjects`的集合,`&lt;s:if&gt;`和`&lt;s:else&gt;`标签则根据`displayRow`变量的值决定是否渲染`&lt;tr&gt;`标签。`&lt;s:property&gt;`标签用于输出对象的属性值。 需要注意的是,`...

    Struts2标签详解及具体实例解析

    1. `&lt;s:a xhref=""&gt;` - 创建超链接,与HTML的`&lt;a&gt;`标签类似,但增加了Struts2的功能,如动作调用、参数传递。 2. `&lt;s:action name=""&gt;` - 执行视图中的一个Action,可以直接在页面上调用Action方法。 3. `&lt;s:action...

    Struts2标签库

    &lt;%@ taglib uri="/struts-tags" prefix="s" %&gt; 结合例子,重点掌握以下标签的用法 (1) &lt;s:property&gt; (2) &lt;s:set&gt; (3) &lt;s:if&gt; 、&lt;s:elseif&gt;、&lt;s:else&gt; (4) &lt;s:iterator&gt; (5) &lt;s:include&gt; (6) &lt;s:form&gt;、&lt;s:hidden&gt; (7...

    struts2标签大全

    在JSP中,我们通常使用`&lt;%@ taglib prefix="s" uri="/struts-tags" %&gt;`来引入Struts2的标签库。下面将详细介绍一些重要的Struts2标签及其功能。 **A. 超链接和Action标签** - `&lt;s:a href=""&gt;&lt;/s:a&gt;`:创建一个...

    struts2实现分页

    ### Struts2 实现分页及 `&lt;s:bean&gt;` 标签详解 #### 一、Struts2 分页概述 在 Java Web 开发中,为了提高用户体验并减轻服务器负担,通常采用分页技术来展示数据。Struts2 框架提供了一套强大的工具和标签库来帮助...

Global site tag (gtag.js) - Google Analytics