存档

2008年9月 的存档

撰写令人感兴趣的技术文章的五个技巧 5-tips-for-writing-interesting

2008年9月22日 没有评论
撰写令人感兴趣的技术文章的五个技巧


在过去的几周,我收到了很多邮件。这些邮件都是咨询我是怎样不断的写出好文章的。正如我在以前的一篇文章中说过,我为Javalobby, Test Early 写过文章,当然也包括我自己的博客.以下是一些撰写令人感兴趣的技术文章的技巧。

撰写一篇好的技术文章的确是一个挑战,它将会占用你大量的私人时间,要求你做大量的研究。而且需要你对读和写一些技术文章有相当的热情。相信我如果你不喜欢阅读,那么你也不可能写作。现在让我们来看一看这五个技巧:

1. 第一点也是最重要的一点,你所写文章的论题上你应该有有相当多的专业知识。如果你对你所要写的论题不自信,你也不要写这个文章。要确保你已经制订出所有的步骤和给你的读者相当多的信息当出错时让他们知道应该怎么办。集中在一个论题上,并确保是扼要的。包括许许多的带有清晰说明有用的样品。如果你真的想去写,但又没有线索应该在哪里开始,最好的地方的就是从你自己的博客开始写。

2. 写作风格和标题:确保你所用的语言越简单越好自从你开始写一个技术论文。这是为了让母语不是英语的人在不用来回查字,也能很好的领会你的文章。让你的论文使读者感到友好。一个容易记住的标题对于吸引读者的注意力是非常重要的。这里的意思不是说你用为了让标题引起读者注意,而让文章与标题不符。

3. 写一个粗稿:我们都在语文课上学过一篇文章应该有三部分;引言,主体,最后是结论。在你发表之前确保你自己已经读过2-3次。如果你有家庭成员或同事,请他们看一下。通常来说,两个人看总比一个人看要好,对吗?

4. 评论:确保当你的读者有任何问题时,你能尽力最快的回复给读者。这些回复往往紧随在你的文章后面。尽管这些评论不恰当。但请务必不要进入口水战。请试着礼貌的传达你的信息,如果你不能做到,那就不用回复了。

5. 资源:请提供你认为的对读者有用并能得到更多信息的链接。这些放在文章末尾或者你直接提供把链接放在文中参考过这些资料的地方。如果你参考过任何书,也将他们列出来。这会给读者一条清晰的思路去搜索更多的详细资料。

这些就是我平常写文章的一些技巧,现在你也知道这个秘密,你还在等什么呢?开始写吧,让我们继续在Javalobby上发表文章吧。

分类: Translations 标签: ,

SpringSource改变其对Spring框架及其产品的维护策略

2008年9月21日 没有评论

by 丑鑫鑫

貌似从今以后我们需要为正在使用的spring框架的bug修复付费。Spring框架背后的公司SpringSource宣布了一项产品维护策略:

1.SpringSource 提供给 SpringSource Enterprise 的付费用户三年的当前版本如日常的维护版本样般的bug fix,安全隐患修复,快速的补丁修复。

2.针对免费的社区用户,当一个新的主版本发布后,为了找出开始的稳定性问题提供3周的bug fix等维护,过了三周以后SpringSource将不会把该版本的后续维护版本发布给社区的免费用户,而是将它提供给Enterprise的付费用户,Community user 只能从下一个Major Community Release 中得到上个版本的bug fix。

附上原文:http://www.springsource.com/products/enterprise/maintenancepolicy

SpringSource Enterprise Maintenance Policy

Effective September 2008, SpringSource has implemented a new maintenance policy for Spring. The policy provides Spring production users with a long-term, stable application platform to build, run and manage their Spring-powered applications.

Maintenance Policy:
Customers who are using SpringSource Enterprise, available under a subscription, will receive maintenance releases for three years from the general availability of a major new version. These customers receive ongoing, rapid patches as well as regular maintenance releases to address bugs, security vulnerabilities and usability issues, making SpringSource Enterprise the best option for production systems.

After a new major version of Spring is released, community maintenance updates will be issued for three months to address initial stability issues. Subsequent maintenance releases will be available to SpringSource Enterprise customers. Bug fixes will be folded into the open source development trunk and will be made available in the next major community release of the software.

