2008年5月27日 星期二

ZipException

java.util.zip.ZipException: error in opening zip file
當在java執行時遇到以上的ZipException時,即代表:
有可能在ClassPath下的某一個jar或zip檔是有損壞的,
可能要重新下載lib來進行除錯。

2008年5月23日 星期五

JUnit TestSuite

JUnit只要class有提供public static Test suite()方法即可進行測試
可以建立一個含有suite()的class把所有TestCase歸類在一起,如:
public static Test suite(){
TestSuite suite = new TestSuite("Test the Channel Manage part!");
suite.addTestSuite(TestMediaFactory.class);
suite.addTestSuite(TestSqlDataSource.class);
return suite;
}

也可以建立另一個含有suite()的TestAll class把所有含有suite()的class歸類在一起,如:
public static Test suite(){
TestSuite suite = new TestSuite("Test All media_publish project!");
suite.addTest(TestChannelManageAll.suite());
return suite;
}

2008年5月18日 星期日

Ajith Abraham 教授

第一次聽英文演講(有點晚)
不意外的…完全聽不懂。
主講者:
Ajith Abraham 教授
在挪威教書、議題是-智能計算的最佳化
主要在討論有關模糊理論、類神經網絡、演化計算等人工智慧方面的
著有400篇論文、參與多個期刊及國際會議
感覺是一位在這方面非常權威的人士。
非常值得效仿的人。

網站:
http://www.softcomputing.net/

2008年5月11日 星期日

pietty 亞洲語系修正

使用pietty遠端連線時,如果執行含有UI的程式,
會產生畫面位移的問題(如下圖)
只要修改pietty的亞洲語系修正設定即可
必須將 :
選項 -> 亞洲語系修正 -> Unicode 亞洲寬符號字元
的勾選取消.

2008年5月8日 星期四

[轉載]安裝nvidia官方版驅動

用這個方式裝每次都順利成功:所以不記下來不行

下載適合的nvidia顯示卡驅動程式

離開x
使用rcconf把gdm關掉再重新開機

安裝需要的套件
# aptitude install make gcc

查一下自己應該裝的linux-headers版本
# uname -r
2.6.18-4-686
# aptitude install linux-headers-2.6.18-4

還有其他編譯時必要的套件
# aptitude install pkg-config xserver-xorg-dev

注意事項:
假使您安裝過nvidia-glx請下
# aptitude --purge remove nvidia-glx
並確認移除
/etc/init.d/nvidia-glx
/etc/init.d/nvidia-kernel

到下載的目錄下執行
# sh NVIDIA-Linux-x86-1.0-9639-pkg1.run

重新進入x
$startx
有看到nvidia logo就代表成功

MPlayer字幕設定

1打開Preferences設定頁

2Font Tab下的Font要選擇truetype的字型:如/usr/share/fonts/truetype/arphic/bsmi00lp.ttf

3Font Tab下的Encoding要選擇UTF8,這是指上面的字型檔的編碼,linux下的當然是utf8

4同時,Font Tab下的Text scale是用來調整字幕的大小

5Subtitles & OSD Tab下的encoding要選Big5這是指字幕檔的編碼,從windows的硬碟過來的字幕檔一般都用Big5編碼

2008年5月6日 星期二

JSP 不要快取設定

在JSP產生XML並使用XSL把XML轉換成HTML的情境下,
會造成快取暫留的問題,例如:
A登入 -> A的使用畫面 -> A登出 -> B登入 -> A的使用畫面
這問題的原因不太清楚,但治標的方法是,在JSP加上:

resp.setHeader("Pragma", "no-cache"); // HTTP 1.0
resp.setHeader("Cache-Control", "no-cache"); // HTTP 1.1

來要求browser不要進行快取即可

2008年5月4日 星期日

群組group

Linux下的群組管理非常重要,有些裝置的使用必須要使用者屬於特定的群組。
例如:
cdrom和cdrw需要使用者有cdrom的群組權限,否則無法進行燒錄
音效卡需要使用者有audio的群組權限,否則電腦不會有聲音,就算driver有裝好也一樣
使用usermod指令可以為user設定其所屬的群組
#usermod -G Group[,Group,..] user
但這樣做的話,假如也要把user當前所屬群組重新key一次
不然沒有在-G列表上的群組會把user踢掉
如 user 的當前群組為 G1、G2
#usermod -G G1,G3 user
則user的當前群組變為G1、G3並被從G2踢出
可以改用
#usermod -G G1,G3 -a user
則user不會被G2踢出,但會加入G3
也就是user的當前群組變為G1、G2、G3