`
yourgame
  • 浏览: 355271 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Sturts2提交表单后,执行2次Action的离奇问题.

阅读更多
今天学习Sturts2,简单做了一个登录示例,
我登录成功则进入主页面,没有问题.
当我登录失败后,重新返回到登录页面后,就发现我的Action会重复执行

我排除了代码后配置错误的可能.

于是我着重对这个登录页面进行检查,
我先新建一个没有任何样式和图片的登录页面,发现无论我登录成功与否,都不会有重复执行Action的我问题.

现在我基本可以判断问题是处在这个页面了
最后我发现我的页面中有这样一行代码
<IMG height=8 alt="" src="#" width=1 border=0>


问题也就是这行代码中的src="#"
于是我把这行代码删除,发现问题解决,后来我试了一下,把src的值改成一个找不到的资源也不会出现这个问题.

为什么src="#" 就会出出现重复执行请求呢?
分享到:
评论
2 楼 yourgame 2008-10-12  
引用
src="#" 就是指当前URL啊


受教了,谢谢
1 楼 iday 2008-10-11  
src="#" 就是指当前URL啊

相关推荐

    sturts2防止表单的重复提交 token

    Struts2为解决这个问题引入了Token机制,确保每个表单提交只被处理一次,避免了由于用户意外刷新页面导致的重复请求。 首先,我们来了解一下什么是表单重复提交问题。当用户填写并提交一个表单后,如果网络延迟或者...

    Sturts2.rar

    在本示例中,"Sturts2.rar"可能包含了一个演示如何使用Struts2实现文件上传功能的项目。文件上传是Web应用中常见的需求,它允许用户上传文件到服务器。 在Struts2中,处理文件上传主要依赖于Apache Commons ...

    sturts2入门例子

    例如,你可以在这里指定Action类、请求URL与Action的对应关系,以及Action执行后的跳转页面。 5. **OGNL (Object-Graph Navigation Language)**:Struts2默认使用OGNL作为表达式语言,用于在视图层和模型层之间传递...

    sturts2的增删改查

    - Struts2提供了一种强大的表单验证机制,可以通过在Action类的模型属性上添加注解或者编写XML验证文件,来实现客户端和服务端的数据校验。 6. **结果类型和视图** - CRUD操作完成后,需要将结果传递给视图层展示...

    sturts2下的HelloWorld

    你需要指定Action的名称、类名、以及Action执行成功或失败后的结果路径。例如,你可以定义一个Action,当用户成功登录时重定向到欢迎页面,而失败时显示错误消息。 在Action中访问`HttpSession`是处理会话状态的...

    sturts2经典案例

    Struts2通过`struts标签库`(例如`s:form`、`s:textfield`、`s:submit`等)与Action进行交互,将Action的属性暴露给页面,同时接收并处理页面提交的表单数据。 对于增删改查操作,每个操作通常对应一个Action。例如...

    sturts2的jar包

    4. **结果类型(Result)**:Action执行后,会返回一个结果,Struts2支持多种结果类型,如`dispatcher`(转发到JSP页面)、`redirect`(重定向URL)、`stream`(流式结果,如下载文件)等。 5. **插件体系**:...

    sturts2校验总结

    在“输入校验(老师讲的).doc”这个文档中,可能详细讲解了如何编写和配置这些验证规则,包括如何创建验证表单、如何处理验证失败后的结果、如何自定义验证逻辑以及如何使用Struts2提供的工具和插件来优化验证流程。...

    sturts2安装及工作流程

    6. **结果类型(Result Types)**:Struts2的结果类型定义了Action执行后的跳转方式,可以是JSP、FreeMarker模板、直接返回JSON或XML等。这使得视图层的渲染更加多样化。 7. **OGNL(Object-Graph Navigation ...

    sturts2第二部分

    "Sturts2第二部分"可能是指由于文件大小限制,将Struts2的完整压缩包分为两个部分进行上传,这部分包含了Struts2框架的后续内容。 在`src`目录下,通常会包含Struts2框架的源代码。源码是理解框架工作原理的关键,...

    sturts2远程代码执行漏洞解决方法

    然而,如同任何其他复杂系统一样,Struts2也存在安全漏洞,其中“Struts2远程代码执行漏洞”是一个严重的问题,可能允许攻击者在服务器端执行任意代码,从而对系统的安全性构成重大威胁。 这个漏洞主要涉及到Struts...

    Sturts 2 框架在线答疑系统

    在“Sturts 2 框架在线答疑系统”中,用户可以提交问题,系统对输入的数据进行验证。如果问题字段为空,系统将提示用户填写。一旦验证通过,系统将保存问题并可能触发一个答疑过程,例如发送通知给专家或管理员。这...

    sturts2权威指南.pdf

    3. **拦截器(Interceptors)**:Struts2的一大创新是拦截器机制,它允许在Action执行前后插入自定义的处理逻辑,如日志记录、权限验证等,增强了框架的灵活性和可扩展性。 4. **配置与注解**:Struts2支持XML配置...

    sturts2经典教程

    `Result`是Action执行后的结果,它可以将控制权转向不同的视图,如JSP、FreeMarker模板等。Struts2支持多种结果类型,提供了丰富的渲染机制。 关于`Struts2标签`,它们简化了视图层的开发,使开发者能够更专注于...

    sturts2整合json的jar 包

    Struts2是一个流行的Java Web应用程序框架,用于构建和维护可扩展且易于管理的企业级应用程序。在Struts2中集成JSON(JavaScript Object Notation)技术,可以让应用与客户端进行更高效的数据交互,通常用于Ajax...

    sturts2中文教程~

    4. **Result(结果)**:Action执行后,会返回一个结果,这个结果可以决定页面跳转或者执行其他操作。 **二、Struts2的工作流程** 1. 用户发送HTTP请求到服务器。 2. Struts2的前端控制器(FilterDispatcher或...

    Sturts2的学习

    然而,这种设计也带来了内存消耗的问题,因为每次请求都会创建一个新的Action实例。 在Struts2中,有三种创建Action的方式: 1. 自定义Action类:你可以创建一个继承自`ActionSupport`或直接实现`Action`接口的类,...

    sturts2课件第三天

    在“Sturts2课件第三天”的学习中,我们可能会涉及以下关键知识点: 1. **Struts2架构**:理解Struts2的核心组件和工作流程,包括Action、Result、Interceptor、Plug-in等,以及它们在请求处理中的作用。 2. **...

    sturts2中文文档

    - 拦截器在Struts2中起到了非常重要的作用,它们可以在Action执行前后进行一些预处理或后处理操作。 - 常见的拦截器有:参数绑定拦截器、验证拦截器等。 - 开发者可以根据需要自定义拦截器,实现更复杂的逻辑。 ...

Global site tag (gtag.js) - Google Analytics