struts 2
q1054261752
这个作者很懒,什么都没留下…
展开
-
对action中的某个方法进行校验
在xxxAction中配置多个校验逻辑(1)xxxAction中一个校验方法public String abc()throws Exception{}(2)struts.xml中为该action设置method="abc"(3)校验XML命名:xxxAction-abc-validation.xml(4)注:在这种情况下,xxxAction-validation.xml依然会校验,原创 2016-06-23 20:06:20 · 527 阅读 · 0 评论 -
26.Struts2文件下载并在下载文件之前进行权限检查
文件下载: 可能有人疑问:直接把文件放在Web应用的根路径下,即可实现文件下载。 但实际上可能存在如下问题: 1.当文件名有中文字符时,就无法下载了。 2.直接放在Web应用的根路径下,将导致所有人可以自由下载该资源,毫无安全性可言。 为了解决上面两个问题,此时就需在通过struts 2的文件下载进行控制了。 实现文原创 2015-10-15 20:52:10 · 435 阅读 · 0 评论 -
struts 的文件上传
文件上传 传统的文件上传 (1)需要将form的enctype设置multipart/form-data 此时会将整个表单以二进制的方式进行提交。 接下来就无法通过request.getParameter来获取请求参数。 (2)需要启用一个文件上传的组件(SmartUpload、Common-FileUpload)原创 2015-10-13 16:23:54 · 402 阅读 · 0 评论 -
27.使用iterator标签时常见的错误
当iterator标签的var与属性名相同时会发生如下的错误var命名为user时,放入valueStack中,将访问不到users集合中的值,需是访问到刚放入值栈中的user对象为此,我们也可以这样这访问users集合原创 2015-10-15 22:25:02 · 395 阅读 · 0 评论 -
完全自定义的输入校验
完全自定义的输入校验: 假设如下需求,系统要求用户名不能与系统已有的用户名重复。 这种校验要求,它是具有一定的业务相磁的,并不是通用的校验规则。 Struts 2允许开发者通过重写validate()进行校验。 ---只有当我们要进行校验,是特定业务所要求的,才考虑使用该方法。 推荐采用的校验方式。转载 2015-10-23 16:25:55 · 371 阅读 · 0 评论 -
action请求参数决定结果
配置元素时,不仅可以使用${1}表示形式琮指定视图资源,还可以使用${属性名}方式来指定视图资源。而且,不仅允许使用这种简单的表达式形式,还可以使用完全的OGNL表达式,即使用如下形式:${属性名.属性名.属性名}。1. (在url中传入要跳转的参数来控制要跳转的页面) 可以用action类中的一个属性,在method方法中给其赋值来指定要跳转的页面,用另一个属性来作原创 2015-10-14 21:55:03 · 331 阅读 · 0 评论 -
struts 2的action中配置result视图结果加反斜杠的注意事项
当在配置Action的时候,如果没有配置namespace的时候,且物理视图资源在WebRoot下,则在视图资源下加反斜杠一样如下: hello.jsp /hello.jsp 而当namespace中加上了,空间名,就一定要加上反斜杠了:原创 2015-10-14 21:37:03 · 862 阅读 · 0 评论 -
Invalid result location value/parameter 解决办法
关于MyEclipse对Struts2配置文件较检异常 Invalid result location value/parameter有时候Struts.xml配置没有错误,完全可以顺利运行,而MyEclipse9以上版本却经常出现一大坨错误标识,错误信息是Invalid result location value/parameter搜索了一下,结果大多都是转载的某个“技巧转载 2015-10-14 22:12:57 · 2081 阅读 · 0 评论 -
result元素4种结果类型
dispatcher是Struts 2默认的结果类型。dispatcher与redirect的区别是:前都是服务器跳转,而后者是客户端的跳转。redirect与redireAction两种结果类型,都是重新生成一个新的请求,区别是前者是一个具体的资源请求(如要求跳转一个网页),而后者通常用于生成一个对其他Action的请求。两个都是客户端跳转。chain原创 2015-10-13 21:54:04 · 2175 阅读 · 0 评论 -
国际化的原理、步骤、分类
Struts2框架对Java程序国际化进行了进一步的封装,从而简化了国际化应用程序的开发原理Struts2提供了一个名i18n的拦截器,在默认情况下将其注册到拦截器栈defaultStack中。在执行Action方法前,i18n拦截器查找请求中的一个名为“request_locale”的参数。如果其存在,拦截器就将其作为参数,转化成Locale对象,并将其设为用户默认的区域(L转载 2015-11-13 16:38:21 · 1519 阅读 · 0 评论 -
<s:fielderror>标签指定要显示字段的信息显示
单独通过标签将必填项的错误信息展示出来: user.userid user.username user.password原创 2015-10-31 17:28:30 · 2067 阅读 · 0 评论 -
s:url标签使用
一. value value以字符处理: value明确指定以ognl表达式处理: 二. action Welcome " rel="stylesheet" type="text/css"/> Commands ">Sign On ">转载 2015-11-24 16:53:35 · 962 阅读 · 0 评论 -
struts2的s:iterator 标签 详解
id已经被var代替,status是迭代状态,从零开始.如果设置status="s",可以这么写: test="s.index==0"> ----------下面介绍下简单的demo:s:iterator 标签有3个属性:value:被迭代的集合id(即现在的var,表示句柄,) :指向集合中的正在被迭代的元素s转载 2015-11-25 19:45:13 · 408 阅读 · 0 评论 -
struts2 ValueStack的set方法与setValue方法的区别
错将set 方法 用成 setValue方法Struts Problem ReportStruts has detected an unhandled exception: Messages:No object in the CompoundRoot has a publicly accessible property named 'pageBean' (n转载 2016-07-18 11:03:41 · 1929 阅读 · 0 评论 -
<welcome-file>index.action</welcome-file>直接设置action,404和struts2中的解决方案
这几天的项目页面的访问全部改为.action访问,在修改首页时遇到了问题。将web.xml文件中index.action修改成这样,访问首页时报404错误,也就是说文件找不到。上网查了有两种解决方法。 方法一、在WebRoot下新建一个index.action空文件,这个方法简单实用,强烈推荐。 方法二、因为 welcome-file 必须是实际存在的文件,不能是action转载 2016-06-20 19:45:44 · 2167 阅读 · 0 评论 -
3种方法解决Struts2中forward问题!通过jsp:forward跳转到WEB-INF 下的action中
在Struts2中沿用Struts1.2的失效,报404错误。因为Struts2采用过滤器的方式处理请求,REQUEST,当到达页面时,FORWARD跳到Action。但是这个客户端的FORWARD并没有被拦截下来,所以找不到了。从而报出404错。记得当时试过很多方法,都不行。连一些基本的include都无法使用,所以研究了一下,结合网友提供的。解决办法1、配置web.xml 解决转载 2016-07-13 22:08:19 · 3559 阅读 · 0 评论 -
关于struts2使用模型形驱动,在页面上怎样取得值
模型驱动与属性驱动的区别->属性驱动 对于属性驱动,我们需要在Action中定义与表单元素对应的所有的属性,因而在Action中会出现很多的getter和setter方法->模型驱动 对于模型驱动,使用的Action对象需要实现ModelDriven接口并给定所需要的类型.而在Action中我们只需要定义一个封装所有数据信息的javabean->属性和模型驱动的相同原创 2016-06-28 20:24:07 · 1875 阅读 · 1 评论 -
eclipse中配置struts2出现There is no Action mapped for namespace [/] and action name [Login] associated w
下午在eclipse中配置struts2时报:There is no Action mapped for namespace [/] and action name [Login] associated with context path [/eprint]错误做如下检查:1、确保struts.xml文件名大小写正确:struts.xml2、确保struts转载 2016-05-01 10:27:06 · 652 阅读 · 0 评论 -
struts2验证框架将验证信息输出到指定位置
form name="form1" action="login" method="POST"> s:token>s:token> table border="1" cellspacing="10" cellpadding="5" style="width:100%; border-collapse:collapse;"> tr转载 2015-12-27 19:16:47 · 651 阅读 · 0 评论 -
关于用ActionContext类添加用户状态信息的问题
为了访问HttpSession实例,Struts 2提供了一个ActionContext类,该类提供了一个getSession()方法,但是该方法的返回值并不是HttpSession,而是Map。这又是为什么? 实际上,这与Struts 2的设计哲学有关,Struts 2为了简化Action类的测试,将Action类与Servlet API完全分离,所以返回的是Map类型,而不转载 2015-12-25 21:02:28 · 509 阅读 · 0 评论 -
Struts 2框架的大致处理流程
1.浏览器发送请求,例如请求/mypage.action2.核心控制器StrutsPrepareAndExecuteFilter(struts准备执行过滤器)根据请求决定调用合适的Action3.Struts 2的拦截器链自动对请求应用通过功能,如workflow、validation、或文件上传等功能。4.回调Action的execute方法,该execute方法先获取用户请求参数,转载 2015-12-25 20:12:21 · 443 阅读 · 0 评论 -
struts 2的Ajax支持
Ajax(Asumchronous Javascript and XML): "偷偷",在后台以”异步“方式发送请求,并用服务器响应局疗更新页面。 <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN" "http://struts.apach转载 2015-11-30 13:33:41 · 312 阅读 · 0 评论 -
关于在浏览器中输入含有中文的下载的文件的问题引发的问题
像这样输入一个图片的名字,下载文件如果,想要正常的下载,我们需要进行转码public String getResName() throws UnsupportedEncodingException { return new String(resName.getBytes(),"iso-8859-1"); } public void setResName(String resName)原创 2015-11-12 23:11:39 · 318 阅读 · 0 评论 -
struts的国际化
程序国际化 程序可以根据机器据在的国家,语言环境,自动显示当前国家、语言的内容。国际化的本质是:查找、替换。国际化的步骤:(1)为不同的国家、语言环境提供资源包。如果你的国际化语言资源包中有非西欧字符,要使用native2ascii命令处理该文件。(2)在程序中输出的国际化消息的key.struts 2的国际化1.支持模块化加载。2.stru原创 2015-10-06 20:57:09 · 314 阅读 · 0 评论 -
struts2的DevMode(开发模式)模式
在实际应用开发或者是产品部署的时候,对应着两种模式:① 开发模式(devMode);此时 DevMode=ture;② 产品模式(proMode);此时 DevMode=false;在struts.properties或者struts.xml中有devMode的配置,在devMode被激活的模式下,能够明显的提高开发效率,它会提供更多的日志或着debug信息。当然原创 2015-09-23 20:40:40 · 5623 阅读 · 0 评论 -
输出类型转换错误和输入校验
输出类型转换错误 默认的defaultStack中已经包含了conversionError的拦截器自动跳转到input逻辑视图。 默认的错误提示是:Invalidfield value for field {0}. (3)如果需要使用自定义的错误提示信息: A.全局方式:增加一个全局的国际化资源文件。 该文件中增加一个key为xwork.转载 2015-10-21 20:18:30 · 430 阅读 · 0 评论 -
struts2国际化实现过程(解决中文乱码)
struts2的国际化实现过程--刚开始写的时候按照网上说的那样配置完,结果一测试,乱码。然后 自己在网上查了很多关于struts2国际化乱码的文章,写的都不全面,比如native2ascii.exe在哪里都没有说明 后面摸索了一下,终于不乱码了。写下这篇文章方便自己和大家以后查看第一步--有两种方法 A、在src下面新建一个struts.properti转载 2015-10-06 19:27:46 · 3326 阅读 · 0 评论 -
struts文件中的两个默认值
package标签上的method方法的默认的值为executeresult标签上的name的默认值是success,所以有时候不写对应的是就是success原创 2015-10-05 14:02:29 · 328 阅读 · 0 评论 -
struts 2的常量配置
Struts 2常量,也叫struts 2属性。 ----控制整个struts 2的应用特性。一个常量名 指定一个常量值。配置方式有3种: 1. ---在web.xml中:每个常量要4行通过Filter配置初始化参数,就可以配置struts 2的常量常量名常量值 2.---struts.xml文件配置 ------每行原创 2015-10-05 13:01:20 · 292 阅读 · 0 评论 -
stuts 2的工作流程及开发步骤
(1)浏览器发送请求,abc.action。 .action后缀可以保留,也可以省略。(2)浏览器发送的请求被StutsPrepareAndExecuteFilter拦截。————我们在web.xml中指定了StutsPrepareAndExecuteFilter来过滤所有的请求。(3)StrutsPrepareAndExecuteFilter会去创建Action实例假如我们请求原创 2015-09-26 09:48:10 · 465 阅读 · 0 评论 -
Struts2动态方法调用
动态方法调用在Struts2中动态方法调用有三种方式,动态方法调用就是为了解决一个Action对应多个请求的处理,以免Action太多第一种方式:指定method属性这种方式我们前面已经用到过,类似下面的配置就可以实现method="chainAction">redirect method="plainText">/WEB-INF/JspPage/ch转载 2015-10-04 22:06:09 · 233 阅读 · 0 评论 -
Struts的标签库
truts的标签库 OGNL -数据访问语言。 Stack Context(OGNL Context/Context Map/Action Context) ValueStack Stack Context中包含了ValueStack(根对象)。控制标签: if/elseif/else --模拟流程控制 iterator原创 2015-10-12 09:19:39 · 408 阅读 · 0 评论 -
struts 2的类型转化
类型转换: 1.Struts 2内置强大的基于OGNL的转换机制。 2.Struts 2允许开发者开发自定义类型转换器。 3.如果转换失败。Struts 2的conversionError会自动起作用。 跳转到input的逻辑视图。 input逻辑视图名字 --代表上传文件的类型不允许,大小超过指定规定。类型转换失败。输入校验失败。转载 2015-10-19 17:14:10 · 336 阅读 · 0 评论 -
OGNL的应用
首先解释一下:OGNL全称为:Object Graph Notation Language,即对象图形导航语言。 在以下的代码里,value中的那一小段才是OGNL,是struts标签。所以对象图形导航语言,就是指通过一个对象可以导航到另一个对象,或者属性。例如有一只狗,狗有一个名字,有只猫,猫的朋友是狗。那么久可以通过:猫.狗.狗的名字,来访问狗的名字。 <%String path =原创 2015-10-17 14:01:49 · 324 阅读 · 0 评论 -
struts 2的OGNL表达式
既然要访识问数据,必须有个东西装数据。 OGNL的装数据的东西叫"Stack Context"(OGNL Context) --------可以理解它相当于一个Map.1.它里面的每个 对象,都应该有个名字,根据名字来访问。 # 对象名假如OGNL Context中有3个对象:foo、bar、test #bar.abc ---访问bar 对象的原创 2015-10-08 12:05:25 · 284 阅读 · 0 评论 -
解决硬编码的上传文件的方式及配置文件传值、url传值的中文乱码
配置文件: /upload/struts2中文.txt 这里有中文,在action中getter方法 中,需要转成iso-8859-1 --> ${contentType} targetFile attachment;filename="${fileName}" 4096 /loginForm.jsp转载 2015-11-08 20:34:34 · 1340 阅读 · 0 评论 -
getResourceAsStream和getResource的用法及Demo实例
用JAVA获取文件,听似简单,但对于很多像我这样的新人来说,还是掌握颇浅,用起来感觉颇深,大家最经常用的,就是用JAVA的File类,如要取得 D:/test.txt文件,就会这样用File file = newFile("D:/test.txt");这样用有什么问题,相信大家都知道,就是路径硬编码,对于JAVA精神来说,应用应该一次成型,到处可 用,并且从现实应用来讲,最终生成的应用转载 2015-11-08 09:48:50 · 1575 阅读 · 1 评论 -
struts2中取得文件的绝对路径的方法
方法1:[java] view plaincopyprint?ServletActionContext.getServletContext().getRealPath(File.separator);//项目根路径如D:\xxx\项目名 这个方法如果在action的一般方法中执行没问题可得到,但是放到static初始化中时就会报错:转载 2015-10-12 18:39:39 · 3312 阅读 · 0 评论 -
struts 2配置两种的结果
struts 2的Action处里用户请求结束后,返回一个普通字符串----逻辑视图名,必须在struts.xml文件中完成逻辑视图和物理视图之间的映射,才可以让系统转到实际的视图资源。 简单地说,结果是告诉Struts 2框架,当Action处理结束时,系统下一步做什么。Struts 2中通过在struts.xml文件中使用元素来配置结果。根据所在位置不同,Struts 2提供了两原创 2015-10-10 20:39:40 · 349 阅读 · 0 评论 -
property标签区分字符串和OGNL表达式
"/>这里是上显示上传图片,要jsp页面上。转载 2015-11-10 17:28:48 · 288 阅读 · 0 评论