﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-Steady's Java Zone-随笔分类-JSF &amp; Myfaces</title><link>http://www.blogjava.net/steady/category/6389.html</link><description /><language>zh-cn</language><lastBuildDate>Fri, 18 May 2007 16:01:10 GMT</lastBuildDate><pubDate>Fri, 18 May 2007 16:01:10 GMT</pubDate><ttl>60</ttl><item><title>JSF without ManagedBean</title><link>http://www.blogjava.net/steady/archive/2006/09/05/67742.html</link><dc:creator>steady</dc:creator><author>steady</author><pubDate>Tue, 05 Sep 2006 02:16:00 GMT</pubDate><guid>http://www.blogjava.net/steady/archive/2006/09/05/67742.html</guid><wfw:comment>http://www.blogjava.net/steady/comments/67742.html</wfw:comment><comments>http://www.blogjava.net/steady/archive/2006/09/05/67742.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/steady/comments/commentRss/67742.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/steady/services/trackbacks/67742.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 这几天突发奇想，过去通过一些对 Navigation 的实现来省去了 JSF Navigation 的配置，现在又有新的想法了，能不能在 face-config.xml 中连 Managed Bean 都不要配置了呢，答案是肯定的，并且在实践中也得到了证明。&nbsp;&nbsp;<a href='http://www.blogjava.net/steady/archive/2006/09/05/67742.html'>阅读全文</a><img src ="http://www.blogjava.net/steady/aggbug/67742.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/steady/" target="_blank">steady</a> 2006-09-05 10:16 <a href="http://www.blogjava.net/steady/archive/2006/09/05/67742.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>JSF 中使用自定义 Navigation</title><link>http://www.blogjava.net/steady/archive/2006/05/29/48669.html</link><dc:creator>steady</dc:creator><author>steady</author><pubDate>Mon, 29 May 2006 00:52:00 GMT</pubDate><guid>http://www.blogjava.net/steady/archive/2006/05/29/48669.html</guid><wfw:comment>http://www.blogjava.net/steady/comments/48669.html</wfw:comment><comments>http://www.blogjava.net/steady/archive/2006/05/29/48669.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/steady/comments/commentRss/48669.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/steady/services/trackbacks/48669.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 过去的一段时间，一直有人拿 JSF 的 Navigation 当靶子，批评 JSF，其实细心的人会发现，在 Java 世界，这样的批评常常是很片面的，几乎所有成熟的应用框架，在除了实现某些默认的功能外，还保留一些扩展的接口，提供了相当的扩展性，比如说 struts， spring 等很多的 web framework 都提供了很多扩展的接口，当然，JSF 也一样。JSF 的 Navigation 中，我们一个 page 都有一个 from-view-id ，它的每个 navigation 出口 to-view-id 都必须定义，所以在不同的 from-view-id 中会有一些重复的 to-view-id，并且每当有一个新的 navigation 路径，我们都必须配置这个路径，才能够在 action 中正确的转向我们这个路径。很多情况下，这样的方式用起来都不是很爽，我们需要有一些简单的方式，我们在 action 事件中，直接 return 一个 page 的 path 就会直接 forward 到这个 page ，在用的时候会方便一些，有没有办法去做到呢？&nbsp;&nbsp;<a href='http://www.blogjava.net/steady/archive/2006/05/29/48669.html'>阅读全文</a><img src ="http://www.blogjava.net/steady/aggbug/48669.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/steady/" target="_blank">steady</a> 2006-05-29 08:52 <a href="http://www.blogjava.net/steady/archive/2006/05/29/48669.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>JSF 自定义导航处理程序</title><link>http://www.blogjava.net/steady/archive/2006/04/25/43133.html</link><dc:creator>steady</dc:creator><author>steady</author><pubDate>Tue, 25 Apr 2006 13:24:00 GMT</pubDate><guid>http://www.blogjava.net/steady/archive/2006/04/25/43133.html</guid><wfw:comment>http://www.blogjava.net/steady/comments/43133.html</wfw:comment><comments>http://www.blogjava.net/steady/archive/2006/04/25/43133.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/steady/comments/commentRss/43133.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/steady/services/trackbacks/43133.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: &nbsp;&nbsp;<a href='http://www.blogjava.net/steady/archive/2006/04/25/43133.html'>阅读全文</a><img src ="http://www.blogjava.net/steady/aggbug/43133.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/steady/" target="_blank">steady</a> 2006-04-25 21:24 <a href="http://www.blogjava.net/steady/archive/2006/04/25/43133.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>在JSF中实现分页（三） </title><link>http://www.blogjava.net/steady/archive/2006/03/28/37859.html</link><dc:creator>steady</dc:creator><author>steady</author><pubDate>Tue, 28 Mar 2006 11:12:00 GMT</pubDate><guid>http://www.blogjava.net/steady/archive/2006/03/28/37859.html</guid><wfw:comment>http://www.blogjava.net/steady/comments/37859.html</wfw:comment><comments>http://www.blogjava.net/steady/archive/2006/03/28/37859.html#Feedback</comments><slash:comments>4</slash:comments><wfw:commentRss>http://www.blogjava.net/steady/comments/commentRss/37859.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/steady/services/trackbacks/37859.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 好久没有写点东西了，这次想把JSF中的分页系列文章再扩充一点，说明一下查询和分页结合的情况，当我们把查询条件和查询结果放到一个页面上时，查询还是非常容易实现的，甚至不需要我们手工去从数据库中查询。&nbsp;&nbsp;<a href='http://www.blogjava.net/steady/archive/2006/03/28/37859.html'>阅读全文</a><img src ="http://www.blogjava.net/steady/aggbug/37859.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/steady/" target="_blank">steady</a> 2006-03-28 19:12 <a href="http://www.blogjava.net/steady/archive/2006/03/28/37859.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>JSF OpenDoc 活动开展</title><link>http://www.blogjava.net/steady/archive/2006/03/08/34195.html</link><dc:creator>steady</dc:creator><author>steady</author><pubDate>Wed, 08 Mar 2006 02:28:00 GMT</pubDate><guid>http://www.blogjava.net/steady/archive/2006/03/08/34195.html</guid><wfw:comment>http://www.blogjava.net/steady/comments/34195.html</wfw:comment><comments>http://www.blogjava.net/steady/archive/2006/03/08/34195.html#Feedback</comments><slash:comments>4</slash:comments><wfw:commentRss>http://www.blogjava.net/steady/comments/commentRss/34195.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/steady/services/trackbacks/34195.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要:    为了让更多的朋友了解 JSF ，也让 JSF 变得对大家不那么陌生，我和一些积极贡献的朋友们在 BlogJava 和我的 JSF 论坛上开展了 JSF OpenDoc 活动，目的是为了把更多更好的 JSF 资料奉献给大家，目前包括两部分 《 JSF Cookbook 》主要是把使用上常见的问题拿出来和大家分享，为了让大家能够更好的找到自己问题的解决方案，第二部分 《 JSF OpenDoc 》主要是翻译国外的优秀文档，把这些好的文档中文化，让更多的人能够更容易的去学去用 JSF。&nbsp;&nbsp;<a href='http://www.blogjava.net/steady/archive/2006/03/08/34195.html'>阅读全文</a><img src ="http://www.blogjava.net/steady/aggbug/34195.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/steady/" target="_blank">steady</a> 2006-03-08 10:28 <a href="http://www.blogjava.net/steady/archive/2006/03/08/34195.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>使用Shale巧妙解决JSF中的几个难题</title><link>http://www.blogjava.net/steady/archive/2006/03/07/33995.html</link><dc:creator>steady</dc:creator><author>steady</author><pubDate>Tue, 07 Mar 2006 01:57:00 GMT</pubDate><guid>http://www.blogjava.net/steady/archive/2006/03/07/33995.html</guid><wfw:comment>http://www.blogjava.net/steady/comments/33995.html</wfw:comment><comments>http://www.blogjava.net/steady/archive/2006/03/07/33995.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/steady/comments/commentRss/33995.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/steady/services/trackbacks/33995.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要:     好久都没有去写点东西了，不过最近也没有太多的时间去专门研究一些东西，就把我在实践中的一些经验拿出来和大家分享。因为 iCustomer 这个使用 JSF 的项目，最近一直在尝试解决一些过去遗留下来的问题，比如说验证之类的，还有防止重复提交页面，最后加上一个日期转换的问题。&nbsp;&nbsp;<a href='http://www.blogjava.net/steady/archive/2006/03/07/33995.html'>阅读全文</a><img src ="http://www.blogjava.net/steady/aggbug/33995.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/steady/" target="_blank">steady</a> 2006-03-07 09:57 <a href="http://www.blogjava.net/steady/archive/2006/03/07/33995.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>JSF中使用Struts Tiles和Standalone Tiles</title><link>http://www.blogjava.net/steady/archive/2006/02/08/29953.html</link><dc:creator>steady</dc:creator><author>steady</author><pubDate>Wed, 08 Feb 2006 09:26:00 GMT</pubDate><guid>http://www.blogjava.net/steady/archive/2006/02/08/29953.html</guid><wfw:comment>http://www.blogjava.net/steady/comments/29953.html</wfw:comment><comments>http://www.blogjava.net/steady/archive/2006/02/08/29953.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/steady/comments/commentRss/29953.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/steady/services/trackbacks/29953.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: Tiles是Struts中提供的一个优秀的模板技术，在JSF中，默认并没有提供这样的模板技术，但是，我们可以很容易的集成Struts中提供的Tiles到JSF中，现在，Tiles从Struts中独立出来了，我们也可以在JSF中使用Shale中提供的Standalone Tiles。&nbsp;&nbsp;<a href='http://www.blogjava.net/steady/archive/2006/02/08/29953.html'>阅读全文</a><img src ="http://www.blogjava.net/steady/aggbug/29953.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/steady/" target="_blank">steady</a> 2006-02-08 17:26 <a href="http://www.blogjava.net/steady/archive/2006/02/08/29953.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>JSF实践项目MyPSP</title><link>http://www.blogjava.net/steady/archive/2006/02/08/29885.html</link><dc:creator>steady</dc:creator><author>steady</author><pubDate>Wed, 08 Feb 2006 01:26:00 GMT</pubDate><guid>http://www.blogjava.net/steady/archive/2006/02/08/29885.html</guid><wfw:comment>http://www.blogjava.net/steady/comments/29885.html</wfw:comment><comments>http://www.blogjava.net/steady/archive/2006/02/08/29885.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/steady/comments/commentRss/29885.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/steady/services/trackbacks/29885.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 这是我最近三个月从学JSF开始做的一个实践项目,我在这里写的一些关于JSF的文章和随笔都是在这个项目基础上的,现在我把它拿出来和大家分享,同时也希望对此项目有兴趣的朋友能够投入到项目中来,也希望我的一些经验能给大家带来一些学习上的便利。同时也请高手多多指点，就让我们在学习和实践中共同进步。&nbsp;&nbsp;<a href='http://www.blogjava.net/steady/archive/2006/02/08/29885.html'>阅读全文</a><img src ="http://www.blogjava.net/steady/aggbug/29885.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/steady/" target="_blank">steady</a> 2006-02-08 09:26 <a href="http://www.blogjava.net/steady/archive/2006/02/08/29885.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>JSF的中文化与国际化</title><link>http://www.blogjava.net/steady/archive/2006/01/20/28828.html</link><dc:creator>steady</dc:creator><author>steady</author><pubDate>Fri, 20 Jan 2006 12:39:00 GMT</pubDate><guid>http://www.blogjava.net/steady/archive/2006/01/20/28828.html</guid><wfw:comment>http://www.blogjava.net/steady/comments/28828.html</wfw:comment><comments>http://www.blogjava.net/steady/archive/2006/01/20/28828.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/steady/comments/commentRss/28828.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/steady/services/trackbacks/28828.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 对于各种不同的Java应用，国际化的问题总会给我们非英文用户带来一些麻烦，在JSF中也一样，在实践中碰到了一系列不容易解决的问题，最终解决的大部分的问题，也完成了一个小项目，我把我的一些经验拿出来和大家分享一下，希望能让大家在这些地方少走一些弯路。&nbsp;&nbsp;<a href='http://www.blogjava.net/steady/archive/2006/01/20/28828.html'>阅读全文</a><img src ="http://www.blogjava.net/steady/aggbug/28828.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/steady/" target="_blank">steady</a> 2006-01-20 20:39 <a href="http://www.blogjava.net/steady/archive/2006/01/20/28828.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>解析Tree2(二) </title><link>http://www.blogjava.net/steady/archive/2006/01/13/27960.html</link><dc:creator>steady</dc:creator><author>steady</author><pubDate>Fri, 13 Jan 2006 11:28:00 GMT</pubDate><guid>http://www.blogjava.net/steady/archive/2006/01/13/27960.html</guid><wfw:comment>http://www.blogjava.net/steady/comments/27960.html</wfw:comment><comments>http://www.blogjava.net/steady/archive/2006/01/13/27960.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/steady/comments/commentRss/27960.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/steady/services/trackbacks/27960.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 改变Tree中的内容（当展开树的节点时，在后台延迟加载）在邮件列表中有很多关于这项任务的问题和讨论，我（Marcel，一个 JSF 的初学者）在这里总结一下。如果你有更好的解决方案，请更新这些文字。在这里存在的一个问题就是我要这样把“＋”图标去掉：·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;t:tree2&nbsp;....&nbsp;&nbsp;<a href='http://www.blogjava.net/steady/archive/2006/01/13/27960.html'>阅读全文</a><img src ="http://www.blogjava.net/steady/aggbug/27960.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/steady/" target="_blank">steady</a> 2006-01-13 19:28 <a href="http://www.blogjava.net/steady/archive/2006/01/13/27960.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>解析Tree2(一)</title><link>http://www.blogjava.net/steady/archive/2006/01/13/27904.html</link><dc:creator>steady</dc:creator><author>steady</author><pubDate>Fri, 13 Jan 2006 04:59:00 GMT</pubDate><guid>http://www.blogjava.net/steady/archive/2006/01/13/27904.html</guid><wfw:comment>http://www.blogjava.net/steady/comments/27904.html</wfw:comment><comments>http://www.blogjava.net/steady/archive/2006/01/13/27904.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/steady/comments/commentRss/27904.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/steady/services/trackbacks/27904.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 在我的 blog 中，JSF 的Tree2 组件一直都是一个热门的讨论话题，为了向大家介绍更多关于Tree2的内容，我翻译了这篇原产于 Apache Myfaces 社区的介绍 Tree2 的文章，希望大家能够对 Tree2 有更深的认识。&nbsp;&nbsp;<a href='http://www.blogjava.net/steady/archive/2006/01/13/27904.html'>阅读全文</a><img src ="http://www.blogjava.net/steady/aggbug/27904.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/steady/" target="_blank">steady</a> 2006-01-13 12:59 <a href="http://www.blogjava.net/steady/archive/2006/01/13/27904.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>JSF的最佳拍档</title><link>http://www.blogjava.net/steady/archive/2006/01/11/27518.html</link><dc:creator>steady</dc:creator><author>steady</author><pubDate>Wed, 11 Jan 2006 01:32:00 GMT</pubDate><guid>http://www.blogjava.net/steady/archive/2006/01/11/27518.html</guid><wfw:comment>http://www.blogjava.net/steady/comments/27518.html</wfw:comment><comments>http://www.blogjava.net/steady/archive/2006/01/11/27518.html#Feedback</comments><slash:comments>15</slash:comments><wfw:commentRss>http://www.blogjava.net/steady/comments/commentRss/27518.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/steady/services/trackbacks/27518.html</trackback:ping><description><![CDATA[<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span lang=EN-US style="FONT-SIZE: 9pt"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">工欲善其事，必先利其器。做</span><span lang=EN-US style="FONT-SIZE: 9pt">Java</span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的</span><span lang=EN-US style="FONT-SIZE: 9pt">Web</span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">开发也不例外，一个好的工具，往往会达到事半功倍的效果。开发</span><span lang=EN-US style="FONT-SIZE: 9pt">JSF</span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">有着无数好用的工具，基本上都是</span><span lang=EN-US style="FONT-SIZE: 9pt">Eclipse</span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的插件，</span><span lang=EN-US style="FONT-SIZE: 9pt">BEA Workshop(</span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">前身是</span><span lang=EN-US style="FONT-SIZE: 9pt">NitroX)</span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，</span><span lang=EN-US style="FONT-SIZE: 9pt">Exadel</span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，</span><span lang=EN-US style="FONT-SIZE: 9pt">MyEclipse</span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">等等，当然</span><span lang=EN-US style="FONT-SIZE: 9pt">IBM Rational </span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的</span><span lang=EN-US style="FONT-SIZE: 9pt">RSA</span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">和</span><span lang=EN-US style="FONT-SIZE: 9pt">Borland</span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的</span><span lang=EN-US style="FONT-SIZE: 9pt">JBuilder</span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">还有</span><span lang=EN-US style="FONT-SIZE: 9pt">Oracle</span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的</span><span lang=EN-US style="FONT-SIZE: 9pt">JDeveloper</span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">都具备这方面的开发功能，但是因为太过庞大了，就不推荐了，我重点推荐的是</span><span lang=EN-US style="FONT-SIZE: 9pt">Workshop</span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">和</span><span lang=EN-US style="FONT-SIZE: 9pt">Exadel</span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">。</span><span lang=EN-US style="FONT-SIZE: 9pt"><o:p></o:p></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span lang=EN-US style="FONT-SIZE: 9pt"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>BEA Workshop</span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，其前身</span><span lang=EN-US style="FONT-SIZE: 9pt">NitroX</span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">曾经获得过</span><span lang=EN-US style="FONT-SIZE: 9pt">Jolt</span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">奖，十月份的时候，被</span><span lang=EN-US style="FONT-SIZE: 9pt">BEA</span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">收购，改名为</span><span lang=EN-US style="FONT-SIZE: 9pt">BEA Workshop</span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，</span><span lang=EN-US style="FONT-SIZE: 9pt">(</span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">并非</span><span lang=EN-US style="FONT-SIZE: 9pt">BEA WebLogic Workshop)</span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">。</span><span lang=EN-US style="FONT-SIZE: 9pt">Workshop</span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">是一款针对</span><span lang=EN-US style="FONT-SIZE: 9pt">Hibernate</span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">、</span><span lang=EN-US style="FONT-SIZE: 9pt">JSF</span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">、</span><span lang=EN-US style="FONT-SIZE: 9pt">Struts</span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">、</span><span lang=EN-US style="FONT-SIZE: 9pt">Tiles</span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">和</span><span lang=EN-US style="FONT-SIZE: 9pt">JSP</span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的专业化</span><span lang=EN-US style="FONT-SIZE: 9pt">Eclipse</span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">工具，而且最新的</span><span lang=EN-US style="FONT-SIZE: 9pt">3.0M2</span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">版本提供了对最新版本的</span><span lang=EN-US style="FONT-SIZE: 9pt">Myfaces 1.1.1</span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的</span><span lang=EN-US style="FONT-SIZE: 9pt">WYSIWYG</span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">支持，使用非常的顺手，我最近几个月都一直使用它来进行</span><span lang=EN-US style="FONT-SIZE: 9pt">Struts</span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">和</span><span lang=EN-US style="FONT-SIZE: 9pt">JSF</span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">方面的开发。</span><span lang=EN-US style="FONT-SIZE: 9pt"><o:p></o:p></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span lang=EN-US style="FONT-SIZE: 9pt"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">该软件可到：</span><span lang=EN-US style="FONT-SIZE: 9pt"><a href="http://www.m7.com/downloadNitroX.do">http://www.m7.com/downloadNitroX.do</a> </span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">下载。</span><span lang=EN-US style="FONT-SIZE: 9pt"><o:p></o:p></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span lang=EN-US style="FONT-SIZE: 9pt"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>Exadel</span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">却并不怎么出名，但是它的</span><span lang=EN-US style="FONT-SIZE: 9pt">JSF</span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">编辑功能却很出色，最近版本</span><span lang=EN-US style="FONT-SIZE: 9pt">3.05</span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，我们公司开发</span><span lang=EN-US style="FONT-SIZE: 9pt">JSF</span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">时用的开发工具。有很多出色的特性，如对</span><span lang=EN-US style="FONT-SIZE: 9pt">Struts</span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的支持，除了常规的导航流图，配置编辑，可视化验证，之类，还直</span><span lang=EN-US style="FONT-SIZE: 9pt"><a href="http://www.exadel.com/exadelstudio/help/tilesEditor.html" target=_blank><span lang=EN-US style="COLOR: windowtext; FONT-FAMILY: 宋体; TEXT-DECORATION: none; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; text-underline: none"><span lang=EN-US>支持</span></span><span style="COLOR: windowtext; TEXT-DECORATION: none; text-underline: none">TILES</span><span lang=EN-US style="COLOR: windowtext; FONT-FAMILY: 宋体; TEXT-DECORATION: none; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; text-underline: none"><span lang=EN-US>的可视化</span></span></a></span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，这点有很大进步，但是和</span><span lang=EN-US style="FONT-SIZE: 9pt">NitroX</span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">比还是有些差距，后者能够支持</span><span lang=EN-US style="FONT-SIZE: 9pt">JSP</span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">编辑器中的</span><span lang=EN-US style="FONT-SIZE: 9pt">TILES WYSWYG</span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">效果。还有个有趣的特征是</span><span lang=EN-US style="FONT-SIZE: 9pt"><a href="http://www.exadel.com/exadelstudio/help/strutsConfigDebug.html" target=_blank><span style="COLOR: windowtext; TEXT-DECORATION: none; text-underline: none">Struts</span><span lang=EN-US style="COLOR: windowtext; FONT-FAMILY: 宋体; TEXT-DECORATION: none; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; text-underline: none"><span lang=EN-US>配置文件的</span></span><span style="COLOR: windowtext; TEXT-DECORATION: none; text-underline: none">Debug</span></a>, </span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">直接在图形上就可以设置断点。</span><span lang=EN-US style="FONT-SIZE: 9pt"><o:p></o:p></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span lang=EN-US style="FONT-SIZE: 9pt"><span style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">该软件可到：</span><span lang=EN-US style="FONT-SIZE: 9pt"><a href="http://box.exadel.com/exadelproducts/app_products.process.main.start?_action=products">http://box.exadel.com/exadelproducts/app_products.process.main.start?_action=products</a> </span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">下载</span><span lang=EN-US style="FONT-SIZE: 9pt"><o:p></o:p></span></p>
<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt"><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">在周围开发</span><span lang=EN-US style="FONT-SIZE: 9pt">JSF</span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的大多数人看来，这两款工具可以说是目前最为强大的</span><span lang=EN-US style="FONT-SIZE: 9pt">JSF</span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">开发工具了，虽然它们都有种种的不足，但是它们却在不断的在应用中改变着，进步着，相信随着</span><span lang=EN-US style="FONT-SIZE: 9pt">JSF</span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的不断成熟，我们会有更多的选择。（如果需要破解的话，可以到我的论坛下载<a href="http://www.js66.com/java/read.php?tid=54&amp;page=1&amp;toread=1">http://www.js66.com/java/read.php?tid=54&amp;page=1&amp;toread=1</a></span><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">）</span><span lang=EN-US style="FONT-SIZE: 9pt"><o:p></o:p></span></p>
<img src ="http://www.blogjava.net/steady/aggbug/27518.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/steady/" target="_blank">steady</a> 2006-01-11 09:32 <a href="http://www.blogjava.net/steady/archive/2006/01/11/27518.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>在JSF中使用Shale进行客户端验证</title><link>http://www.blogjava.net/steady/archive/2006/01/05/26647.html</link><dc:creator>steady</dc:creator><author>steady</author><pubDate>Thu, 05 Jan 2006 01:25:00 GMT</pubDate><guid>http://www.blogjava.net/steady/archive/2006/01/05/26647.html</guid><wfw:comment>http://www.blogjava.net/steady/comments/26647.html</wfw:comment><comments>http://www.blogjava.net/steady/archive/2006/01/05/26647.html#Feedback</comments><slash:comments>5</slash:comments><wfw:commentRss>http://www.blogjava.net/steady/comments/commentRss/26647.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/steady/services/trackbacks/26647.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: JSF中默认并没有提供客户端验证机制，这就需要使用其他的方法来验证，Shale已经为我们做好了，通过封装commonsValidator，实现了非常方便易用的客户端验证。&nbsp;&nbsp;<a href='http://www.blogjava.net/steady/archive/2006/01/05/26647.html'>阅读全文</a><img src ="http://www.blogjava.net/steady/aggbug/26647.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/steady/" target="_blank">steady</a> 2006-01-05 09:25 <a href="http://www.blogjava.net/steady/archive/2006/01/05/26647.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>在JSF中实现分页（二）</title><link>http://www.blogjava.net/steady/archive/2005/12/30/26013.html</link><dc:creator>steady</dc:creator><author>steady</author><pubDate>Fri, 30 Dec 2005 02:30:00 GMT</pubDate><guid>http://www.blogjava.net/steady/archive/2005/12/30/26013.html</guid><wfw:comment>http://www.blogjava.net/steady/comments/26013.html</wfw:comment><comments>http://www.blogjava.net/steady/archive/2005/12/30/26013.html#Feedback</comments><slash:comments>10</slash:comments><wfw:commentRss>http://www.blogjava.net/steady/comments/commentRss/26013.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/steady/services/trackbacks/26013.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 前面一篇直接使用了Myfaces中的两个Component完成了一个简单的分页，这里将会介绍一种On-demand loading的方法来进行分页，仅仅在需要数据的时候加载。&nbsp;&nbsp;<a href='http://www.blogjava.net/steady/archive/2005/12/30/26013.html'>阅读全文</a><img src ="http://www.blogjava.net/steady/aggbug/26013.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/steady/" target="_blank">steady</a> 2005-12-30 10:30 <a href="http://www.blogjava.net/steady/archive/2005/12/30/26013.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>在JSF中实现分页（一）</title><link>http://www.blogjava.net/steady/archive/2005/12/29/25935.html</link><dc:creator>steady</dc:creator><author>steady</author><pubDate>Thu, 29 Dec 2005 12:55:00 GMT</pubDate><guid>http://www.blogjava.net/steady/archive/2005/12/29/25935.html</guid><wfw:comment>http://www.blogjava.net/steady/comments/25935.html</wfw:comment><comments>http://www.blogjava.net/steady/archive/2005/12/29/25935.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/steady/comments/commentRss/25935.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/steady/services/trackbacks/25935.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 对于大多数Web应用，分页都是必不可少的功能，当然在JSF中也一样，我在这里用两篇文章介绍两种方法来展示一下，如何在JSF中实现分页。&nbsp;&nbsp;<a href='http://www.blogjava.net/steady/archive/2005/12/29/25935.html'>阅读全文</a><img src ="http://www.blogjava.net/steady/aggbug/25935.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/steady/" target="_blank">steady</a> 2005-12-29 20:55 <a href="http://www.blogjava.net/steady/archive/2005/12/29/25935.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>JSF与JSTL的互操作问题</title><link>http://www.blogjava.net/steady/archive/2005/12/15/24054.html</link><dc:creator>steady</dc:creator><author>steady</author><pubDate>Thu, 15 Dec 2005 07:35:00 GMT</pubDate><guid>http://www.blogjava.net/steady/archive/2005/12/15/24054.html</guid><wfw:comment>http://www.blogjava.net/steady/comments/24054.html</wfw:comment><comments>http://www.blogjava.net/steady/archive/2005/12/15/24054.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/steady/comments/commentRss/24054.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/steady/services/trackbacks/24054.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 最近一直在用JSF，遇到了一些很奇怪的事情，昨天花了点时间仔细分析了一下，找到了一个主要问题，就是JSF和JSTL之间的互操作存在着兼容性问题。&nbsp;&nbsp;<a href='http://www.blogjava.net/steady/archive/2005/12/15/24054.html'>阅读全文</a><img src ="http://www.blogjava.net/steady/aggbug/24054.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/steady/" target="_blank">steady</a> 2005-12-15 15:35 <a href="http://www.blogjava.net/steady/archive/2005/12/15/24054.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>JSF Tree2 实践</title><link>http://www.blogjava.net/steady/archive/2005/12/01/22068.html</link><dc:creator>steady</dc:creator><author>steady</author><pubDate>Thu, 01 Dec 2005 01:26:00 GMT</pubDate><guid>http://www.blogjava.net/steady/archive/2005/12/01/22068.html</guid><wfw:comment>http://www.blogjava.net/steady/comments/22068.html</wfw:comment><comments>http://www.blogjava.net/steady/archive/2005/12/01/22068.html#Feedback</comments><slash:comments>26</slash:comments><wfw:commentRss>http://www.blogjava.net/steady/comments/commentRss/22068.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/steady/services/trackbacks/22068.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 通过一次小小的实践，终于了解如何使用tomahawk中的tree2这个组件了，并且写了小段程序，从xml中读取树的结构，生成一个tree，不过tree2不能直接和xml绑定是一个遗憾，那样就会省不少事情了。记下一点心得，以供后来参考了。&nbsp;&nbsp;<a href='http://www.blogjava.net/steady/archive/2005/12/01/22068.html'>阅读全文</a><img src ="http://www.blogjava.net/steady/aggbug/22068.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/steady/" target="_blank">steady</a> 2005-12-01 09:26 <a href="http://www.blogjava.net/steady/archive/2005/12/01/22068.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>JSF -&gt; Spring</title><link>http://www.blogjava.net/steady/archive/2005/11/24/21209.html</link><dc:creator>steady</dc:creator><author>steady</author><pubDate>Thu, 24 Nov 2005 01:18:00 GMT</pubDate><guid>http://www.blogjava.net/steady/archive/2005/11/24/21209.html</guid><wfw:comment>http://www.blogjava.net/steady/comments/21209.html</wfw:comment><comments>http://www.blogjava.net/steady/archive/2005/11/24/21209.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/steady/comments/commentRss/21209.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/steady/services/trackbacks/21209.html</trackback:ping><description><![CDATA[<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><SPAN lang=EN-US style="FONT-SIZE: 9pt"><SPAN style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN></SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">花了一个多礼拜的时间狂啃了一下</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt">JSF</SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，完成了一个不大不小的</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt">training</SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，其实只算是一个</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt">share</SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">了，把我学到的</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt">JSF</SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">基础知识和这段时间的一些心得拿出来和大家分享。之前的晚上倒是紧张了一晚上没有休息好，准备了一堆可以用的台词，准备了一堆可以扩展的内容，不过好多都没有真正的用到，进度比我想像的要慢一些，只是花时间讲了一下最基础的概念：</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt">managed-bean, navigation, event, converter, validator</SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">等等了，然后做了一个事先准备好的例子，不过大家基本上都建立出了第一个</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt">JSF</SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的应用程序，算是顺利但不很圆满的完成了任务，本来准备进一步说明的自定义</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt">JSF</SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">组件之类的就没有时间了，算是小小的遗憾吧。</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt"><?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /><o:p></o:p></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><SPAN lang=EN-US style="FONT-SIZE: 9pt"><SPAN style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN></SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">昨天一天的时间把我上周的任务收尾，修正了一些</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt"> bug</SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，加上了一些</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt">log</SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">信息，完成了文档，于是便可以进行我新的学习了，主要还是</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt">Rod Johnson</SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">那本</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt">without EJB</SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，其实大师的书已经仰慕很久了，应该说是从实际解决项目问题的角度来看</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt">J2EE</SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，毕竟</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt">Java</SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">语言，</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt">J2EE</SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">这样的东西都太多的一些学院派的味道，经常把一些本来可以简单的问题弄的很复杂，用公司早期用的框架，有太多的重复代码，很多烦琐的配置，和一些莫名其妙的奇怪问题，但是用</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt">spring</SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt">hibernate</SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">这些从实践中得来的东西，确实会感觉到爽，因为它们真的很好用。</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt"><o:p></o:p></SPAN></P><img src ="http://www.blogjava.net/steady/aggbug/21209.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/steady/" target="_blank">steady</a> 2005-11-24 09:18 <a href="http://www.blogjava.net/steady/archive/2005/11/24/21209.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>看完了Mastering JSF</title><link>http://www.blogjava.net/steady/archive/2005/11/21/20811.html</link><dc:creator>steady</dc:creator><author>steady</author><pubDate>Mon, 21 Nov 2005 11:02:00 GMT</pubDate><guid>http://www.blogjava.net/steady/archive/2005/11/21/20811.html</guid><wfw:comment>http://www.blogjava.net/steady/comments/20811.html</wfw:comment><comments>http://www.blogjava.net/steady/archive/2005/11/21/20811.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/steady/comments/commentRss/20811.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/steady/services/trackbacks/20811.html</trackback:ping><description><![CDATA[<P style="MARGIN: 0cm 0cm 0pt"><SPAN lang=EN-US style="FONT-SIZE: 9pt"><SPAN style="mso-tab-count: 1"><FONT face="Times New Roman">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </FONT></SPAN></SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">一周多一点的时间，把</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt"><FONT face="Times New Roman">Mastering JSF</FONT></SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">啃下来了，虽说很多细节没有照顾到，但是还是有了一个整体的感觉，这是我学的第二个</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt"><FONT face="Times New Roman">MVC</FONT></SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">框架，终于可以把过去学</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt"><FONT face="Times New Roman">struts</FONT></SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的东西拿来比较了，看了</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt"><FONT face="Times New Roman">jdon</FONT></SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">网站上那篇流传甚广的那篇比较两者的文章，似乎一下明白了很多，也似乎并没有明白，因为它们很多地方真的太像了，像的看很多东西都有种似曾相识的感觉，这样在一定程度上减小了从</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt"><FONT face="Times New Roman">struts</FONT></SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">到</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt"><FONT face="Times New Roman">JSF</FONT></SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的难度。很</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt"><FONT face="Times New Roman">ASP.NET</FONT></SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">不同的是，</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt"><FONT face="Times New Roman">JSF</FONT></SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt"><FONT face="Times New Roman">Component</FONT></SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">是直接和</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt"><FONT face="Times New Roman">JavaBean</FONT></SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">绑定的，最终直接是从</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt"><FONT face="Times New Roman">JavaBean</FONT></SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">中取数据，而</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt"><FONT face="Times New Roman">ASP.NET</FONT></SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">却是直接用</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt"><FONT face="Times New Roman">Component</FONT></SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的属性取数据，设计上来说，</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt"><FONT face="Times New Roman">JSF</FONT></SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">这样做更优雅一些，但</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt"><FONT face="Times New Roman">ASP.NET</FONT></SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">这样做似乎减小了一些入门者的进入难度，各自的设计哲学并不相同，并没有明显的好坏之分。只是</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt"><FONT face="Times New Roman">JSF</FONT></SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的发展时间太短，它还不成熟。</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt"><?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /><o:p></o:p></SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt"><SPAN lang=EN-US style="FONT-SIZE: 9pt"><FONT face="Times New Roman"><SPAN style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>JSF</FONT></SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的验证方式我也很喜欢，一个</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt"><FONT face="Times New Roman">Component</FONT></SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">挂一个</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt"><FONT face="Times New Roman">Validator</FONT></SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">。相比较过去在</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt"><FONT face="Times New Roman">struts</FONT></SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">下使用</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt"><FONT face="Times New Roman">Validator</FONT></SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">框架配置验证来说，结构要清楚的多。</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt"><o:p></o:p></SPAN></P><img src ="http://www.blogjava.net/steady/aggbug/20811.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/steady/" target="_blank">steady</a> 2005-11-21 19:02 <a href="http://www.blogjava.net/steady/archive/2005/11/21/20811.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>MyFaces' Extensions Filter</title><link>http://www.blogjava.net/steady/archive/2005/11/17/20170.html</link><dc:creator>steady</dc:creator><author>steady</author><pubDate>Thu, 17 Nov 2005 00:34:00 GMT</pubDate><guid>http://www.blogjava.net/steady/archive/2005/11/17/20170.html</guid><wfw:comment>http://www.blogjava.net/steady/comments/20170.html</wfw:comment><comments>http://www.blogjava.net/steady/archive/2005/11/17/20170.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/steady/comments/commentRss/20170.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/steady/services/trackbacks/20170.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 这几天一直在用myfaces，遇到一个问题，使用inputDate 和 tree2 这样的组件的时候，当开启了一些和JavaScript相关的选项时，总是会提示JavaScript错误，但是却总是找不到这些JavaScript在哪里，很纳闷，昨天为了查找 tree2 的用法在网上寻觅，在 JBoss 的论坛看到了相关的问题，其实这个问题在 myfaces 的官方网站上已经有明确的说明了&nbsp;&nbsp;<a href='http://www.blogjava.net/steady/archive/2005/11/17/20170.html'>阅读全文</a><img src ="http://www.blogjava.net/steady/aggbug/20170.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/steady/" target="_blank">steady</a> 2005-11-17 08:34 <a href="http://www.blogjava.net/steady/archive/2005/11/17/20170.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>第一个JSF程序</title><link>http://www.blogjava.net/steady/archive/2005/11/10/19084.html</link><dc:creator>steady</dc:creator><author>steady</author><pubDate>Thu, 10 Nov 2005 01:01:00 GMT</pubDate><guid>http://www.blogjava.net/steady/archive/2005/11/10/19084.html</guid><wfw:comment>http://www.blogjava.net/steady/comments/19084.html</wfw:comment><comments>http://www.blogjava.net/steady/archive/2005/11/10/19084.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/steady/comments/commentRss/19084.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/steady/services/trackbacks/19084.html</trackback:ping><description><![CDATA[<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><SPAN lang=EN-US style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体"><SPAN style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp; </SPAN></SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体">正式开始做<SPAN lang=EN-US>JSF</SPAN>了，这下算是把<SPAN lang=EN-US>Web Tier</SPAN>以下的框架搭起来了，用的是<SPAN lang=EN-US>JSF + spring + hibernate</SPAN>的三层架构，虽然中间碰到一堆很奇怪的问题，大部分集中在配置文件上，第一个错误在<SPAN lang=EN-US>hibernate</SPAN>中发生，把主键类型配置成“<SPAN lang=EN-US>uuid.string</SPAN>”，怎么都跑不过去，最后改成“<SPAN lang=EN-US>uuid</SPAN>”解决问题。第二个错误发生在<SPAN lang=EN-US>spring</SPAN>的配置中，三个<SPAN lang=EN-US>bean</SPAN>，第二个引用了第一个，第三个引用了前两个，结果第三个出错，最后发现，第三个只要引用第二个就可以了，第二个也会自动的去引用第一个。<SPAN lang=EN-US><?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /><o:p></o:p></SPAN></SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt"><SPAN lang=EN-US style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体">JSF</SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体">提交表单已经完成，这方面比较容易，也是被几乎所有例程第一个拿出来说的，不过在处理列表的时候出现了点问题，过去<SPAN lang=EN-US>struts</SPAN>中是先从一个<SPAN lang=EN-US>.do</SPAN>进入读取数据后转向页面，这时候列表就拿到了数据，但<SPAN lang=EN-US>JSF</SPAN>中不太清楚，最后有些奇怪的想法算是把解决了，<SPAN lang=EN-US>DataTable</SPAN>对应了一个<SPAN lang=EN-US>property</SPAN>，有<SPAN lang=EN-US>get</SPAN>方法，我在<SPAN lang=EN-US>get</SPAN>方法中调用中间层的<SPAN lang=EN-US>service</SPAN>去取数据，拿到一个<SPAN lang=EN-US>List</SPAN>，由<SPAN lang=EN-US>DataTable</SPAN>将其展开。<SPAN lang=EN-US><o:p></o:p></SPAN></SPAN></P><img src ="http://www.blogjava.net/steady/aggbug/19084.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/steady/" target="_blank">steady</a> 2005-11-10 09:01 <a href="http://www.blogjava.net/steady/archive/2005/11/10/19084.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>开始JSF</title><link>http://www.blogjava.net/steady/archive/2005/11/08/18802.html</link><dc:creator>steady</dc:creator><author>steady</author><pubDate>Tue, 08 Nov 2005 08:45:00 GMT</pubDate><guid>http://www.blogjava.net/steady/archive/2005/11/08/18802.html</guid><wfw:comment>http://www.blogjava.net/steady/comments/18802.html</wfw:comment><comments>http://www.blogjava.net/steady/archive/2005/11/08/18802.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/steady/comments/commentRss/18802.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/steady/services/trackbacks/18802.html</trackback:ping><description><![CDATA[<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt"><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">在新的组里做了半个多月，一直风平浪静，没有什么事情，昨天开会时接到新的任务是要开始研究</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt">JSF</SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">了，公司最新一个巨型项目采用了</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt">JSF</SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">作为</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt">Web Tier</SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，我以后的任务会是辅助开发基于</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt">JSF</SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt">Framework</SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，以满足未来的项目开发的需要。现在所在的项目做了快三年了，当时采用的</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt">Web Tier</SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">是</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt">struts</SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，在当时也算是很新的了，三年后，当国内还很难找到有多少</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt">JSF</SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">成功案例的情况下，我们开始进入</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt">JSF</SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">时代，虽然说现在的</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt">JSF</SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">还并不是很成熟，而且可用的资料也比较的少，这时候技术转型有一定的风险和难度，但毕竟</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt">JSF</SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">已经成为</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt">Java EE 5</SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的标准，作为可以对抗</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt">ASP.NET</SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的组件级</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt">Web Framework</SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt">JSF</SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">未来会有很大的发展的，也期待着有更多的</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt">JSF Implement</SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">能够出现，毕竟</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt">Java</SPAN><SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">本身就是面向开源的。</SPAN><SPAN lang=EN-US style="FONT-SIZE: 9pt"><?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /><o:p></o:p></SPAN></P><img src ="http://www.blogjava.net/steady/aggbug/18802.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/steady/" target="_blank">steady</a> 2005-11-08 16:45 <a href="http://www.blogjava.net/steady/archive/2005/11/08/18802.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>