2012-11-19

[生病] 鼻子有開始流鼻水

這兩天, 天氣轉變很大, 從 26度轉成18度.
右邊鼻子又開始鼻塞跟流黃綠色鼻水.

睡覺起來頭都會痛痛, 因為鼻水積在一起.
等起床後,鼻涕流出來頭又不會痛了.

[Mac] Change Safari Cache to Ramdisk

步驟如下
1.  刪除Chrome  的  Cache 目錄
     rm -rf ~/Library/Caches/com.apple.safaridavclient
2. 產生 SoftLink to Chrome Cache 目錄
    ln -s /Volumes/RamDisk/Safari/Cache ~/Library/Caches/com.apple.Safari
3. 修改 Ramdisk Shell
   因為 [ Mac ] OS X 也有免費的 RamDisk 可以用 只有教你如何產生一個 RamDisk Shell. 就是產生一個目錄 /Volumnes/RamDisk , 但是Safari Cache 我是用 SoftLink 產生, 所以必須在產生 RamDisk 後, 需要幫 Safari 產生所需要的相對路徑.

下面是紅字部分是新增的.

do shell script "
if ! test -e /Volumes/RamDisk ;  then
diskutil erasevolume HFS+ RamDisk `hdiutil attach -nomount ram://$((1*512*1024*2))`
mkdir -p /Volumes/RamDisk/Chrome/Cache
mkdir -p /Volumes/RamDisk/Safari/Cache

fi
"

2012-11-11

[Zafira] 20000km 達成

過了 20個月, 20000km 達成.
在新營交流道,達成 20000km.

2012-11-01

[Mac] 修正 hibernate file path

剛剛看到有一篇講到, 三步驟有效延長 Macbook SSD 的使用壽命 裡頭有提.
mac 在休眠時, 會將記憶體 image 到硬碟去.
所以當你是 ssd 時,  mac 會將資料寫入 /var/vm/sleepimage.
目前, 我是系統採用SSD , 光碟機位置放上一顆 HD.
所以計劃將 sleepimage file 轉到HD 上面, 減少SSD 的存取.


步驟:
1. 檢查目前 pmset 狀態
2. 修改 hibernatemode 為 0 , 也就是不將記憶體寫入檔案
3. 刪除 /var/vm/sleepimage
4. 修改 hibernatefile 指向我要放的HD 位置
5. 修改 hibernatemode 為3 , 也就是休眠時, 將記憶體寫入檔案.



指令
1. $ sudo pmset -g
2. $ sudo pmset -a hibernatemode 0
3. $ sudo rm /var/vm/sleepimage
4. $ sudo pmset -a hibernatefile /Volumes/HD/vm/sleepimage
5. $ sudo pmset -a hibernatemode 3

2012-07-31

遠傳電信 讓人傻眼的方案

最近被公司要求辦理 MVPN, 所以得把門號轉到遠傳去. 原本在威寶的門號, 就想要轉出去. 當時計畫是轉去中華電信的預付卡方案, 因為每個月大約只會用到50元的通話費.

晚上到遠傳直營門市去詢問NP 的方案, 想說電話也沒有打太多, 就用最便宜的月租165就好了. 當下門市小姐跟我說, 現在的方案是 綁約 24個月, 前面12個月 每個月0元, 後面12個月 $165元. 看起來還可以接受, 就說好舊用這一個方案. 小姐在電腦前面打一打, 就跟我說先生不好意思, 剛剛說得方案必須是戶籍登記在中部地區, 新竹縣市不能用這一個方案. 她就去請另外一個小姐過來幫忙, 電腦那邊又敲一敲, 就跟我說那可以用另外一個方案, 一樣縍約24個月, 但是 前面18個月每個月15元, 後面六個月165元, 但是得先預繳 $1200.

當場算了一下, 原來中部地區被當潘仔海噱了.
方案一 : 中部鄉親特會專案
12 x 0 + 12 x 165 = $1980 
方案二 : 全國通用專案
18 x 15 + 6 x 165 = $1260 


1980 - 1260 = $720
原來要 中部鄉親 多繳 $720 就是中部特會專. 還好我戶籍在 新竹, 不然 不就多付了720元 還要感謝遠傳給的中部特會專案

2012-07-19

[Mac] Change Chrome Cache to RamDisk

前幾天已經將Ramdisk 建立好了,接下來就是將應用程式的Cache搬往Ramdisk.
參考過幾篇文章, 都是運用啟動Chrome 時, 給予 Cache Disk 方式. 目前在Mac 下, 我還不會用指令方式打開Chrome , 所以不能用這一個方法.
RAMDisk tool on Mac OS 這一篇指出用Unix 下的 Soft Link 方式來達成.

步驟如下
1.  刪除Chrome  的  Cache 目錄
     rm -rf ~/Library/Caches/Google/Chrome/Default
2. 產生 SoftLink to Chrome Cache 目錄
    ln -s /Volumes/RamDisk/Cached/Chrome ~/Library/Caches/Google/Chrome
