
2007年5月8日
文章從一名資深flash開發(fā)者的角度,全方位深入的對(duì)比評(píng)論了Silverlight和Flash兩種技術(shù),點(diǎn)評(píng)非常全面、深入,推薦大家一看。
Silverlight vs. Flash: The Developer Story

2007年4月2日
4.1InfoQ發(fā)布消息:InfoQ China Unlaunches 還以為是愚人節(jié)報(bào)道~
到這里一看,是真的!
InfoQ 的http://www.infoq.com/cn/about.jsp
InfoQ 網(wǎng)站的與眾不同之處及創(chuàng)新點(diǎn)包括:
- 個(gè)性化。InfoQ 的內(nèi)容涵蓋多個(gè)社區(qū),用戶可以根據(jù)個(gè)人喜好自由定制感興趣的社區(qū)內(nèi)容,并且可以通過過濾話題/標(biāo)簽來進(jìn)行進(jìn)一步的網(wǎng)站內(nèi)容定制。用戶的個(gè)性化設(shè)置將決定網(wǎng)站首頁(yè)顯示的內(nèi)容,以及他們的個(gè)性化 RSS Feed 和每周新聞郵件獲取的內(nèi)容。
- 獨(dú)家內(nèi)容。InfoQ 發(fā)布的內(nèi)容包括由領(lǐng)域?qū)<易珜懙拿咳招侣劇⒓夹g(shù)文章、視頻訪談、選自權(quán)威會(huì)議的視頻講座、技術(shù)案例分析和迷你書。
- 國(guó)際化。InfoQ 中國(guó)提供全球站的英文技術(shù)文章、每日新聞和迷你書的中文翻譯,并將在今后逐步實(shí)現(xiàn)全站內(nèi)容的國(guó)際化。此外,InfoQ 計(jì)劃發(fā)布包括日語和葡萄牙語(巴西)等多個(gè)子站點(diǎn),以支持母語非英語的國(guó)家的技術(shù)社區(qū)。
- 本地化。InfoQ 在今后將支持更多地區(qū)的本地新聞發(fā)布,比如 InfoQ 英國(guó)和 InfoQ 印度等。
- 創(chuàng)新的技術(shù),友好的體驗(yàn)。InfoQ 在設(shè)計(jì)時(shí)深切考慮到了用戶的需求,通過大量應(yīng)用 AJAX 技術(shù),比如用戶注冊(cè)、評(píng)論、定制等,用戶可以在最短的時(shí)間內(nèi)得到最豐富的體驗(yàn)。InfoQ 不僅是一個(gè)討論軟件開發(fā)技術(shù)的站點(diǎn),還是一個(gè)展示 Web 開發(fā)前景的最佳案例。

2007年3月7日
Toplink是業(yè)界領(lǐng)先的企業(yè)級(jí)商業(yè)ORM平臺(tái),早些年被Oracle收購(gòu)。
消息來源:
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官方網(wǎng)頁(yè):
http://oss.oracle.com/oracle-eclipse-projects.html注意里面的FAQ:
Eclipse Persistence Platform評(píng)論:
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”活動(dòng)中的“Network and IT management platforms ”GOLD AWARD!
消息連接在這里
獲獎(jiǎng)評(píng)論見這里
值得注意的是,在這次評(píng)選中OpenNMS擊敗了HP Openview和IBM Tivoli等老牌勁旅。綜合最近的消息,看來開源軟件的勢(shì)力正逐漸侵入一直由商業(yè)軟件所把持的網(wǎng)管軟件領(lǐng)域,或許在不久的將來開源軟件將在這一領(lǐng)域大有作為。

2007年2月13日
OpenTerracotta開源有一段時(shí)間了,有關(guān)它的討論似乎不多,不過作為一個(gè)商業(yè)級(jí)的開源的JVM集群解決方案OpenTerracotta確實(shí)值得我們認(rèn)真研究一下,
InfoQ上面也新鮮出爐了
Introduction to OpenTerracotta,對(duì)OpenTerracotta進(jìn)行了全面細(xì)致的講解,從體系架構(gòu)、實(shí)現(xiàn)原理到適用場(chǎng)景都詳細(xì)介紹了一遍,值得注意的是里面所提到的適用場(chǎng)景:
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教程,內(nèi)容相當(dāng)簡(jiǎn)略,不過是一個(gè)很好的Hibernate 3 Annotations快速入門教程,推薦閱讀。
另外,我以前的項(xiàng)目都是使用XDoclet,麻煩的是XDoclet的開發(fā)總是滯后于Hibernate,想使用新的特性就不得不對(duì)XDoclet進(jìn)行一些小hack,現(xiàn)在好了,使用官方支持的Annotations就不存在這種問題。唯一的問題是,JDK的版本要升級(jí)到1.5,這對(duì)一些舊的項(xiàng)目是無法接受的

by
John Ferguson Smart02/08/2007

2006年12月5日
Terracotta open sources JVM clustering
http://www.infoq.com/news/2006/12/terracotta-jvm-clustering
呵呵,想說點(diǎn)什么,不過看到這個(gè)回貼,就不多廢話了:
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自動(dòng)更新后每次都會(huì)自動(dòng)重啟,真的很傻,沒什么不加一個(gè)確認(rèn)選項(xiàng)呢?還好,看到這篇文章。
原文鏈接: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來實(shí)現(xiàn)類似Annotation的功能,但是xdoclet的版本更新實(shí)在太慢,永遠(yuǎn)跟不上hibernate的更新速度,導(dǎo)致很多hibernate新的功能xdoclet都沒辦法支持.還好,jdk5.0有了Annotation,而且hibernate也開始支持Annotation了.
原來以為從xdoclet轉(zhuǎn)到Annotation很簡(jiǎn)單,沒想到還是遇到了問題,先看代碼:
?1
package?test;
?2
?3
import?org.hibernate.annotations.Entity;
?4
?5
import?javax.persistence.Id;
?6
import?java.io.Serializable;
?7
?8
@Entity
?9
public?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
看上去沒什么問題吧?沒想到運(yùn)行的時(shí)候根本跑不起來,老是提示:
?????[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里面單元測(cè)試的代碼才發(fā)現(xiàn)是這段代碼有問題:
1
import?org.hibernate.annotations.Entity;
2
3
import?javax.persistence.Id;
4
import?java.io.Serializable;
5
要改成:
1
import?javax.persistence.Id;
2
import?javax.persistence.Entity;
3
import?java.io.Serializable; 原來我用idea開發(fā)時(shí),在自動(dòng)完成的時(shí)候想當(dāng)然地選用了org.hibernate.annotations包下面的annotation,而實(shí)際上應(yīng)該使用javax.persistence包下面的annotation.想想看也很有道理:這樣一來我們的JAVA bean就不用import hibernate的包了,用的都是標(biāo)準(zhǔn)的java包.