在Struts中我们用html:errors标签在JSP页面上输出验证过程中产生的错误信息,错误信息一般来自于消息资源文件
(xxx.properties文件,一般位于classes目录下,文本文件),当然错误信息也可以是不是资源文件中的文本消息,而是自定义的文本。接
下来将详细讲述。
先来看一个简单例子
1、资源文件错误信息来源(其格式为key=value)
error.test=thisisatesterror.
2、
JSP页面中用于显示错误信息标签
-
<
html:errors
property
=
"testerror"
/>
3、ActionFormBean的validate()方
法中产生错误信息
-
ActionErrorserror=
new
ActionErrors();
-
error.add("testerror"
,
new
ActionMessage(
"error.test"
))
-
return
error;
这个例子的功能就是在ActionFormBean的validate()方法中产生一条名为:testerror
的错误信息,错误信息息是资源文件中key为error.test的值。然后在页面上用html:errors标签输出testerror这条错误信息。
这是最常用的一种功能,所有的错误信息都在资源文件里面。
有人会问,错误信息只能存放在资源文件中吗,其实不是这样。不需要资源文件也可以
产生错误信息。
我们再来看一下ActionMessage的另一种构造方法:
-
ActionMessage(Stringkey,
boolean
isresource)
如果isresource值为true,则表示key是资源文件中的key,产生的消息就是与key相对应的消息
如果isresource值为false,则表示key为一条普通的消息。
如果上面的error.add改为
error.add("testerror",newActonMessage("这是一条自定义消息",false",));那么页面上显示的将是:
这是一条自定义消息.
另外还可以用ActionMessage产生复合消息,比如我们要输出:xxx不能用作用户名,其中xxx是一个变量。
首先我们在资源文件中加一个条复合消息
testmsg={0}不能用作用户名。这里{0}是要被替换的参数。
我们再来看一
下ActionMessage的另一中构造方法
-
ActionMessage(Stringkey,Objectvalue0);
也就是说用value0的值来替换{0}
我们修改error.add为
error.add("testerror",newActonMessage("testmsg",""))
那么JSP页面上将显
示:不能用作用户名。
当然在一条复合消息中也可带多个参数,参数依次为{0},{1},{2}或更多
例
如:loginUser=用户名:{0}姓名:{1}登录次数:{2}.....
那么在产生错误消息时就用
newActionMessage(Stringkey,Objectvalue0,Objectvalue1,Objectvalue2.....)
或者使用对象数组newActionMessage(Stringkey,Object[]values)
-
String[]detail={
"Admin"
,
"王晶"
,
"12"
};
-
error.add("testerror"
,
new
ActionMessage(
"loginUser"
,detail))
分享到:
相关推荐
本文将详细介绍`html:errors`标签的使用方法,并结合Struts配置文件以及JSP页面和ActionForm的实例进行解析。 #### 二、Struts配置文件中的验证设置 在Struts框架中,为了使`html:errors`标签能够正常工作,首先...
Struts2 标签列表及说明 Struts2 是一个基于 Java 语言的 Web 应用程序 Framework,它提供了许多标签来帮助开发者快速构建 Web 应用程序。下面是 Struts2 的标签列表及说明: A: * <s:a>:超链接,类似于 HTML ...
- 在struts.xml配置文件中,你可以定义全局错误和消息资源文件,以便统一管理错误和消息的国际化。 - 例如: ```xml <package name="default" namespace="/" extends="struts-default"> ...
在Struts中,标签库是其MVC设计模式的一部分,提供了丰富的UI组件和逻辑控制,使得开发者能够更方便地在JSP页面中实现业务逻辑和视图层的分离。以下是对"struts常用标签及其用法"的详细阐述: 1. **显示数据标签**...
Struts提供了丰富的标签库,这些标签库主要分为两个部分:JSP标准标签库(JSTL)和Struts自定义标签库。JSTL用于处理通用的JSP任务,如迭代、条件判断等;而Struts自定义标签则专门用于处理MVC框架相关的任务,如...
Struts 2 标签库(文档手册) Tags-API-CLSW-JSP <%@ taglib prefix="s" uri="/struts-tags" %> 就能使用struts2.0的标签库 下面就介绍每个标签的具体应用实例说明:按字母排列 A: 1. 2. <s:a href=""></s:a>-...
`<s:actionmessage>` 和 `<s:actionerror>` 标签用于显示Action级别的消息和错误,这些通常与Struts2的全局消息和错误处理机制配合使用。 10. **Tag Attributes** 每个Struts2标签都有许多可配置的属性,这些属性...
`<html:errors>`标签会遍历ActionErrors中的所有ActionMessage,根据其key查找资源文件中的对应值,然后将错误信息显示在页面上。 总结来说,Struts的ActionForm`validate`方法是数据验证的关键,它允许我们在用户...
9. **Internationalization (i18n)标签**:Struts提供了`<s:text>`和`<s:messages>`等标签,支持多语言环境,可以从资源文件中动态加载文本。 10. **Ajax支持**:Struts2还提供了AJAX相关的标签,如`<s:a>`(异步...
4. **显示错误和消息**:在JSP页面中,使用Struts2的标签库(如`s:actionerror`和`s:actionmessage`)来遍历并显示`ActionContext`中的`ActionErrors`和`ActionMessages`。 ```jsp <s:if test="hasActionErrors()">...
- `s:text` 和 `s:resourcebundle`: 实现应用的多语言支持,通过不同的locale加载相应的资源文件。 5. **验证和错误处理** - `s:fielderror` 和 `s:errors`: 显示验证错误信息,方便用户修正输入。 - `s:action...
- 错误信息可以通过`ActionMessage`对象来创建,可以指定错误信息的键名(key)和对应的资源文件(bundle)。 - 最后返回包含所有错误信息的`ActionErrors`对象。 - 示例代码: ```java public ActionErrors ...
这个“中文-Struts2-Tags-API chm格式”的资源,正是一个详尽的Struts2标签API指南,包含了各种标签的使用方法和实例,对于理解和应用Struts2标签库非常有帮助。 Struts2的标签API主要包括以下几个部分: 1. **...
为了使错误信息更具可读性,可以在属性文件中定义`errors.header`和`errors.footer`属性,以定制错误信息的显示格式。 除了Action验证,Struts2还支持ActionForm验证,这种方式将验证逻辑放在ActionForm类中,通常...
- 使用Struts标签库中的`<html:errors>`标签来展示验证失败时的错误消息。 - 示例代码如下: ```jsp <%@ taglib uri="/struts-tags" prefix="s" %> <s:form action="login" theme="simple"> <s:textfield name...
本文将详细讲解Struts2中的各种标签,帮助开发者更好地理解和使用这个框架。 A. `<s:a>` 和 `<s:action>`: 1. `<s:a>`:用于创建超链接,与HTML的`<a>`标签类似,但更加强大,可以传递参数,支持动作映射。 2. `<s...
4. **错误信息国际化**:`ActionMessage`中的错误消息通常与资源文件(如`ApplicationResources.properties`)中的键关联,以便支持多语言。例如,`error.username.required`将在资源文件中找到对应的错误消息。 ##...
接着,为了使用这些资源文件,我们需要在Struts配置文件(struts-config.xml)中声明一个`<message-resources>`元素,指定资源文件的位置。例如: ```xml <struts-config> <!-- Action Mapping ...
在 `struts-config.xml` 中配置 Validator Plugin 和相关资源文件路径: ```xml <message-resources parameter="com.kevinb.struts.ApplicationResources"/> <plug-in className="org.apache.struts.validator....
- 在`login.jsp`中添加代码,使用Struts标签库中的`<html:errors>`标签来显示错误信息。 - 示例: ```jsp <%@ taglib uri="/struts-html" prefix="html" %> <html:errors/> <html:text property="username"/> ...