3. 修改 Ramdisk Shell
   因為 [ Mac ] OS X 也有免費的 RamDisk 可以用 只有教你如何產生一個 RamDisk Shell. 就是產生一個目錄 /Volumnes/RamDisk , 但是Chrome Cache 我是用 SoftLink 產生, 所以必須在產生 RamDisk 後, 需要幫 Chrome 產生所需要的相對路徑.

下面是紅字部分是新增的.

do shell script "
if ! test -e /Volumes/RamDisk ;  then
diskutil erasevolume HFS+ RamDisk `hdiutil attach -nomount ram://$((1*512*1024*2))`
mkdir -p /Volumes/RamDisk/Caches/Chrome
fi
"

2012-07-17

[Mac] RamDisk use Script

跟在windows  下一樣 , 要用RamDisk 來存放 Browser Cache.
找了下面這一篇來用.

[ Mac ] OS X 也有免費的 RamDisk 可以用

2012-07-16

[Firefox] 變動 Cache 目錄

最近在備份自己的 firefox profile, 發現檔案不管是壓縮還是複製都需要很久的時間. 因為裡面也把Cache 的東西給加進去了. 早上找了一下, 採用下列兩篇的作法

修改 Firefox 預設 cache 目錄路徑
Firefox 參數設置 about:config

原本工作用的電腦就有用 Ramdisk, 所以就把Cache 路徑指向 RamDisk

作法
1. 在FireFox URL 狀態列輸入 about:config
2. 先找尋關鍵字 "browser.cache.disk.parent_directory"
3. 如果沒有出現, 就按右鍵新增 "字串":"browser.cache.disk.parent_directory"
4. 內容輸入 "R:\temp\firefox\longtai"
5. 重起 firefox , 並檢查 "R:\temp\firefox\longtai" 有無出現

用RamDisk 好處是, 關機以後就不會把Cache 存下來. 如果要把 Firefox Profile 同步到 網路硬碟, 這樣也不用把一堆的 Cache 放上去.

2012-07-03

[jboss] birt viewer on jboss as 7.1.1

最近需要在 JBoss AS 上面安裝 birt viewer.
安裝步驟
1. 從官方網站上下載 runtime package.
2. 解開以後將 WebExample 那個目錄放到 standalone/deploments/ , 並且改名為 birt.war.
3. 新增一個檔案 birt.war.deployed.
4. 編輯 birt.war.deployed, 檔案內容存放 birt.war
5. start jboss standalone

原本有一個設定 standlone.xml 方法, 但是那樣會造成 jboss 不斷的deploy birt.war

2012-06-28

[Mantis] SMTP 設定

最近幫公司的Mantis 主機搬家, 再搬完以後測試過, 所有功能都認為正常. 但是最近User 反應, 都無法接收到 Mantis Email 通知. 實際下去測試後, 發現email 功能真的無法正常運作. 搜尋網路文章以後, 有文章提到Mantis 中, 如果不設定SMTP 發信設定, 會採用PHP Default Mail . 而一般的PHP Mail 會用 主機的Mail 去發送. 可能會遇到的問題有, 一主機沒有 sendmail 之類的 mail server 可供發送, 另外方面就是Mantis 所在主機發送的Mail  被認為垃圾主機, 所以信件會被 filter.  因此建議設定可靠的smtp server 作為發送  mail method .

Mantis SMTP 設定方法.
將下列設定寫入  config_inc.php 中
$g_phpMailer_method= PHPMAILER_METHOD_SMTP ;
$g_smtp_host= 'smtp.xxx.xxx';
$g_smtp_username = '[smtp account]';
$g_smtp_password = '[smtp password]';
$g_smtp_connection_mode = 'ssl';
$g_smtp_port = 25;


2012-06-25

[Eclipse] eclipse 3.7 Default Workspace Change

在Eclipse 3.7 中出現一個沒辦法設定 Default Workspce 的問題. 當 eclipse  裡頭有  A, B 兩組Workspce 時, 不管怎樣設定, 第一次開啟eclipse 都是跑A workspace. 在進入A workspace後 , 再 change workspace to B Workspace 就可以換到  B Workspace. 但是, 關掉 Eclipse後, 在開啟Eclipse 就會是進入  A Workspace.  就算在 設定 Prompt for workspace on startup, 啟動 eclipse 一樣不會詢問.

只能用console模式下, 先用 eclipse -clear 清除設定後, 才會出現 Prompt for workspace on startup , 重新設定 default workspace on startup.

2012-06-22

[jboss] SwitchYard 學習之路 - SwitchYard 0.4 on JBoss 7.1.1.FInal

在 Eclipse 開發環境中, 直接讓 switchyard deployment jar 直接可以放到自己的 開發環境. 所以, 試著將 switchyard 0.4 安裝在  Jboss 7.1.1.Final 上面.

準備檔案
1. JBoss 7.1.1.Final ZIP
2. SwitchYard Installer 0.4

安裝

