一个朋友的精彩BLOG
| <nobr><em>偏執(zhí)狂才能生存,人生/事業(yè)的路上需要再堅(jiān)持一下<br>但是又怎么說得清堅(jiān)持的結(jié)果,道得盡堅(jiān)持的含義 </em></nobr> |
導(dǎo)航
- BlogJava
- 首頁
- 新隨筆
- 聯(lián)系
- 聚合
- 管理
| |||||||||
| 29 | 30 | 31 | 1 | 2 | 3 | 4 | |||
| 5 | 6 | 7 | 8 | 9 | 10 | 11 | |||
| 12 | 13 | 14 | 15 | 16 | 17 | 18 | |||
| 19 | 20 | 21 | 22 | 23 | 24 | 25 | |||
| 26 | 27 | 28 | 29 | 30 | 1 | 2 | |||
| 3 | 4 | 5 | 6 | 7 | 8 | 9 | |||
- 隨筆 - 21
- 文章 - 1
- 評論 - 8
- 引用 - 0
- 堅(jiān)持,堅(jiān)持,再堅(jiān)持一下
很多人、很多項(xiàng)目、很多公司都在再堅(jiān)持一下之前倒下了 當(dāng)然,堅(jiān)持是有風(fēng)險(xiǎn)的
堅(jiān)持也不是隨便的 --- 在此記下人生的感悟,事業(yè)的思考,情感的得失
留言簿
- 給我留言
- 查看公開留言
- 查看私人留言
隨筆分類
- 企業(yè)管理(2) (rss)
- 團(tuán)隊(duì)建設(shè)(2) (rss)
- 生活/情感 (rss)
- 設(shè)計(jì)/開發(fā)(2) (rss)
- 軟件工程(2) (rss)
- 隨筆(4) (rss)
- 項(xiàng)目管理 (rss)
隨筆檔案
- 2006年3月 (2)
- 2006年2月 (4)
- 2005年5月 (15)
文章檔案
- 2006年2月 (1)
blog鏈接
- 中國人力資源BLOG
Java Desktop
Java組織
- www.apache.org
- www.java-source.net
- www.jgroups.org
- 原來的javagroups
- www.opensymphony.com
其它
算法/數(shù)學(xué)
- 數(shù)學(xué)之美 系列一 -- 統(tǒng)計(jì)語言模型
- 來自Google blog
- 數(shù)學(xué)之美 系列二 -- 談?wù)勚形姆衷~
- 來自Google blog
搜索
最新評論
- 1.re: struts上傳文件,驗(yàn)證失敗表單數(shù)據(jù)丟失的原因
- 關(guān)注這個(gè)問題
- --keith
- 2.re: web2.0!
- 狂言:),不過也沒錯(cuò)
- --dev
- 3.re: 好的團(tuán)隊(duì)?wèi)?yīng)該是什么樣的?什么樣的團(tuán)隊(duì)才能創(chuàng)造出卓越的產(chǎn)品?
- 利益分配關(guān)系很重要
- --dev
- 4.re: 好的團(tuán)隊(duì)?wèi)?yīng)該是什么樣的?什么樣的團(tuán)隊(duì)才能創(chuàng)造出卓越的產(chǎn)品?
- 評論內(nèi)容較長,點(diǎn)擊標(biāo)題查看
- --Baoquan Inside
- 5.re: 使用Rachel輕松解決Web Start裝載資源難的問題
- 我做過測試,不行。特殊就特殊在是zip格式,SkinLF需要讀取zip中的內(nèi)容,也就是說需要采用ZipInputStream讀取zip文件,讀取的時(shí)候會(huì)異常,也許這是sun的一個(gè)bug。
- --jdev
閱讀排行榜
- 1.struts上傳文件,驗(yàn)證失敗表單數(shù)據(jù)丟失的原因(2200)
- 2.Java Desktop開發(fā)資源(526)
- 3.Hibernate的dynamic-update(398)
- 4.使用Rachel輕松解決Web Start裝載資源難的問題(331)
- 5.SkinLF亂碼問題的分析與解決(304)
評論排行榜
- 1.使用Rachel輕松解決Web Start裝載資源難的問題(4)
- 2.struts上傳文件,驗(yàn)證失敗表單數(shù)據(jù)丟失的原因(1)
- 3.很久沒有來這兒了... ...(0)
- 4.敏捷軟件開發(fā)過程(0)
- 5.關(guān)于blog(0)
2006年3月15日
struts上傳文件,驗(yàn)證失敗表單數(shù)據(jù)丟失的原因 發(fā)現(xiàn)一個(gè)問題,使用struts進(jìn)行文件上傳,如果有些參數(shù)沒有完全定義在ActionForm中,需要從request.getParameter獲取,在表單提交并且validate失敗返回input頁面時(shí),這部分需要從request.getPrameter獲取的參數(shù)數(shù)據(jù)都丟失了,即使再對request進(jìn)行multipart解析也不能得到。經(jīng)過分析,發(fā)現(xiàn)struts的ActionServlet在接收到multipart請求之后,在RequestProcessor中會(huì)對request進(jìn)行封裝:MultiRequestWrapper,然后在Action執(zhí)行完之后,又將已經(jīng)封裝的request重新還原。以下是部分代碼,截直RequestProcessor:
封裝:
protectedHttpServletRequestprocessMultipart(HttpServletRequestrequest){
if(!"POST".equalsIgnoreCase(request.getMethod())){
return(request);
}
StringcontentType=request.getContentType();
if((contentType!=null)&&
contentType.startsWith("multipart/form-data")){
return(newMultipartRequestWrapper(request));
}else{
return(request);
}
}
還原:
在doForward和doInclude中在forward和include之前都執(zhí)行了下面的代碼:
if(requestinstanceofMultipartRequestWrapper){
request=((MultipartRequestWrapper)request).getRequest();
}
問題就出現(xiàn)在這兒。在經(jīng)過測試之后,發(fā)現(xiàn)request只能進(jìn)行一次multipart解析,這或許和解析request的時(shí)候調(diào)用了request.inputStream有關(guān),第一次調(diào)用之后再調(diào)用就不能獲取其中的有效內(nèi)容了。因此發(fā)現(xiàn)request在調(diào)用CommonsMultipartRequestHandler.handleRequest進(jìn)行解析后并還原后,調(diào)用common-upload對request進(jìn)行解析已經(jīng)得不到任何得提交內(nèi)容了,因此當(dāng)Form驗(yàn)證失敗,返回input頁面時(shí),即使再進(jìn)行multpart解析,也不能通過request.getPrameter取到你想要的數(shù)據(jù)。而此時(shí),表單中的數(shù)據(jù)卻不會(huì)丟失(定義在ActionForm中的表單域),這是因?yàn)閟truts的html系列tag在redisplay時(shí)值都是從ActionForm獲取的。
在將RequestProcessor.doForward和doInclude中還原request的語句注釋后,問題得到了解決。到目前還不清楚為什么struts要還原request,難道是因?yàn)閏hain的原因?
webwork中應(yīng)該不會(huì)出現(xiàn)這個(gè)問題,因?yàn)閣ebwork中無論ServletDispatcher還是FilterDispatcher在對request wrap之后都沒有再還原。 posted @ 2006-03-15 06:10 dev 閱讀(2200) | 評論 (1) |編輯收藏
2006年3月3日
The output format must have a '{http://xml.apache.org/xalan}content-handler' property! tomcat、jdk1.4下出現(xiàn)The output format must have a '{http://xml.apache.org/xalan}content-handler' property!的原因:這是因?yàn)橄到y(tǒng)、tomcat或者jdk使用了老版本的xalan.jar。系統(tǒng)如果本身沒有使用,而tomcat/common/lib、tomcat/common/endorsed/lib、tomcat/shared/lib下又沒有xalan.jar的話,那就是jdk使用了老版本的xalan.jar——在jre/lib/rt.jar里面。下載最新的xalan.jar然后放到tomcat/common/endorsed下即可解決這一問題。 posted @ 2006-03-03 19:46 dev 閱讀(85) | 評論 (0) |編輯收藏
2006年2月21日
關(guān)于企業(yè)發(fā)展的4個(gè)階段和企業(yè)管理的4個(gè)階段 暫時(shí)記下,沒想透徹,思考所得、個(gè)人見解以后再加入。企業(yè)發(fā)展的4個(gè)階段: 產(chǎn)品階段 資產(chǎn)階段 資本階段 品牌階段
企業(yè)管理的4個(gè)階段: 人治,嘴上說 法治,建立制度 企業(yè)文化 目標(biāo)管理,充分發(fā)揮員工的積極主動(dòng)型,自我管理 posted @ 2006-02-21 02:13 dev 閱讀(56) | 評論 (0) |編輯收藏 關(guān)于blog
blog很好,blogjava暫時(shí)感覺也很好,可是為什么不能寫只允許自己看的日志呢?雖說blog就是為了大家能夠分享彼此的觀點(diǎn)感想,但是總有一些東西是不便公開或者暫時(shí)不能公開的。如果允許寫只允許自己看的日志,blog的應(yīng)用范圍就會(huì)更大,價(jià)值也會(huì)被充分挖掘了。
也可能是我愚昧,對blog了解還不深吧,上述所說的blog也許已經(jīng)出現(xiàn)了(自己搞一個(gè)得了,笑談)。
2006年2月20日
敏捷軟件開發(fā)過程 XP SCRUM需要并且應(yīng)該持續(xù)關(guān)注、思考。
一些共同點(diǎn): 快速迭代 持續(xù)改進(jìn) 注重測試 團(tuán)隊(duì)協(xié)作
posted @ 2006-02-20 02:10 dev 閱讀(24) | 評論 (0) |編輯收藏 很久沒有來這兒了... ... 很久沒有來這兒了。其實(shí)我很喜歡BLOG,可以記下每天工作中的所思所想。我是一個(gè)喜歡思考的人,經(jīng)常有一些想法,有這么一塊地方,能夠把自己的經(jīng)驗(yàn)、想法、創(chuàng)造記錄下來,沉積起來,對自己無疑是一種財(cái)富。
不知道是不是有人會(huì)寫項(xiàng)目經(jīng)理日志,我覺得這是一個(gè)很好的事情。以前做項(xiàng)目管理的時(shí)候只是弄了一個(gè)“項(xiàng)目事件”,記錄項(xiàng)目開發(fā)過程中發(fā)生的、自己覺得是重要的事情,比如某某人進(jìn)入項(xiàng)目組、離開項(xiàng)目組了,某某模塊版本發(fā)布了,發(fā)生了什么大的費(fèi)用等等。寫項(xiàng)目經(jīng)理日志,或者開發(fā)日志、工作日志也行,把自己在工作中、項(xiàng)目開發(fā)過程中、項(xiàng)目管理過程中的零零碎碎的想法記錄下來,會(huì)是一件很棒的事情。人不應(yīng)該懶,再累心情再遭也應(yīng)該堅(jiān)持寫這種日志。
或許小筆記本、那種可以隨身攜帶的那種是一件更好的日志記錄工具,可惜容量不夠,而且不能檢索。掌上電腦?寫起來似乎麻煩了,table-pc,好像又太大了,攜帶不方便,可惜,要是手寫識別技術(shù)更智能一點(diǎn)、掌上電腦更薄一點(diǎn),而且可以展開屏幕就棒了。可惜。
posted @ 2006-02-20 01:19 dev 閱讀(10) | 評論 (0) |編輯收藏
2005年5月17日
JDK1.5給GUI開發(fā)帶來的一點(diǎn)欣喜JDK1.5出來很久了,一直沒有研究。這倒不是沒有時(shí)間,而是覺得J2EE服務(wù)器要支持JDK1.5還需要一段時(shí)間,而多數(shù)客戶還在使用JDK1.4,因此要基于JDK1.5開發(fā)Web應(yīng)用程序還不現(xiàn)實(shí),因此一直沒有去弄這玩意。
今天由于研究Desktop的開發(fā),裝了1.5,發(fā)現(xiàn)1.5中Java程序已經(jīng)可以獲得本地系統(tǒng)的外觀,我試著不斷的變換了xp的theme,Java程序始終能夠保持和系統(tǒng)的外觀一致;而且以前使用SkinLF后,在web start程序中JOptionPane的窗體經(jīng)常出不來的問題也解決了。這可是一個(gè)非常好的消息。
另一個(gè)好消息是JDK的下一個(gè)版本將對Swing/AWT組件進(jìn)行增強(qiáng)。
為Java感到高興!
posted @ 2005-05-17 22:12 dev 閱讀(181) | 評論 (0) |編輯收藏 使用Rachel輕松解決Web Start裝載資源難的問題下午,試用了SkinLF(http://www.l2fprod.com),感覺非常好,程序的外觀得到了很大的改善,還可以根據(jù)自己的需要隨意調(diào)整得到自己想要的外觀,但是要將SkinLF應(yīng)用到Web Start中還有點(diǎn)問題。這是因?yàn)?#xff0c;web start使用到的資源必須包裝成jar文件,以<jar href="jarfilename.jar"></jar><jar href="jarfile.jar"></jar>的形式定義到j(luò)nlp資源文件中,而SkinLF的外觀配置文件是zip形式的。也許有人會(huì)說,把zip轉(zhuǎn)化成jar文件就可以了。是的,想象中這應(yīng)當(dāng)是可以的,可是實(shí)際情況不是如此,你會(huì)發(fā)現(xiàn)使用ClassLoader.getResourceStream("themepack.jar")的時(shí)候返回了Null,SkinLookAndFeel.loadLookAndFeel()會(huì)異常Stream closed.
調(diào)試之后發(fā)現(xiàn),即使是在客戶端,在Eclipse中運(yùn)行的時(shí)候,如果不把themepack.jar定義到ClassPath中,也是無法加載的。
我想這是一個(gè)普遍的問題,根據(jù)我的理解,如果其他資源,比如圖片、xml文件、屬性文件等等能夠被加載,themepack.jar也應(yīng)該被加載。事實(shí)上應(yīng)該是這樣,但是關(guān)鍵在于SkinLF需要采用ZipInputStream解析zip(jar)文件,這時(shí)情況就不一樣了。具體的原因目前沒有搞清楚。
在網(wǎng)上找了半天,終于發(fā)現(xiàn)一個(gè)Open Source的組件:Rachel,使用它很輕易就可以解決上面提到的問題。
Rachel(http://rachel.sourceforge.net)是一個(gè)為解決Web start裝載資源困難而開發(fā)的組件。它提供了兩種方法解決資源裝載問題。
方法一,使用class://URL Handler。
這個(gè)方法采用新的URL協(xié)議:class://從jar文件中獲取資源。
Step 1,注冊新的URL Handler,以支持class://協(xié)議(protocal)。
例子:java.net.URL.setURLStreamHandlerFactory( new RachelUrlFactory() );
Step 2,采用class://協(xié)議構(gòu)造URL,從jar文件中讀取資源。
語法:class://<class></class><class></class>/
例子:
Step 3,采用java.net.URL獲取資源。
例子: 方法二,在程序中嵌入多線程的,小型的http server。
class://com.l2fprod.gui.plaf.skin.SkinLookAndFeel/themepack.zip
注意:這里,<class></class><class></class>是Rachel用來定義資源文件所在的jar的,后面的 相對于jar中的根目錄而言。上述例子中的jar的結(jié)構(gòu)如下:
test/LookAndFeelTest.class
com/l2fprod/gui/plaf/skin/SkinLookAndFeel.class
themepack.zip
images/example.png
html/index.htm
URLurl=newURL("class://test.LookAndFeelTest/themepack.zip");
URLurl=newURL("class://test.LookAndFeelTest/html/index.html");
URLurl=newURL("class://test.LookAndFeelTest/images/example.png");
URLurl=newURL("class://com.l2fprod.gui.plaf.skin.SkinLookAndFeel/themepack.zip");
SkinLookAndFeel.setSkin(SkinLookAndFeel.loadThemePack(url));
Step 1,把你的資源放到j(luò)ar中。
Step 2,在每一個(gè)jar中增加一個(gè)anchor class,幫組server定位資源所在的jar文件,這點(diǎn)類似于方法一class://<class></class><class></class>/ 的的<class></class><class></class>。
例子:
{
publicCrossRefAnchor(){}
}
CrossRefAnchor沒有任何的實(shí)際意義,只是為了幫組定義資源所在的jar。
Step 3,為每一個(gè)包含資源的jar用ClassResourceLoader注冊到WebResourceManager。
例子:
posted @ 2005-05-17 22:11 dev 閱讀(331) | 評論 (4) |編輯收藏 SkinLF亂碼問題的分析與解決
SkinLF(http://www.l2fprod.com/)是一個(gè)非常漂亮的Java LookAndFee組件,它的外觀可以配置,由一組小圖片和一個(gè)skinlf-themepack.xml構(gòu)成。SkinLF的網(wǎng)站上提供了很多Skin下載,這里http://www.l2fprod.com/software/skinlf/jnlp/demo.jnlp可以看到SkinLF和這些外觀的演示。可惜的是除了默認(rèn)的themepack.zip之外,其他外觀(好像有很少幾個(gè)除外)都有中文亂碼的問題。其實(shí)這是這些外觀使用的字體導(dǎo)致的。
打開外觀zip文件中的skinlf-themepack.xml,你會(huì)發(fā)現(xiàn)其他外觀的配置文件比themepack.zip中的配置文件多了一些地方:
<!--</font></span></span> <font face="新宋體"> Fonts </font><span class="b"><strong><font face="Courier New" color="#ff0000"> </font></strong></span> <font color="#0000ff"><span class="m">--> <script type="text/javascript"></script> <font name="Global" value="SansSerif,0,11" /> <font name="InternalFrame.titleFont" value="Trebuchet MS,1,11" /> <font name="TabbedPane.font" value="Tahoma,0,11" /> <font name="MenuBar.font" value="Tahoma,0,11" /> <font name="MenuItem.font" value="Tahoma,0,11" /> <font name="PopupMenu.font" value="Tahoma,0,11" /> <font name="Menu.font" value="Tahoma,0,11" /> 把這些注釋掉,然后把配置文件放回到zip文件中就可以了。當(dāng)然你還可以嘗試采用其他的字體。 采用JGoodies的LookAndFeel出現(xiàn)亂碼,我曾經(jīng)以為是UTF-8的問題,現(xiàn)在看來可能也是字體導(dǎo)致的。可惜的是,JGoodies的LookAndFeel不能配置。 posted @ 2005-05-17 22:11 dev 閱讀(304) | 評論 (0) |編輯收藏 Java Desktop開發(fā)資源這里列出一部分Java Desktop的開發(fā)資源。
1。A java.net community for JavaDeskTop
這是sun主持的資源很全的社區(qū),有很多關(guān)于JavaDeskTop開發(fā)的資源。
2。JDIC(Java Desktop Integration Components)
Sun主持的致力于java和本地應(yīng)用程序集成、交互的組件集,非常棒。目前有5大組件。
Desktop
FileTypes
Brower
System Tray Icon
Packager
3。JDNC(Java Desktop Network Component)
4。JExePack
一個(gè)將Java程序轉(zhuǎn)化為Exe程序的組件。
5。JSmooth
作用同JExePack。
6。JavaService
一個(gè)將Java程序轉(zhuǎn)化為NT Service的組件。
7。SKinLF
非常棒的Java LookAndFeel實(shí)現(xiàn),采用配置包的形式定義Java的LookAndFeel,可以很方便的定義自己的LookAndFeel。它的網(wǎng)站上提供了大量Skin下載,其中不乏精品。
8。JGoodies
JGoodies最出名的是它的FormLayout,它使swing和AWT應(yīng)用程序的布局變得非常簡單。由于它的影響,已經(jīng)有專門針對它的DESIGNER出現(xiàn),Eclipse也有相應(yīng)的插件支持。FormLayout使Java的幾個(gè)默認(rèn)Layout相形見絀。
JGoodies還有一組Swing/Awt組件,可以很方便的創(chuàng)建Wizard、對話框、Splash窗體、About窗體等GUI部件。
9。Rachel(Open Source Resource Loading Toolkit for Java Web Start )
和WebStart打過交道的人可能知道,要在webstart中讀取解析zip或者jar資源是一件非常困難的事,然而有些資源又必須以zip或者jar的形式存在,比如SKinLF就是這樣。Rachel使你不再為這種事情煩惱。它提供兩種解決方案:采用class://的協(xié)議裝載URL資源,內(nèi)嵌一個(gè)小型的多線程http server。
10。JavaHelper(JavaHelp System)
Sun提供的制作Java Help制作系統(tǒng)。允許你在GUI應(yīng)用程序、Applet中提供Online Help功能。
11。Exe4j
Java 安裝程序制作工具。
12。JGraph
非常出名的Java 圖形編輯框架。
13。GEF(Graphic Edit Framework)
非常好的圖形編輯框架,雖然沒有JGraph出名,但是我始終覺得它的結(jié)構(gòu)和API都比JGraph好,擴(kuò)展性非常好。
14。yworks
它的YGuard是一個(gè)非常棒的混淆器,免費(fèi)的,功能很強(qiáng)。除了YGuard它還有幾個(gè)非常好的組件。
15。Create GUI with JFC/Swing
Sun的JFC/Swing編程初學(xué)者指南。
16。Drag and Drop
Sun的關(guān)于在GUI中實(shí)現(xiàn)拖放操作的教學(xué)文章。
17。Joshua Marinacci的Blog
有很多介紹GUI編程的好文章。
18。CloseAndMaxTabbedPane An enhanced JTabbedPane
JavaWorld上一篇關(guān)于如何在JTabbedPane的Tab上添加Close按鈕、Maximize 按鈕和PopupMenu的文章,有源代碼下載。還可以。
19。Creating Wizard Dialogs with Java Swing
Sun上的介紹用Swing創(chuàng)建類似Elipse Wizard對話框的文章。
WebResourceManagerroots=WebResourceManager.getInstance();roots.addResourceLoader(newClassResourceLoader(CrossRefAnchor.class));
roots.addResourceLoader(newClassResourceLoader(JavaDocAnchor.class));
Step 4,啟動(dòng)Server。
例子:
{
WebServerhttp=newWebServer(7272,roots);
http.start();
}
catch(IOExceptione)
{
e.printStackTrace();
}
Step 5,采用URL從server獲取資源。
例子:
URLurl=newURL("http://localhost:7272/test.LookAndFeelTest/themepack.zip");
URLurl=newURL("http://localhost:7272/test.LookAndFeelTest/html/index.html");
URLurl=newURL("http://localhost:7272/test.LookAndFeelTest/images/example.png");
總結(jié)
以上是生活随笔為你收集整理的一个朋友的精彩BLOG的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 惠普找不到远程服务器,惠普笔记本搜不到w
- 下一篇: python3.4勾股定理代码_使用有序