2007年3月8日 星期四

Hacking msn MAP api 之 我不要 zoom-in!!

手上的AP架在msn map api 上頭
開發的過程中不得已要和一些細微的地方打架
比如...zoom-in, 我們希望zoom-in level是fix 的
但是無法控制map一碰到dbclick或滑鼠捲動就自動zoom-in的衝動 囧

MSN map api無法讓你有地方將zoom-in 取消
怎麼半?打開map api的source code後
發現註冊在double click和wheel的事件也是private method.
亦即在外頭無法detach event ...
修改它的source code又怕違法

最後想出一個 怪招
確定它的event handle model是bubble up之後
將map div 下的子節點全load 出來,註冊double click及wheel事件為canclebubble=true....

這個解法是絕對依賴msn api吐出的dom 結構
一旦改版很有可能就不work了,或是會影響到其它的功能也未可知
不過有價值的部份是canclebubble up也可以拿來這樣用。雖然acess 不到map 內部的private method. 但是仍然可由這種方法讓它不執行....

資安小記

趁著回公司做教育訓練的機會,把資安課本又走了一遍
對於Certification Authority(CA)在PKI中的角色又有了新的認識囉…(可喜可賀)
PKI裏,需要 CA(Certification Authority), Certificate signed from CA, Software and protocol.
CA 除了扮演Certificate 發行者的角色外,更重要的是,由於在行政上會對持有Certificate 的個體進行查核,所以對於「有品牌」的CA 簽過的Certificate , 我們持相信的態度。
windows 裏內建一些CA 大家的certificate,用來驗証這些我們平常透過網路與它人交換的簽章
除此之外,你也可以去「相信」其它CA:只要你匯入它們的憑証即可
這裡 可以體驗mutual authentication using SSL under PKI 的 everything (當然,相當程度的簡化...)

2007年3月2日 星期五

Hibernate 的 Enum...

列舉..在此不贅述, 不過如果想用Type Safe 的方式把列舉物件用Hibernate 存起來
在3.0可有了新花樣
由於彈性不夠,PersistantEnum 已被打入冷宮
新歡為 UserType
實作UserType 只要定義好列舉物件與實際被Persist 的值(如:1, 2, 3 或 "cat", "dog"...之類)的關係
就可以開工了
UserType for persisting Typesafe Enumerations