2007年5月8日
文章从一名资深flash开发者的角度,全方位深入的对比评论了Silverlight和Flash两种技术,点评非常全面、深入,推荐大家一看。
Silverlight vs. Flash: The Developer Story
2007年4月2日
4.1InfoQ发布消息:InfoQ China Unlaunches 还以为是愚人节报道~
到这里一看,是真的!
InfoQ 的http://www.infoq.com/cn/about.jsp
InfoQ 网站的与众不同之处及创新点包括:
- 个性化。InfoQ 的内容涵盖多个社区,用户可以根据个人喜好自由定制感兴趣的社区内容,并且可以通过过滤话题/标签来进行进一步的网站内容定制。用户的个性化设置将决定网站首页显示的内容,以及他们的个性化 RSS Feed 和每周新闻邮件获取的内容。
- 独家内容。InfoQ 发布的内容包括由领域专家撰写的每日新闻、技术文章、视频访谈、选自权威会议的视频讲座、技术案例分析和迷你书。
- 国际化。InfoQ 中国提供全球站的英文技术文章、每日新闻和迷你书的中文翻译,并将在今后逐步实现全站内容的国际化。此外,InfoQ 计划发布包括日语和葡萄牙语(巴西)等多个子站点,以支持母语非英语的国家的技术社区。
- 本地化。InfoQ 在今后将支持更多地区的本地新闻发布,比如 InfoQ 英国和 InfoQ 印度等。
- 创新的技术,友好的体验。InfoQ 在设计时深切考虑到了用户的需求,通过大量应用 AJAX 技术,比如用户注册、评论、定制等,用户可以在最短的时间内得到最丰富的体验。InfoQ 不仅是一个讨论软件开发技术的站点,还是一个展示 Web 开发前景的最佳案例。
2007年3月7日
Toplink是业界领先的企业级商业ORM平台,早些年被Oracle收购。
消息来源:
Oracle Proposes Open Source Persistence Project at Eclipse Foundation
Today, at the EclipseCon Conference, Oracle (Nasdaq:
ORCL), a newly
appointed Eclipse Board Member and Strategic Developer, announced it will
donate its award winning Java persistence framework, Oracle(R) TopLink, to
the open source community. In addition, Oracle announced the proposal of a
new Eclipse project to deliver a comprehensive persistence platform based
on the contribution of Oracle TopLink, a component of Oracle Fusion
Middleware, source code and test cases.
Oracle官方网页:
http://oss.oracle.com/oracle-eclipse-projects.html注意里面的FAQ:
Eclipse Persistence Platform评论:
http://www.it-eye.nl/weblog/2007/03/06/oracle-open-sources-toplink/
2007年3月4日
从OpenNMS的mail list获取这一消息,OpenNMS 获得由SearchNetworking.com 举办的“Product Leadership Awards 2007”活动中的“Network and IT management platforms ”GOLD AWARD!
消息连接在这里
获奖评论见这里
值得注意的是,在这次评选中OpenNMS击败了HP Openview和IBM Tivoli等老牌劲旅。综合最近的消息,看来开源软件的势力正逐渐侵入一直由商业软件所把持的网管软件领域,或许在不久的将来开源软件将在这一领域大有作为。
2007年2月13日
OpenTerracotta开源有一段时间了,有关它的讨论似乎不多,不过作为一个商业级的开源的JVM集群解决方案OpenTerracotta确实值得我们认真研究一下,
InfoQ上面也新鲜出炉了
Introduction to OpenTerracotta,对OpenTerracotta进行了全面细致的讲解,从体系架构、实现原理到适用场景都详细介绍了一遍,值得注意的是里面所提到的适用场景:
There are four main use-cases where Terracotta is most effective:
- HTTP Session Replication
- Distributed Cache
- POJO Clustering
- Collaboration, Coordination, and Events
或许我们真的可以尝试一下OpenTerracotta了。
2007年2月12日
新鲜出炉的Hibernate 3 Annotations教程,内容相当简略,不过是一个很好的Hibernate 3 Annotations快速入门教程,推荐阅读。
另外,我以前的项目都是使用XDoclet,麻烦的是XDoclet的开发总是滞后于Hibernate,想使用新的特性就不得不对XDoclet进行一些小hack,现在好了,使用官方支持的Annotations就不存在这种问题。唯一的问题是,JDK的版本要升级到1.5,这对一些旧的项目是无法接受的
by
John Ferguson Smart02/08/2007
2006年12月5日
Terracotta open sources JVM clustering
http://www.infoq.com/news/2006/12/terracotta-jvm-clustering
呵呵,想说点什么,不过看到这个回贴,就不多废话了:
http://www.infoq.com/news/2006/12/terracotta-jvm-clustering#view_3872
cool
Dec 4, 2006 1:11 PM by anjan bacchu
hi there,
great decision. Another +1 for the java community. Sun's open sourcing of java and this announcement makes(keeps) Java THE STANDARD for large web applications.
As Tim Bray said, because there are so many options/models for deployment in java world, (ordinary) people don't do a good job of scaling the apps. If Tomcat can be bundled together with Spring and Terracotta and a good IDE is available for the developer to develop and debug for this combined platform, then Java's position should improve as far as combined DEVELOPER productivity and app runtime performance.
I hope that openTerracotta will become the place for bundling Tomcat + Terracotta rather than Covalent. I don't have anything against Covalent but more developers will get a chance to use Terracotta if there is an easy way to have them bundled. Covalent can certify their own copy of the bundle but it will be nice if it(a bundle) is available for all developers.
Again, since a lot of developers are looking at spring, does it not make sense to bundle Tomcat, Spring and Terracotta at terracotta.org ? I hope the eclipse plugin can integrate with the Spring IDE to make developers task easier than today.
some things to look forward to :
1) Tomcat + Terracotta bundle
2) Tomcat + Spring Terracotta bundle
3) Tomcat + Spring Terracotta + IDE bundle
4) Tomcat + Spring Terracotta + IDE + Linux/Solaris LIVE CD bundle
5) Tomcat + Spring Terracotta + IDE + Linux/Solaris VMWARE player
6) Tomcat + Spring Terracotta + IDE + CentOS (Linux) distro
7) AT THE LEAST, a screencast(http://en.wikipedia.org/wiki/Screencast, http://www.rubyonrails.org/screencasts)
in "HOW TO BUNDLE tomcat and Terracotta for Java Petstore app"
With this development, it will be nice to know how coherence(the leading java clustering app) will react to this.
Good Luck,
BR,
~A
Reply
2006年9月15日
注:windows自动更新后每次都会自动重启,真的很傻,没什么不加一个确认选项呢?还好,看到这篇文章。
原文链接:Prevent Windows automatic updates reboot
Another one of those reminder posts: How to prevent the reboot triggered by the Windows automatic update feature.
On XP Home go to or create the following registry key/value HKEY_LOCAL_MACHINE \Software\Policies \Microsoft\Windows \WindowsUpdate\AU\NoAutoRebootWithLoggedOnUsers (Dword)
and set it to either 0 (allow reboots) or 1 (disallow reboots).
2006年8月23日
原文链接:
http://www.jroller.com/page/sjivan?entry=ajax_based_login_using_aceci
Ajax based login using Acegi
Acegi is an extremely powerful Spring module for Authentication and Authorization and has almost become a defacto for web based applications built using Spring. Ajax based applications are getting hotter by the day and having a nice inplace Ajax based login page can improve coolness of your app and make it more Web 2.0'ish.
However implementing an Ajax-Acegi based login does require a little extra work because based on the J2EE spec, when a user tries to login, they are redirected back to the login page if the credentials are invalid or redirected to the success page on successful authentication.
2006年6月30日
软件版本:
hibernate-3.2.0.cr2
hibernate-annotations-3.2.0.CR1
IDE:
idea 5.1
以前都是用XDoclet来实现类似Annotation的功能,但是xdoclet的版本更新实在太慢,永远跟不上hibernate的更新速度,导致很多hibernate新的功能xdoclet都没办法支持.还好,jdk5.0有了Annotation,而且hibernate也开始支持Annotation了.
原来以为从xdoclet转到Annotation很简单,没想到还是遇到了问题,先看代码:
1package test;
2
3import org.hibernate.annotations.Entity;
4
5import javax.persistence.Id;
6import java.io.Serializable;
7
8@Entity
9public class Flight implements Serializable{
10 Long id;
11 String name;
12
13 @Id
14 public Long getId(){
15 return id;
16 }
17
18 public void setId(Long id){
19 this.id=id;
20 }
21
22 public String getName(){
23 return name;
24 }
25
26 public void setName(String name){
27 this.name=name;
28 }
29
30 public boolean equals(Object o){
31 if(this==o) return true;
32 if(o==null||getClass()!=o.getClass()) return false;
33
34 final Flight flight=(Flight)o;
35
36 if(id!=null?!id.equals(flight.id):flight.id!=null) return false;
37 if(name!=null?!name.equals(flight.name):flight.name!=null) return false;
38
39 return true;
40 }
41
42 public int hashCode(){
43 int result;
44 result=(id!=null?id.hashCode():0);
45 result=29*result+(name!=null?name.hashCode():0);
46 return result;
47 }
48}
49 看上去没什么问题吧?没想到运行的时候根本跑不起来,老是提示:
[java] 10:54:55,842 INFO SessionFactoryObjectFactory:82 - Not binding factory to JNDI, no JNDI name configured
[java] org.hibernate.hql.ast.QuerySyntaxException: Flight is not mapped [from Flight]
[java] at org.apache.tools.ant.taskdefs.ExecuteJava.execute(ExecuteJava.java:180)
[java] at org.apache.tools.ant.taskdefs.Java.run(Java.java:710)
[java] at org.apache.tools.ant.taskdefs.Java.executeJava(Java.java:178)
[java] at org.apache.tools.ant.taskdefs.Java.execute(Java.java:84)
[java] at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
[java] at org.apache.tools.ant.Task.perform(Task.java:364)
[java] at org.apache.tools.ant.Target.execute(Target.java:341)
[java] at org.apache.tools.ant.Target.performTasks(Target.java:369)
[java] at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1216)
[java] at org.apache.tools.ant.Project.executeTarget(Project.java:1185)
[java] at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:40)
[java] at org.apache.tools.ant.Project.executeTargets(Project.java:1068)
[java] at org.apache.tools.ant.Main.runBuild(Main.java:668)
[java] at org.apache.tools.ant.Main.startAnt(Main.java:187)
[java] at org.apache.tools.ant.launch.Launcher.run(Launcher.java:246)
[java] at org.apache.tools.ant.launch.Launcher.main(Launcher.java:67) 看了半天看不出有什么问题,最后终于参考hibernate-annotations-3.2.0.CR1里面单元测试的代码才发现是这段代码有问题:
1import org.hibernate.annotations.Entity;
2
3import javax.persistence.Id;
4import java.io.Serializable;
5 要改成:
1import javax.persistence.Id;
2import javax.persistence.Entity;
3import java.io.Serializable; 原来我用idea开发时,在自动完成的时候想当然地选用了org.hibernate.annotations包下面的annotation,而实际上应该使用javax.persistence包下面的annotation.想想看也很有道理:这样一来我们的JAVA bean就不用import hibernate的包了,用的都是标准的java包.