1. 解開 JBoss 7,1,1,Final to ${JBoss_Path}
2. 解開 SwitchYard Installer 0.4 to ${SwitchYard_Installer_Path}
3. 打開  console command , 移轉到 ${SwitchYard_Installer_Path}
4. 在 ${SwitchYard_Installer_Path} 下, ant
5. 當問到  jboss ap path , 輸入 ${JBoss_Path}
6. 因為沒有使用到 forge , 所以當問道 forge 時選擇 N

2012-06-21

[eclipse] 使用maven 要注意, default java 要使用 jdk 不要用jre

最近需要開發 jboss 相關程式, 需要用到 jboss tools and maven. jboss系列的project 現階段幾乎都已經改用 maven 來作為 project config. 所以, eclipse 裏頭也就直接裝起 m2 這一個plugin.

不過一開始裝好以後, 開一個 new jboss project 試試看. 發現使用 run as -> maven clean 沒有問題. 但是 run as ->maven install, 幾乎不能動. 都會出現需要我指定相關的JAVA_HOME. 再詳細看Error Message, 發現 maven 一直找不到 在 jdk/lib/tools.jar 這一個lib. 

了解原因以後, 到 Preferences -> Java -> Installed Jre 看到, 原來 eclipse 只會先抓 jre , 而不會指定使用 jdk. 所以 , 將default jre 指向 jdk 目錄, 就解決了這樣的問題.

2012-06-20

[jboss] SwitchYard 學習之路 - Eclipse BPMN 顯示 SwitchYard Icon

SwitchYard 宣稱作為 Jboss SOA 的下一代 ESB 平台. 現階段 Jboss ESB 為目前 Jboss SOA 中的ESB.

 SwitchYard 整合目前 jboss jbpm 5.0 也就是 最新版. 讓你得ESB 可以整合 jbpm 還做使用.
所以開發jbpm 5.0 可以用bpmn 作為基底, 並且可以整合進去 jboss drools 中.

在SwitchYard 0.4 中, 有Demo 一個透過 jbpm 呼叫SwitchYard Service 得icon . 但在官方文件中, 並沒有想細說明如何讓 jbpm designer 出現 SwitchYard Icon . 在經過反覆, 研究Demo Source Code 後, 發現必須在含有jbpm process 的那個專案中, 需要加入 switchyard-compoment-bpm.jar 等相關, 才可以在 jbpm designer 中出現 SwitchYard Service Icon.

如果使用 Eclipse Jboss Tools 中, 開啟SwitchYard Project. 其中選擇 Component 時, 把BPM 選進去, 這樣在新增 jbpm process時, 就可以出現 SwitchYard Service Icon.

2012-05-11

[Ant] ant with proxy

在安裝 jbpm5 demo 時, 需要用到ant 去抓取網路上的版本.
公司內部所有上網需要透過 proxy , 所以ant 直接去抓會抓不到.
找了一下 . 發現ant官網寫得  Proxy Configuration

在window 下, 如果系統有設定 default proxy. 也就是直接在IE 裡面設定好.
 使用這樣的指令就可以 ant -autoproxy    

2012-04-16

[Linux] Linux and Java Broadcast connection

最近寫 Linux server and Java Client .  之前, 都只能用 192.168.1.255 的方式.
目前改寫測試, 已經可以運用 255.255.255.255.
Linux Server : 可以直接註冊  255.255.255.255:9999 bind
Java Client :  DatagramSocket  需指定會傳送 Broadcast 的 IP.
與上一版的差別, 在於 JavaClient 需要指定 出口 IP

2012-03-24

char on Arm-Linux

最近在寫 Linux socket Server. 需要從  Java 傳送 資料到Linux Server .
Linux 用 *char 來接收. Java 得用byte  方式傳送才有辦法一致.
當開發環境在 pc Linux 時, default is signed char.
當程式轉換到 Arm-Linux 時, 他卻是跑出 unsigned char.
所以, 當你需要 signed char on Arm-Linux , 就是直接宣告為 signed char.
否則, Arm-Linux default char is unsigned char.

2012-01-11

[Mantis] 在LADP 認證下, 使用者自行註冊

在Mantis 中, 可以整合LADP 認證. 但是, 如果要每一個帳號都要admin 來建立也是很累的.
所以就想說看看有沒有辦法, 採用LDAP 認證, 但是使用者 可以自己註冊.
下列三個步驟
1. 修改 config_inc.php 新增 $g_allow_signup = ON;
 雖然 Default 就是 ON, 不過設定一下以後看也清楚. 
2. 修改 core/print_api.php
# prints the signup link
function print_signup_link() {
    if ( ( ON == config_get_global( 'allow_signup' ) ) &&
         #( LDAP != config_get_global( 'login_method' ) ) &&
         ( ON == config_get( 'enable_email_notification' ) )
       ) {
        print_bracket_link( 'signup_page.php', lang_get( 'signup_link' ) );
    }
}
3. 修改 singup_page.ph
    # Check for invalid access to signup page
    #if ( OFF == config_get_global( 'allow_signup' ) || LDAP == config_get_global( 'login_method' ) ) {
    if( OFF == config_get_global( 'allow_signup' )) {
        print_header_redirect( 'login_page.php' );
    }