分类: Java世界 标签: ,

限制同一用户同一时间只能一次登录系统(Acegi ConcurrentSessionFilter)

2008年9月20日 没有评论

by 丑鑫鑫

如果系统是采用acegi security,你不需要另外编写额外的代码来满足这个需求,硬生生的写个Listener,Filter去监听或者拦截session,实现这个功能不叫重造轮子,应该叫做用别人的轮子重造轮胎 😉

采用Acegi 的系统限制同一用户同一时间只能一次登录系统步骤如下:

1.改写web.xml加入如下的语句

<listener>
<listener-class>org.acegisecurity.ui.session.HttpSessionEventPublisher</listener-class>
</listener>

这个监听器用来监听session生命期的事件

2.在acegi相关的spring bean配置文件加入:

<bean id=“authenticationManager” class=“org.acegisecurity.providers.ProviderManager”>
<property name=“providers”>
<!– your providers go here –>
</property>

<property name=“sessionController”><ref bean=“concurrentSessionController”/></property>
</bean>

<bean id=“concurrentSessionController” class=“org.acegisecurity.concurrent.ConcurrentSessionControllerImpl”>

<property name=“maximumSessions”><value>1</value></property>
<property name=“sessionRegistry”><ref local=“sessionRegistry”/></property>
</bean>

<bean id=“sessionRegistry” class=“org.acegisecurity.concurrent.SessionRegistryImpl”/>

执行的过程为用户couxinxin登录到系统,在另一台机器上couxinxin这个用户又登录到系统,那么前一个用户couxinxin的Session将被后者冲掉(踢掉)

搞定Over ! 🙂

必须要使用acegi1.0.6及其以后的版本,不然会报出
java.lang.IllegalArgumentException: Authentication.getDetails() required
这是版本1.0.5的bug
描述为:

If concurrent session control is used with an authentication provider which doesn’t copy the authentication details object to the successful authentication (e.g. CasAuthenticationProvider) then the check with the concurrent session controller on whether access is allowed takes place before the copyDetails method of AbstractAuthenticationManager is called. This isn’t a problem with classes which extend AbstractUserDetailsAuthenticationProvider, as it copies the authentication details object itself.

The copyDetails method should probably be pulled down into ProviderManager and called before checkAuthenticationAllowed() is called. This will ensure that the details object is available even if the provider doesn’t set it.

It’s also not clear that we really need an AbstractAuthenticationManager at all, given how little there is in there.

参见:http://jira.springframework.org/browse/SEC-618

ps: blogger 的xml排版有点难看,呵呵

分类: Java世界 标签: , ,

jboss jBPM SVN Repository Address

2008年9月11日 没有评论

Some projects such as JBoss Web Services, JBoss ESB, and JBoss Rules use Subversion for their source code repositories. We have multiple svn repositories:

NOTE: THE URLs here are NOT YET READY for JBoss Rules, please do not use them at this time.

Anonymous Access is provided by the following url:

http://anonsvn.jboss.org/repos/

Committer Access is provided by:

https://svn.jboss.org/repos/

Note that the anonymous repository is a mirror of the committer repository that is synched every 5 minutes.

Committers will be prompted for their jboss.com id and password. There are no public and private keys for these repositories. All encryption is done via https. Each project maintains its own list of committers and there is directory level access controls in place.

Committer access requires agreement to one of the following contributor agreements:

… …

http://anonsvn.jboss.org/repos/中列出的项目里面没有jBPM,但是我们发现JBoss Portal的地址是http://anonsvn.jboss.org/repos/portal/ 通过猜测可以的到jbpm的SVN库地址为

http://anonsvn.jboss.org/repos/jbpm/

(+_+)#

解决在虚拟主机安装drupal的问题

2008年9月11日 没有评论

直接安装drupal 6.4到虚拟主机会遇到当安装数据库这样步的时候,输入正确的数据库信息却不能走到下一步。而页面又重新刷新了一次,没有任何错误提示信息。

解决方法:填好数据库信息时,修改 sites/default/settings.php数据库相关的内容为真实的设置,再点击 save & continue。

分类: Miscellaneous 标签: ,

Official Google Blog: A fresh take on the browser

2008年9月1日 没有评论
分类: Architecture 标签: