- 博客(37)
- 收藏
- 关注
银行支付平台开着firebug还是不好用
喜欢用firefox的朋友,在使用网上支付的时候经常发现页面不好用。那么我们用firebug,马上debug一下。然后我们手工修改数据,提交表单,庆幸自己会javascript……但是,到了支付的页面,比如招行……我们发现firefox没有用插件,没法输入用户名密码。没法子,继续打开ie。这也解释了用Ubuntu也要开个ie4linux……烦人呀。所以徐继哲同志才会去搞告招商银行的...
2007-10-29 10:30:08
105
Java交互管理工具——SecureJSH发布
本文已经发表于InfoQJavaEye上活跃的开发者Complystill(歆渊)最近发布了自己的开源SecureJSH项目,提供了一个通过SSH交互进行Java应用开发或者管理的工具。在项目的介绍中可以得知,SecureJSH与Ptyhon里面的ipython或者Ruby里面的irb非常相似。它们都允许交互式运行语言的代 码,以方便跟踪或者调试应用。但是,Java与Ruby、Python不...
2007-07-30 13:47:29
191
SecureJSH简介
本文系SecureJSH的中文介绍,原文参考歆渊的帖子:SecureJSH允许Java编写的服务器端应用程序为管理员、客户、开发者和客户端服务提供一个安全shell,这里可以交互性的让Java语言逐句的运行。 SecureJSH需要JDK 6.0或者JRE 6.0加JAVAC(在classpath中)来运行。 安全: SecureJSH在服务器端实现了RFC-4251,SSH 2.0协议,支持...
2007-07-22 08:46:00
281
为dojo.io.IframeIO添加超时,同时简析Ajax的IO方式
1、引子引出本次讨论的原因是dojo.io.IframeIO的问题。在一个比较大的Javascript应用中使用了dojo,dojo.io是dojo实现的非常好的一个地方,因为dojo.io用一个通用的接口封装了XmlHttp、Iframe、ScriptSrc这几种主流方式(Facade模式),是处理Ajax应用IO的很好选择。但是项目实际部署以后发现经常出现操作无响应的情况,经过反复排查发现是...
2007-05-23 11:32:26
164
[翻译]使用测试分类(test categorization)进行敏捷构建
本文翻译自IBM DeveloperWorks上的一篇文章,该文讲述了测试分类(test categorization)的概念,本身这个概念很简单,但是却实际的解决我们常见的问题,在我们的测试庞大到一定地步的时候,测试的运行时间过长,维护成本很高,我们如何能够保证持续集成(CI)的正常运行?那就是通过测试分类。所以我翻译了这片文章,希望对大家有所帮助。原文:In pursuit of code...
2006-12-01 00:38:33
264
在JUnit中多个testCase只执行一次setup和tearDown的方法
这个问题出现在这种情况,你的每个testCase都需要使用某一种初始化比较耗时的对象(资源),举例如数据库连接、Spring Context。我们遇到的问题是Selenium测试中开启和关闭浏览器,如果一个test启动关闭(我们的程序还需要登录和注销),这样测试的时间会拖的很长,给持续集成带来了困难。所以,我们需要在每组不会冲突的test中间共享一个浏览器窗口,这样也就需要一个全局的setUp和t...
2006-11-17 17:29:00
803
Selenium Remote Control 0.9.0发布
Selenium Remote Control项目组很高兴的宣布Selenium Remote Control 0.9.0发布。你可以在这里察看:http://www.openqa.org/selenium-rc/也可以在这里下载:http://www.openqa.org/selenium-rc/download.action0.9.0包括很多酷玩意,包括frame支持,多窗口支持(用来测试那些...
2006-11-15 15:57:00
117
Selenium相关资源中文化动员
Selenium相关资源中文化 1. 动机 springside项目的江南白衣、cac和徐昊、熊杰都多次推广非常Pragmatic的Selenium进行功能测试。而我们的项目中也开始引入Selenium测试,并结合持续集成搭建了一个测试环境,也尝试通过Selenium进行一些浏览器兼容性的测试。期间感觉到Selenium的强大,同时也发现这个项...
2006-11-13 15:31:00
87
Selenium做功能测试的一点讨论(061102 update)
先后和nemo、limo、raimudox、nicholas讨论:selenium的Remote Control比较适合在需求阶段就撰写(当然Fit方式也可以先于实现写),作为验收的测试。好处是RC对重构支持相对好一些,而且你可以换Agent,也可以做浏览器兼容测试。(但是由于RC的限制,兼容侧试兼容性并不好:)按照raimudox所说RC是更加Pragmatic的实践,更能体现敏捷软件开发的测试...
2006-10-30 21:33:00
115
java.lang.UnsatisfiedLinkError: no swt-win32-3232 in java.library.path的解决
我用的是Eclipse 3.2,操作系统是WinXP SP2。需要把eclipse\plugins\org.eclipse.swt.win32.win32.x86_3.2.0.v3232m.jar里面的swt-win32-3232.dll解压缩出来拷贝到WINDOWS\SYSTEM32里面。然后就OK了。是在Eclipse里面运行Springside的ANT Task的时候,如果需要通过conso...
2006-09-11 15:10:00
762
《OSGi实战》读后感
看了下BlueDavy的OSGi实战这篇OpenDoc,很感谢BlueDavy同学!例子举的是一个User Login的Case,例子很简单,让我们从中领略了OSGi的风情。这个Doc中的例子都是围绕Equinox展开的,它是Eclipse 3.1以后的核心实现,也就是说现在的Eclipse是个OSGi架构。从架构上来说OSGi和SOA如出一辙,都强调面向服务,而OSGi似乎对热切换和契约管...
2006-09-06 11:27:00
95
Spring与EJB 3对比读后感
今天TSS和InfoQ都转了一篇Spring与EJB3的读后感,我就看了下,标题和介绍满吸引人的。内容嘛其实有点不过瘾,但是先记录下来吧。http://www.devx.com/Java/Article/32314/0/page/1总的来看Spring+Hibernate与JPA很相似,它们都是基于pojo的持久化。Hibernate Session和JPA Entity Manager基本上等价...
2006-09-04 20:45:00
179
在Eclipse里面运行Springside的Test
Springside里面的Test现在已经比较丰富,而且徐x贡献了基于selenium rc的functional test,这些东西是很好的学习资料。尤其是functional test,让QA的任务可以在Java里面实现了,而且是基于浏览器的测试。推荐看看rainmundox的Selenium Better Pratice但是首先却遇到了问题:在Eclipse里面运行functional-te...
2006-08-31 13:02:00
228
关于RoR学习一点胡言乱语
由于失业后家中又有人病了,还有很多乱七八糟的事忙,反正没怎么写也没怎么看程序,很惭愧!有朋友说不厚道,赖我,我不厚。这两天看《应用Rails进行敏捷Web开发》,RoR和去年刚看的时候感觉一样,很舒服,现在可能对Java和Ruby的了解都比以前深一些了,看这本书会有些想法。不过没时间纪录,头脑里也乱七八糟的,我只能说是胡言乱语。这本不是什么文章,这是我的一个工作习惯,只要开电脑就开个Notepad...
2006-08-30 12:39:00
163
从Domain开始看Springside
SpringSide是一个fantasy的好项目,可惜驽钝,没能加入其中,有时会看看它的代码,吸取一些养分。http://www.springside.org.cn/今天先看看Springside的bookstore的domain设计,这不是springside的重点,先看看。从hbm看起,在springside-bookstore/src/org.springside.bookstore....
2006-08-30 12:30:00
80
TSS关于企业级Java座谈的总结
TSS座谈会上Cameron Purdy, Rod Johnson, Bruce Snyder, Bruce Tate, Floyd Marinescu和Ari Zilka作了一个“企业级Java的未来如何?”的座谈。下面是infoQ上关于这个座谈的一个总结,不是原文,是摘要。首先大家谈一谈关于企业级Java的未来的想法:Bruce Tate:企业级Java状态良好,缺乏的是Java对低端应...
2006-07-10 14:09:00
138
手动为HibernateDAO里面的DetachedCriteria的Projection擦屁股
无奈,寻找好的解决方法,把我现在擦屁股的现场记录下来。我用GenericHibernateDAO,慢慢积累下来的,有这几个DetachedCriteria的方法: public List findByDetachedCriteriaByPage( final DetachedCriteria detachedCriteria, ...
2006-06-06 11:28:00
155
使用WebWork和Rome轻松暴露RSS
WebWork的result实现非常实用,它很好的解决了View渲染的灵活性问题。这才是MVC模式的优势所在,而像JSF那样帮定JSP的MVC就吃不到这个甜头了。说WebWork2是Model 2 MVC的巅峰就在这些灵活的地方。闲扯这个不是主要目的。现在Rome是Java下最常用的RSS包,最近消息似乎要转入Apache的Abdera合并变成更强大的聚合引擎。用Rome生成和解析RSS都很...
2006-06-05 22:25:00
166
060523-JDO2和EJB3 JPA见闻
原来还有个JDO 2.0实现叫做JPOX。而且发现JDO 2.0的接口等定义是由Apache发布的,它是有Sun捐献的。JPOX是2003年3月才开始开发的,目前实现支持JDO 1.0和JDO 2.0(JSR-243)规范。JPOX号称支持JDOQL和SQL,而且以后也要实现EJB3持久化规范中的JPA(Java Persistence API)。看来BEA有了Kodo,JBoss有了Hib...
2006-05-24 09:54:00
138
hibernate中获取关联属性为null的方式
在Hibernate中获取有关联关系的pojo。我是指例如一个User(用户)拥有一个many-to-one的属性Unit(单位),但是有时有些用户的Unit属性为空,如果按单位查询用户的时候那些单位为null的用户就会被遗漏,如何调取呢?这本来是很简单的,但是我想当然的使用了Restriction.eq,但是不行,后来看了手册才发现应该使用Restrictions.isNul。下面是Test代码...
2006-05-11 13:09:00
514
范型擦拭法即范型类无法获取范型参数信息的原因
江南白衣的Blog上一篇:Java5泛型的用法,T.class的获取和为擦拭法站台他参考的这里:Generic Data Access Objects我们的项目中也用的GenericHibernateDAO,里面使用了一个: public GenericHibernateDAO( final Class < E >...
2006-05-08 21:37:00
203
对google个性主页的拖拽效果的js的完整注释
这两天太忙了,没时间写Blog,业余时间又扒了一次google的拖拽,对比了netvibes的,差不多,让后就写了个注释,顺便学习。google用了混淆,js里面的命名比较晕。我花了些时间把他们翻译成容易看懂的命名,并且作了注释,希望对大家有帮助。可以这里下载我的例子:http://www.blogjava.net/Files/iamtin/google_drag.rar ...
2006-04-27 22:40:00
146
分页的轻量实现
为我们的项目写的一个轻量的分页API。目的在于将分页与数据查询的逻辑完全剥离。我以前看过robbin发的通过detachedCriteria实现的分页那片贴子,里面把分页和数据查询结合在一起了。而我觉得分开更轻量,而且替换也比较容易。但是这个实现中有一个反模式,在逻辑中生成了代码,无奈之选,为了简便。其中字符生成可以自己扩展i18n实现,应该非常容易。分页实现的接口:...
2006-03-31 12:30:00
101
WebWork 2.2.2中文上传乱码问题[临时解决方案]
使用jakarta commons-upload。 升级到2.2.2后发现上传中文会乱码。 经过跟踪发现在com.opensymphony.webwork.dispatcher.DispatcherUtils的prepare(HttpServletRequest request, HttpServletResponse response)方法。 2.2.1->2.2.2时这个方法发生了...
2006-03-30 21:40:00
141
Java Web 框架的“甜点”
Jave Web Framework Sweet Spots Java Web 框架的“甜点” 这是一篇很有趣的文档,所以摘要一下,其实类似阅读笔记,好像是3/25发布的: 不知怎么翻译Sweet Spots,难道翻译为甜处、甜头、蜜点、蜜穴? 这时基于对以下人的采访:JSF Jacob Hook...
2006-03-30 16:28:00
3604
Webwork 2.2.2新增的ww:date的用法
今天浏览WW的Wiki,结果无意发现ww:date标签的用法,挠头一想以前没有见过呀,仔细一看原来是2006/3/21才加上的。会头看看项目发现用的ww 2.2.1中没有这个标签,心想是不是发布新版本了?果不出所料!发现OPENSYMPHONY已经发布2.2.2了。不过2.2.2是在Opensymphony下的最后一个版本了,以后的版本就会以Struts Action 2.0的形式发布了,而...
2006-03-28 20:00:00
283
Web MVC Framework - Stripes观后感
BJUG的Cleverpig说起Stripes,正好前两天在TSS上看到Simon Brown的Blog,对它有点感性认识,所以今天就看了一下,说些粗陋的感受:皮毛上的观感:1、使用Annotation配置。将Action影射、返回View、默认Command注册、是否验证这些东西都通过Annotations搞,挺有意思。2、它也包装了自己的Tag,Tag从感官上感觉很像WebWork的风格(估计...
2006-03-22 21:36:00
90
[犯弱]偶遇奇怪的“浏览器兼容问题”
遇到了一个奇怪的“浏览器兼容问题”……是这样的,登陆页面工作不正常,在firefox下总是没有登陆,根本就没有触发webwork的filter dispatcher。打开我的三剑客:IE、Firefox、Opera测试,发现只有Firefox不行(Mozzila内核的都不行)。然后花了3个多小时找原因,翻遍网络:weblogic、webwork、fireforx所有关键词都搜索了,没有收获。然后开...
2006-03-14 21:12:00
89
在Webwork中使用ww:action实现页面控制器风格Action复用
Webwork是标准的请求风格Web MVC,类似的有Struts、Spring MVC。这这种风格的MVC中都使用了前端控制器模式(企业架构模式),也就是说一个URL会被解析然后派发到对应的Action解析,而View调用的是Action处理后的Form对象或者Command对象(Rod的Without EJB)。上面引用了一些经典的言论,而它们和“页面控制器风格Action复用”有什么关系呢?...
2006-03-10 14:45:00
156
根据生日计算年龄
根据生日计算年龄可以通过Calendar实现。最简单可以考虑get(Calendar.DAY_OF_YEAR)来简单修正年龄,但是遇到生日在闰年的2月29之后,或者今年是闰年的2月29之后可能出现计算不准,误差一天。所以还是老实判断年月日好了。public static int getAge(Date birthDay) throws Exception { Calendar ca...
2006-03-10 10:00:00
567
翻译的Hibernate的Session的javadoc
Hibernate的透明持久化用起来非常舒服,有时甚至忘记了数据库的存在。我身边的朋友经常会分不清save、saveOrUpdate、update的区别,lock、merge、replicate、refresh、evict甚至不知道是干什么用的。而且关于实体对象的生命周期也有很多概念不清,分不清transient、persistent、detached的区别,只是知道PO、VO这样的通俗叫法。其实...
2006-03-06 20:09:00
192
如何给Webwork的redirect的result传递多个参数
今天遇到一个问题,在Webwork 2.2里面给一个Action的result传多个参数:原先配置如下<action name="blahblahAction" class="blahAction" method="blah"> <result name="success" type="redirect">/some.action?field1=$
2006-02-24 13:56:00
308
webwork 2.2 中如何给Collection赋值
原本javaeye有这么一篇帖子“在WebWork2 Action中如何自动设置Array、List、Map”,是moxie大哥写的。 http://forum.iteye.com/viewtopic.php?t=8770 但是已经是2004年11月的文章了,在webwork 2.2 b4中,XWorkList和XWorkMap已经是deprecated状态了,当时我就一头雾水,也没找到什么好的...
2006-02-16 21:19:00
188
Webwork22b5中datapicker的本地化使用方法
时间: 2006-1-05 19:00:49 标题: Webwork22b5中datapicker的本地化使用方法 仅作为记录,尽量简明: 1、我使用Weblogic 8.1 SP5+Webwork 2.2 beta 5。2.2b5的Webwork已经完全转向使用jscalendar作为datapicker的js,而不是以前的tigracalendar,因为tigrac...
2006-02-16 21:15:00
108
eXtremeComponent在中文环境下的使用
不知道大家是否使用过eXtremeComponent,最早知道eXtremeComponent是从www.open-open.com,去年就在用了,感觉明显比display-tag要好用多了。 它使用jstl,所以与webwork集成也很方便,不象display-tag那样需要把hibernate返回的collection复制一遍再访问。 具体的使用方法参考官方网站好了: 官方网站在这里: htt...
2006-02-16 21:10:00
169
DomainModel中的hashCode和equals方法
hashCode:他是用来产生hash值的,用在Hashtable上,也包括HashMap等实现。hashCode的基本约定是:1、hashCode方法在同一个object上不管被调用了多少次,在同一次执行的Java程序中,hashCode方法必须返回一个持续相同的int。在object被修改时,不给equals方法提供信息。这个int值在同一个程序的两次不同执行过程中(同一程序执行两次),不需要...
2006-02-15 11:34:00
165
Webwork 2.2的Action是否使用Spring的prototype获取的性能对比
本文在060216进行了修改,因为发现了测试中的错误!注意5.5和7的内容。1、引子:其实是ajoo的这篇“Nuts和Spring 1.2.6 效率对比”和“IoC容器的prototype性能测试 ”,他们在Javaeye上详细讨论了Spring的prototype的缺陷。Spring的prototype指的就是singleton="false"的bean,具体可以看Spring参考手册“3.2....
2006-02-14 21:48:00
187
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人