- 浏览: 3461200 次
- 性别:
- 来自: China
文章分类
- 全部博客 (536)
- ajax (1)
- Algorithm (14)
- Android (40)
- CSS/HTML... (2)
- defy (3)
- DesignPattern (2)
- dorado (0)
- Drools (6)
- English/日本語 (7)
- Flex (2)
- Framework (0)
- Google (3)
- hibernate (13)
- homework (3)
- HTML5 (0)
- IDE (29)
- java (45)
- javaee (7)
- Javascript (14)
- java组件 (5)
- jQuery (4)
- jsp (8)
- jsf (2)
- Linux (2)
- lucene (0)
- mysql (6)
- news (3)
- Oracle (8)
- other (4)
- PHP (5)
- Python (0)
- Software Engineering (3)
- spring (7)
- struts1.x (14)
- struts2.x (14)
- strolling in cloud (1)
- subject:javaEnhance (20)
- Tomcat (7)
- validator (3)
- 学习·方法·心得 (8)
- .NET (2)
- vba (6)
- groovy (5)
- grails (2)
- SWT (0)
- big data (1)
- perl (1)
- objective-c (50)
- product (1)
- mac (7)
- ios (188)
- ios-phone (2)
- ios-system (15)
- ios-network (5)
- ios-file (4)
- ios-db (1)
- ios-media (3)
- ios-ui (27)
- ios-openSource (6)
- ios-animation (5)
- ios-drawing (7)
- c (2)
- ios-app (2)
- ios-course (15)
- ios-runtime (14)
- ios-code (8)
- ios-thread (8)
- ios-LBS (2)
- ios-issue (1)
- ios-design (2)
- Jailbreak (2)
- cocos2d (0)
- swift (16)
- ios-framework (4)
- apple watch (4)
- ios-web (1)
- react native (3)
- TVOS (1)
- OpenGL (1)
最新评论
-
xiaobinggg:
...
Session机制详解 -
菜鸟学生会:
Drools规则工作流引擎开发教程网盘地址:http://pa ...
Drools入门-----------环境搭建,分析Helloworld -
wangyudong:
不是很好用,不支持自动化测试RESTful API,也不支持自 ...
Simple REST Client POST使用方法 -
Paul0523:
很棒的一篇文章,感谢楼主分享
Session机制详解 -
啸笑天:
获取原型对象的三种方法<script>functi ...
复习JavaScript面向对象技术
<html:errors>标签与<html:messages>标签都是用来输出request或session范围内的消息的。它们之间有着相同的地方,也有不同的地方
<html:errors/>标签
它表示输出request或session范围内的以“org.apache.struts.Globals.ERROR_KEY”为关键字存储的ActionMessages对象中的所有消息。
可通过以下属性的设置来输出指定的消息。
name属性:指定request或session范围内的关键字,该关键字指定了一个ActionMessages对象。若忽略该属性,则默认的关键字为“org.apache.struts.Globals. ERROR_KEY”。
property属性:用于指定由name属性指定的关键字指定的ActionMessages对象中的某个消息属性,该消息属性指定了某个ActionMessage对象。若忽略该属性,则<html:errors/>标签会输出指定ActionMessages中的所有消息。
bundle属性:指定消息资源文件。若忽略该属性则从默认的消息资源文件ApplicationResources.properties中获取输出的消息内容。
<html:messages>标签
<html:messages>有一个必添项id
该标签与<html:errors>标签相似,同样用来输出消息。它们之间有着相同的地方,也有不同的地方。
1.与<html:errors>标签的相同点
消息来源:<html:messages>标签要输出的消息来源与<html:errors>标签相同,同样可以通过saveErrors()或saveMessages()方法将ActionMessages对象存入request或session范围内。例如:
ActionMessage messages=new ActionMessages();
errors.add("username",new ActionMessage("com.logon.name.error"));
saveErrors(request,messages);
属性:<html:messages>标签的name属性、property属性、bundle属性以及footer属性、header属性分别与<html:errors/>标签中对应的属性用法相同。
2.与<html:errors>标签的不同点
属性
message属性,<html:errors>标签中不存在的属性。当忽略该属性或将其设为“false”时,则根据由name属性指定的关键字在request或session范围中查找该关键字存储的ActionMessages对象,若此时没有设置name属性,则查找以默认关键字“org.apache.struts.Globals.ERROR_KEY”存储的ActionMessages对象;若将message属性设为“true”,表示以“org.apache.struts.Globals.MESSAGE_KEY”关键字进行查找,并且此时设置的name属性无效。
id属性,该属性是<html:messages>标签必须存在的属性,而<html:errors>标签中不存在该属性。它用来指定一个JSP页面变量,该变量代表了每次从ActionMessages对象中遍历出的一个ActionMessage对象。
使用方法:单独使用<html:messages>标签是不能输出消息的。因为该标签完成的操作只是对ActionMessages对象进行遍历,并将每次遍历出的ActionMessage对象存储在id属性所指定的JSP页面变量中。所以通常情况下嵌套<bean:write>标签一起使用,<bean:write>标签中的name属性要与<html:messages>标签的id属性相匹配。
说明:<bean:write>标签用来输出由name属性指定的对象值。详细的介绍请参看本书中的第8章。
使用<html:messages>标签输出消息的代码如下。
<html:messages id="messageid" message="true">
<bean:write name="messageid"/>
</html:messages>
saveErrors(request,errors)方法将ActionMessages对象保存到了request范围内,并以“org.apache.struts.Globals.ERROR_KEY”关键字存储。Action基类中saveErrors()方法的关键代码如下。
protected void saveErrors(HttpServletRequest request, ActionMessages errors){
request.setAttribute(org.apache.struts.Globals.ERROR_KEY,errors);
}
在页面方可通过<html:errors bundle="user" property="nameEmpty"/>来显示相关错误的消息
或者
<html:messages id="error" bundle="user"
property="nameEmpty" >
<bean:write name="error"/>
</html:messages>
来取property="nameEmpty"的单个的错误消息(注:id只是一个标示,只要和bean:write的name属性保持一致即可)
----------------------------------------
或者
<html:messages id="error" bundle="user">
<bean:write name="error" />
</html:messages>
来取所有的错误消息
相当于
<html:errors bundle="user"/>
另外,还可以通过saveMessages(request,errors)方法将ActionMessages对象保存到request范围内,但此时在request范围中以“org.apache.struts.Globals.MESSAGE_KEY”关键字存储。Action基类中saveMessages()方法的关键代码如下。
protected void saveMessages(HttpServletRequest request, ActionMessages errors) {
request.setAttribute(org.apache.struts.Globals.MESSAGE_KEY,errors);
}
所以如果使用了saveMessages()方法存储消息,在使用<html:errors>标签输出消息时,要通过name属性来指定在request或session范围内以“org.apache.struts. Globals.MESSAGE_KEY”关键字来查找ActionMessages对象。否则此时忽略name属性,Struts会使用默认的关键字“org.apache.struts.Globals. ERROR_KEY”进行查找,将找不到存储的消息。
<html:messages id="error" bundle="user"
message="true">
<bean:write name="error" />
</html:messages>
或者
<html:messages id="error" bundle="user"
message="true" property="nameEmpty">
<bean:write name="error" />
</html:messages>
分别来取全部或者是单个的错误消息
注意点:
虽然Struts已经声明:不推荐使用ActionErrors
& ActionError对象,但在一些遗留的系统中,依然还是可以看到其影子,所以如果你的系统不幸属于这样的两种混合系统,有以下的几种方法可以参考
1。两次调用messagesPresent,如下
<!-- Print ActionErrors Object -->
<logic:messagesPresent>
<html:messages id="msg" message="true">
<div class="success">
<bean:write name="msg"/>
</div><br/>
</html:messages>
</logic:messagesPresent>
<!--
Print ActionMessages Object -->
<logic:messagesPresent message="true">
<html:messages id="msg" message="true">
<div class="success">
<bean:write name="msg"/>
</div><br/>
</html:messages>
</logic:messagesPresent>
2.分别使用<html:messages> <html:errors>标签,当然在老系统中需要调用Action的saveErrors方法,而在新的应用中要调用saveMessages方法。
3.更换所有的ActionErrors为ActionMessages,并将所有调用saveErrors的地方更换成saveMessages,并将<html:errors>标签相应的更换成<html:messages message="true"> - 推荐!
发表评论
-
struts 表单中的cancel按钮出错处理
2010-05-25 21:16 1790感谢:http://hi.baidu.com/shli ... -
Struts的配置详解
2010-05-25 21:10 1401在 Struts 的应用开发中,主要涉及到两个配置文件 ... -
struts1的几个对象---哪位大哥帮忙解释下
2010-05-24 20:18 1434<%@ page language=" ... -
tomcat中的一个过滤器例子
2010-05-22 03:14 2704感谢:http://www.iteye.com/wik ... -
<html:select>,<html:option>,<html:options>,<html:optionsCollection>标签使用
2010-05-16 22:34 16157<html:select>生 ... -
<html:checkbo>标签和ActionForm中的reset()
2010-05-12 20:26 2448<html:checkbox property= ... -
Strust组件—RequestProcessor类详解 (转)
2010-05-12 13:03 2070转自:http://hi.ba ... -
[摘]actionMessages(),actionError()介绍
2010-05-11 16:35 2520转自http://linweihan.iteye.com/bl ... -
bean:resource bean:include jsp:include
2010-05-08 00:08 1824bean:include 一。用于执 ... -
html:cancel按钮的作用,cancel按钮,取消按钮
2010-05-06 00:16 3042转自http://heisetoufa.iteye.c ... -
Struts的ActionForm中不同类型属性的使用方法总结(转载)
2010-04-29 01:50 1890平时做些多表格表单显示时,actionform中经常会用到 ... -
struts1.x问题集
2010-04-28 17:26 11341.MessageResources中的html标签 -
struts1.x随笔
2010-04-28 16:57 14511. <?xml version="1 ...
相关推荐
<s:param name="userId" value="%{user.id}" /> ``` ##### 30. `<s:password>` —— 密码输入框 - **功能**:创建密码输入框。 - **示例**: ```xml <s:password name="pwd" /> ``` ##### 31. `<s:property/>...
<bean:message key="welcome.message" bundle="resources.messages"/> ``` - **bean:size** `bean:size`标签用于获取集合或数组的大小。 示例代码: ```jsp <bean:size value="${userList}" var="listSize...
在`<logic:messagesPresent>`标签中,`<html:messages id="error" property="name">`会检查`name`属性是否存在消息,如果有则显示。 5. **消息按key显示**: 在Action中,键名(如`name`)必须与JSP页面上的属性值...
<html:messages id="msg" property="username"> <font color="red"><bean:write name="msg"/></font> </html:messages> ``` 7. **自定义验证器**:如果标准验证器不能满足需求,可以通过实现ValidatorRule接口...
例如,`<html:messages id="message" message="true">`展示消息,并通过`<bean:write name="message"/>`显示内容。 - `<html:checkbox>`:创建复选框,需要在ActionForm中定义对应的boolean属性。例如,`...
4. 在处理 Struts 中的错误和异常时,错误信息可以保存在 session 中,并通过 `<html:errors>` 或 `<html:messages>` 标签显示。`<html:errors>` 通常用于显示表单验证错误,而 `<html:messages>` 适用于全局错误...
<form id="myForm"> <input type="text" name="username" required> <input type="email" name="email" required> <button type="submit">Submit</button> </form> <script> $(document).ready(function(){ $(...
在<head>标签内添加如下代码: ```html <script src="https://code.jquery.com/jquery-3.x.y.min.js"></script> <script src="js/jquery.validate.min.js"></script> ``` 然后,对表单元素应用jQuery Validate插件...
通常,你可以在页面底部的`<head>`或`<body>`标签内添加如下代码: ```html <script src="https://code.jquery.com/jquery-3.x.y.min.js"></script> <script src="path/to/jquery.validate.min.js"></script> ``` ...
<script src="jquery.validate.min.js"></script> ``` 请确保路径正确,并根据实际情况选择合适的jQuery版本。 2. **基本配置** 对需要验证的表单添加`id`,然后在JavaScript中设置验证规则: ```javascript ...
正确** — 使用 `<html:errors>` 标签可以在页面上显示错误信息。 - **d. 错误** — `<html:messages>` 通常用于显示消息而非错误信息。 - **答案**: b 和 c. #### Spring 配置与 Bean 注入 7. **Spring Bean ...
在HTML文件中通过`<script>`标签引入,例如: ```html <script src="path/to/validation-framework.min.js"></script> ``` ### 三、JSValidation的基本使用 创建验证规则是JSValidation的基础操作。你可以为每个...
<form action="" method="post" novalidate="novalidate"> <!-- 表单内容 --> </form> ``` 综上所述,通过上述方法,我们可以有效地获取 Django 模型中的字段名及其 `verbose_name`,同时也能灵活地配置表单以满足...
2. **表单提交**:HTML中的`<form>`标签用于创建用户输入界面,`method="post"`或`method="get"`决定数据提交方式,`action`指定处理数据的PHP脚本。 **三、数据库交互** 1. **MySQL数据库**:通常PHP程序会配合...
默认情况下,它是`<label>`,但你可以根据需要将其设置为其他标签,如`<span>`、`<div>`等。当`errorElement`设置为`span`时,生成的HTML结构会包含一个带有`class=checked`和`generated="true"`属性的`<SPAN>`标签...
2. **字段渲染**:使用`as_p`方法将表单所有字段以段落形式渲染到HTML中,每个字段可以通过`label`设置标签ID,通过`字段`渲染指定字段。 3. **字段限制**:可以设置`min_length`和`max_length`限制输入字段的长度...
1. Introduction to Zend Framework 1.1. 概述 1.2. 安装 2. Zend_Acl 2.1. 简介 ... The MESSAGES metacommand 14.5.4.7. Using options to set metacommands for all rules 14.5.5. Adding Filter ...