<s:token />标签防止重复提交
第一步:在表单中加入<s:token /><s:form action="helloworld_other" method="post" namespace="/test">
<s:textfield name="person.name"/><s:token/><s:submit/>
</s:form>
第二步:
<action name="helloworld_*" class="cn.itcast.action.HelloWorldAction" method="{1}">
<interceptor-ref name="defaultStack" />
<interceptor-ref name="token" />
<result name="invalid.token">/WEB-INF/page/message.jsp</result>
<result>/WEB-INF/page/result.jsp</result>
</action>
以上配置加入了“token”拦截器和“invalid.token”结果,因为“token”拦截器在会话的token与请求的token不一致时,将会直接返回“invalid.token”结果。
在debug状态,控制台出现下面信息,是因为Action中并没有struts.token和struts.token.name属性,我们不用关心这个错误:
严重: ParametersInterceptor - [setParameters]: Unexpected Exception caught setting 'struts.token' on 'class xxx: Error setting expression 'struts.token' with value '[Ljava.lang.String;@39f16f'
严重: ParametersInterceptor - [setParameters]: Unexpected Exception caught setting 'struts.token.name'
分享到:
相关推荐
此外,Struts2提供了内置的类型转换器,方便处理表单数据的自动类型转换。对于表现层,Struts2支持JSP、FreeMarker和Velocity等多种模板技术。 在验证方面,Struts2允许对特定方法进行输入验证,避免了Struts1中的...
黑马程序员的笔记中可能包含了如何创建一个简单的Struts2应用,从HelloWorld实例到实际的表单提交、文件上传下载等实战案例,帮助初学者快速掌握Struts2的基本用法。 通过学习这些笔记,开发者将能够理解Struts2的...
9. **Struts 2**:虽然资源名为"传智struts从入门到精通",但通常会涉及到Struts 1和Struts 2的对比,Struts 2在很多方面进行了改进,如使用更现代的OGNL表达式语言,提供更灵活的拦截器机制等。 10. **最佳实践**...
- **防止表单重复提交**:通过使用令牌(token)机制来防止用户的重复提交操作。 - **Struts 验证框架**:Struts 提供了一个强大的验证框架,可以在客户端和服务器端对用户输入进行验证,确保数据的有效性和安全性...
2. **表单验证**:使用Struts2的验证框架对用户输入进行校验。 3. **文件上传下载**:实现文件的上传和下载功能,涉及文件流的处理。 4. **Struts2与Ajax交互**:使用Struts2的JSON或者dojo插件实现异步请求。 5....
### 传智播客Struts2框架2016版视频教程笔记 #### 概述 Struts2是一个用于构建企业级Java Web应用程序的开源框架。它基于MVC设计模式,能够帮助开发者更加高效地组织代码结构,并提供了一系列实用的功能,如拦截器...
### 赖家材Struts 传智播客笔记知识点概览 #### 一、Struts 入门 ##### 1. Struts 入门简介 - **为什么使用 Struts**: - 建立在 MVC(Model-View-Controller)模式的基础上,Struts 主要在控制器(Controller)...
标题中的“传智168期JavaEE struts2杜宏 day 29~day31笔记”暗示了文档是一系列关于JavaEE技术栈中的Struts2框架的课程笔记,由杜宏教授,并且特别强调了是从29天到31天的学习内容。JavaEE(Java Platform, ...
4. **Action与结果**:每个Action代表一个业务操作,当用户提交表单或点击链接时,Struts2会根据配置找到相应的Action进行处理。处理完成后,Action会返回一个Result,Result可以是重定向、转发到另一个JSP页面或者...
- **文件的上传下载**:`DAY14【文件的上传下载】.docx`和`【扩展】文件的上传下载`会讲解如何在Struts2中处理文件上传和下载操作,涉及Commons-FileUpload库的使用。 - **发送Email**:`Java发送Email【传智播客...
以上就是传智168期SSH网上商城day41~day45的笔记中涵盖的主要知识点,结合实际的商城开发案例,我们可以看到SSH框架在Java Web开发中的广泛应用,以及在环境搭建、数据库设计、前端校验和浏览器兼容性等方面需要注意...
于洋的Struts2笔记可能涵盖了以下几个关键知识点: 1. **Action**:Action类是处理用户请求的核心,它接收HTTP请求,执行相应的业务逻辑,并通过Result返回响应。开发者可以通过继承`...