近期由于项目需求变更.须要本人对当中的某个业务功能进行改动.本人依照前台页面找action,依据action找代码的逻辑进行了改动(公司项目是ssh框架,struts配置全部是通过注解的方式进行.配置简单方便).当然測试人员也成功的进行了測试,发现没有不论什么问题,成功发版.奇葩事情来了.在发版环境中,改动的代码总是没用! 没办法,问题还是要解决.在确认了发版环境的确是最新代码之后,回自己座位找原因. 这次我用action名称全局搜索项目project,尼玛发现两个重名action,当然我仅仅改…
前言: 前面已经有一篇随笔介绍了Struts2的大概原理.本文就Struts2中Action与jsp页面进行数据对接时介绍几种常见方法! 值栈ValueStack 3个Action Action1 package com.gdufe.action; import com.opensymphony.xwork2.ActionSupport; /* * Action接收参数之后通过set方法赋给普通变量age,name; */ public class UserAction1 extends Act…
一.Action名称的搜索顺序 1.获得请求路径的URI,比如url是:http://server/struts2/path1/path2/path3/test.action 2.首先寻找namespace为/path1/path2/path3的package,假设不存在这个package则运行步骤3:假设存在这个package,则在这个package中寻找名字为test的action.当在该package下寻找不到action 时就会直接跑到默认namaspace的package里面去寻找ac…
因为需要在项目中构造restful的链接,action通配符使用/进行分割.但是struts默认不支持反斜杠. 所以需要在Struts.xml配置 <constant name="struts.enable.SlashesInActionNames" value="true"/> 即可使用反斜杠.…
搜索顺序 获得请求路径的URI,例如URL为:http://localhost:8080/struts2/path1/path2/path3/student.action 首先寻找namespace为/path1/path2/path3的package, 如果不存在这个包,则执行步骤3: 如果存在这个 package,则在这个 package 中寻找名字为 student 的 action,当在该 package下寻找不到 action 时就会直接跑到默认 namespace 的 package…
1.struts中Action的开发方式 继承ActionSupport类,这种方法实现的Action可以进行数据校验: 实现Action接口: 不继承任何类,不实现任何接口: 是否继承类或实现接口,struts都会进行默认拦截器的启动,拦截器的启动和Action没有关系. 2.struts中的通配符 在对action进行配置时,会有重复的情况 <action name="login" class="com.juaner.action.UserAction"…
struts中action类继承了ActionSupport  默认实现了execute()方法 struts.xml配置文件中 然后可以配置如下映射: <package name ="ActionDemo" extends ="struts-default"> <action name ="HelloWorld" class ="tutorial.HelloWorld"> <result>…
前言 本文简要介绍了Apache Struts的OGNL注入缺陷,文章中介绍使用简单的应用程序复现OGNL注入.深入研究针对公共漏洞,并理解这类漏洞. 内容 安装Apache Tomcat服务器(入门) 熟悉Java应用程序在服务器上的工作方式(Web服务器基础知识) Struts应用程序示例(Struts应用程序示例) 表达语言注入(表达式语言注入) 了解OGNL注射(对象图导航语言注入) CVE-2017-5638根本原因(CVE-2017-5638根本原因) CVE-2018-11776根…
在struts2中action的分类有:继承 ActionSupport 实现 Action,模型驱动(ModelDriven)的 Action,多方法的 Action三种方式. 1.继承 ActionSupport 实现 Action 通过继承 ActionSupport 来实现 Action 是我们的推荐做法,因为 ActionSupport 中提供了输入验证.国际化.execute 等常用方法,使得编写 Action 时代码很简单. 1.1 UserAction.java package…