随笔分类 -  轻量级javaEE企业应用实战

摘要:virgo-tomcat原先是Spring DM Server,后来转eclipse社区维护安装教程:http://osgi.com.cn/article/7289514virgo-tomcat各版本下载:http://www.eclipse.org/virgo/download/记录一下,怕忘记 阅读全文
posted @ 2014-06-18 23:54 -六月飞雪- 阅读(590) 评论(0) 推荐(0)
摘要:save()需要返回一个Serialzable的实现类,因此执行这个方法时会马上插入到数据库而persist()不会立即插入到数据库。"当我们封装一个长会话流程的时候,persist()方法就显得尤为重要了!"记录下来,防止自己再一次忘记 阅读全文
posted @ 2014-04-30 09:05 -六月飞雪- 阅读(337) 评论(0) 推荐(0)
摘要:有的时候我们在页头加上chaset pageEncoding 都没用,得在web.xml中配置照抄一下别人的,自己好找一些~ 1 2 htm 3 text/html;charset=utf-8 4 5 6 html 7 text/html;charset=utf-8 8 9 10 jsp 11 text/html;charset=utf-8 12 13 14 ... 阅读全文
posted @ 2014-02-01 03:15 -六月飞雪- 阅读(474) 评论(0) 推荐(0)
摘要:在web.xml中的web-app中加入这段话: 1 2 3 JSPConfiguration 4 *.jsp 5 true 6 utf-8 7 8 9 10 11 12 JSPConfiguration 13 *.html 14 true 15 utf-8 16 17 18 ... 阅读全文
posted @ 2014-01-26 12:44 -六月飞雪- 阅读(1004) 评论(0) 推荐(0)
摘要:这里我用到了两个包:commons-email-1.3.2.jarmail-1.4.1.jar如果不加mail.jar,就可能会抛出NoClassDefFoundError异常之后代码引用http://hi.baidu.com/jadmin/item/d2024fde78f9d84dddf9beed这篇文章的代码:import org.apache.commons.mail.EmailException;import org.apache.commons.mail.HtmlEmail;public class MailSender { public static void main(St... 阅读全文
posted @ 2013-11-15 23:58 -六月飞雪- 阅读(327) 评论(0) 推荐(0)
摘要:在Action中添加String getUrl() { return ServletActionContext.getRequest().getHeader("referer");}然后配置struts的这个Action的result为:${url}就可以了 阅读全文
posted @ 2013-10-23 22:50 -六月飞雪- 阅读(233) 评论(0) 推荐(0)
摘要:本文某些内容复制自:http://zhidao.baidu.com/link?url=F0Z-FqbZ83BOj_xXp_B8rgJDzUoeVSWGgXwPNP5fEdLU1nvBK7yO4vnX_qfbJ-6HkDPKGtTh2MWt22-mgWTWXq分为两种方式吧,一种注解,一种配置struts.xml①@InterceptorRefs({ @InterceptorRef ( value="fileUpload", params={"allowedTypes", "application/msword"} ), @Interc 阅读全文
posted @ 2013-10-22 00:46 -六月飞雪- 阅读(892) 评论(0) 推荐(0)
摘要:① 必须封装三个字段:文件、文件类型、文件名,而且这三个字段的名字的前面几个字母是一样的 如:private File upload;private String uploadContentType;private String uploadFileName;由File名upload,确定了文件类型这个字段的名字必须为uploadContentType,不能是upContentType,不能是upcontenttype由File名upload,确定了文件名这个字段的名字必须为uploadFileName,不能是upFileName,不能是uploadfilename如果你的File名是upl. 阅读全文
posted @ 2013-10-21 21:24 -六月飞雪- 阅读(363) 评论(0) 推荐(0)
摘要:原因是,form中的组件设置了name属性,struts2会通过OGNL在action中找相应的属性。如 如果你的LoginAction中有submit属性,将不会报错,反之会报错。 阅读全文
posted @ 2013-10-16 12:45 -六月飞雪- 阅读(650) 评论(1) 推荐(0)
摘要:今晚弄了好久都搞不清楚,晕死我了。上网找也没找到解决办法。然后看了Build Path。好吧,有几个没用的jar包,remove之。我去,马上正常了,具体原因未知。总结:删除jar包不代表Build Path没错! 阅读全文
posted @ 2013-10-16 01:10 -六月飞雪- 阅读(183) 评论(0) 推荐(0)
摘要:这个属性只有在重定向时有用,而转发时不会设置参数。如:@Results({ @Result(name="success", location="page", type="redirect", params={"content", "article"})})代码中选择类型redirect,页面将会重定向至PageAction,而且这个Action中的content属性则会被设置为article。但是如果type为chain,那么PageAction的content属性为null 阅读全文
posted @ 2013-10-14 23:42 -六月飞雪- 阅读(815) 评论(0) 推荐(0)
摘要:这个标签让我很迷惑,意思我能理解,但是在使用登录时出现了一个问题,假如有@Namespace("/show"),在某些文件里需要加show,有些则不需要加,有点小纳闷,思考了一下,后来翻开tomcat中的文件,验证了我的猜想:在show包中的jsp不需要加“show”,而在show外的需要加“show/”show下的子包下的jsp,要加“../”。总之就一句话:以当前的jsp路径往show路径走,写上相对路径目录结构如下:WebRoot |------index.jsp |------show | |-----------check.jsp | |-----------ch 阅读全文
posted @ 2013-09-24 01:41 -六月飞雪- 阅读(732) 评论(0) 推荐(0)
摘要:一定要熟记一个东西,一层引号的是变量,两层引号的是字符串如"蓝"/'蓝'是变量,而" '蓝' "/ '"蓝" '是字符串打代码时要警惕自己,凡是要用字符串传参的地方都要用两层引号! 阅读全文
posted @ 2013-09-19 18:21 -六月飞雪- 阅读(226) 评论(0) 推荐(0)
摘要:20其中ignoreContextParams会失效,参数age=20会传到action中去 阅读全文
posted @ 2013-09-19 17:55 -六月飞雪- 阅读(427) 评论(0) 推荐(0)
摘要:tomcat reload显示错误:SEVERE: The web application [/Interceptor] created a ThreadLocal with key of type [com.opensymphony.xwork2.inject.ContainerImpl$10] (value [com.opensymphony.xwork2.inject.ContainerImpl$10@302b4e8e]) and a value of type [java.lang.Object[]] (value [[Ljava.lang.Object;@6b326556]) but 阅读全文
posted @ 2013-09-15 08:24 -六月飞雪- 阅读(5136) 评论(0) 推荐(0)
摘要:“token标签的实现原理是在表单中增加一个隐藏域,每次加载该页面时,该隐藏域的值都不相同。而TokenInterceptor拦截器则拦截所有用户请求,如果两次请求时该token对应隐藏域的值相同(前一次提交时token隐藏域的值保存在session里),则阻止表单提交”--《轻量级Java ee企业应用实战》P268这是不全对的。实际上,加载表单时会产生隐藏域的值,提交表单后,服务器会把服务器上的值给删掉,当你点击浏览器的后退按钮再按提交按钮时,隐藏域的值和刚才的一样,但是服务器端的值没了,所以不能匹配,提示错误。这个是MyEclipse上的tomcat6.0的错误提示,可以证明: 阅读全文
posted @ 2013-09-15 00:02 -六月飞雪- 阅读(197) 评论(0) 推荐(0)
摘要:这个经验有点废话,但好像容易忘掉,所以还是写下来吧。当你的Action继承了MethodFilterInterceptor,你才可以在xml中用支持该参数的拦截器设置不拦截Action中的某些方法。培训老师把excludeMethods这个param放在timerInterceptor里并发现没有用,我当时没反应过来。回来想了想,翻了书,才想起:只有特定的拦截器有那个参数。"Struts2中提供了这种方法过滤的拦截器有如下几个: TokenInterceptor TokenSessionStoreInterceptor DefaultWorkflowInterceptor Valid 阅读全文
posted @ 2013-09-14 23:10 -六月飞雪- 阅读(286) 评论(0) 推荐(0)
摘要:虽然在书上看到了提醒,但是在编程的时候还是没想到,犯错了。在配置拦截器或者拦截器栈的时候一定要加上defaultStack这个拦截器加上了它就能够在拦截器中用request.setAttibute("", "")传参到Action中“我们可以把Struts2理解成一个空容器,而大量的内建拦截器完成了该框架的大部分操作。比如params拦截器负责解析HTTP请求的参数,并设置Action的属性;servlet-config拦截器直接将HTTP请求中的HttpServletRequest实例和HttpServletResponse实例传给Action;fil 阅读全文
posted @ 2013-09-14 22:44 -六月飞雪- 阅读(1780) 评论(0) 推荐(0)
摘要:由于该类有setExcludeMethods方法,因此在xml中可以配置一个excludeMethods参数刚开始老是拦截不成功,tomcat显示这个参数没找到,后来终于找到错误:不应该在拦截器栈中配置,而应该在拦截器中配置XML: del其中myinter不能是拦截器栈,而应该是拦截器 阅读全文
posted @ 2013-09-10 17:34 -六月飞雪- 阅读(489) 评论(0) 推荐(0)