最近接觸到了Netty才知道原來有所謂的NIO的需求。雖然知道有NIO,但其實一直不知道它的內容是什麼,又用在什麼地方。好奇心不足,看來是在下非常嚴重的缺點。不過我也自行研究了人臉辨識的技術,比如像OpenIMAJ等,所以有興趣的東西,在下還是能主動去研究的吧?
言歸正傳。Netty是實作NIO的框架,這表示它不只是提供NIO的API,而是把它包成一個比較完整的介面,把輸出/入過程中繁瑣的部份做掉,只開放需要開發人員實作的部份,以專注於應用的實作,大幅度減輕了開發所需的時間。
Netty的框架很先進。連Google的SPDY也很早就支援。因為在下也剛接觸的關係,實際的使用還不熟練,卻感覺得到這個框架的生命力,令人忍不住躍躍欲試。
不過Netty也發展了好多個年頭了。現在才接觸到,個人覺得有點跟不上時代...實在是實務上沒有用過。有時,沒有需求的話就很難接觸到。推薦我Netty的朋友說了,台灣似乎比較少用NIO,畢盡交易量少,感受不到NIO的優點,對岸用的倒是很多。就先接受這個理由吧。
2015年10月1日 星期四
2014年3月26日 星期三
Apache CXF 關log (disable logging)
最近用CXF做WS,CXF把訊息全寫到catalina裡面,使得catalina非常龐大。我看了很煩。
而官網介紹的方法有夠麻煩,網路上的解法又不work。
因此,萬念俱灰下,我發現改cxf-beans.xml就好了。(不確定是不是用Eclipse + Dynamic Web + CXF才會有此設定檔)
打開此檔,把
jaxws:features>
bean class="org.apache.cxf.feature.LoggingFeature" />
/jaxws:features>
去掉就ok了。
============
其實我以前也解過一次CXF關log的情形。但記得不是在這裡........
而官網介紹的方法有夠麻煩,網路上的解法又不work。
因此,萬念俱灰下,我發現改cxf-beans.xml就好了。(不確定是不是用Eclipse + Dynamic Web + CXF才會有此設定檔)
打開此檔,把
jaxws:features>
bean class="org.apache.cxf.feature.LoggingFeature" />
/jaxws:features>
去掉就ok了。
============
其實我以前也解過一次CXF關log的情形。但記得不是在這裡........
2008年6月12日 星期四
Securing Web Service with SSL (support jdk 1.3)

然而,為了所謂的"安全需求"(這很重要,只是他X的為什麼要用SSL),所以希望能用SSL技術來達成。
何謂SSL?
它就是指加密通道技術(這個譯名最近好像不用了?)。技術正如其名,就是利用憑證技術把傳輸的通道加密起來。如下:
======受加密保護======
某甲 <-----DATA的安全通道-----> 某乙
======受加密保護======
雖然稱它加密了通道,但事實上加密的還是被傳輸的資訊。這個技術已經愈來愈普及,所以技術上很成熟,能很容易的使用。一個網站如果使用了SSL,那麼你會看到它的連接方式成變成https://,而不是常見的http://了。
Java的SSL
當小弟使用java的URL類別去連接https,馬上就丟出了例外(exception)。上網查了一堆文章,全都在介紹JSSE。但是,JSSE只適用於以往的Java 1.1、1.2(可能還有1.3)版,之後的JSSE其實已經被整進Java裡面了,無須額外安裝或是下載jar檔。
更不需要設什麼安全提供,如:
System.setProperty("java.protocol.handler.pkgs", "com.sun.net.ssl.internal.www.protocol"); Security.addProvider(new com.sun.net.ssl.internal.ssl.Provider());
一切的一切就只是讓你的jre信任SSL的憑證鍊即可。信任的方法很簡單,在你的jre\lib\security底下有一個cacerts檔。用keytool把SSL的憑證鍊中的每個憑證加進來,就算達到信任了!指令為:
keytool -import -keystore cacerts -file <憑證檔> -alias <給這個資訊任意名稱>
cacerts的預設密碼是changeit。
使用前,可以先copy一份cacerts作為備份。
Web Service混搭SSL
之後,再用Web Service直接去用URL類別連接https就不會有exception了!可喜可賀!(如右上圖)
共勉之
其他參見:
2008年6月6日 星期五
Eclipse, The Service implementation selected is invalid
今天在測Eclipse的WebService精靈時,發生:
The Service implementation selected is invalid
的問題。之前建過很多次,都沒有這種問題。且建立的service內容也很單純,應該沒有什麼特別需要調整的才對。
上網找過才發現,class的名稱,第一個英文字母要大寫...
底下是我找到的文章。我與這個po文者有相同的疑問...要第一個英文字母大寫...是必要的嗎?有何原因咧...
http://dev.eclipse.org/newslists/news.eclipse.webtools/msg16258.html
The Service implementation selected is invalid
的問題。之前建過很多次,都沒有這種問題。且建立的service內容也很單純,應該沒有什麼特別需要調整的才對。
上網找過才發現,class的名稱,第一個英文字母要大寫...
底下是我找到的文章。我與這個po文者有相同的疑問...要第一個英文字母大寫...是必要的嗎?有何原因咧...
這一切是個謎呀...歡迎各位朋友指教...
http://dev.eclipse.org/newslists/news.eclipse.webtools/msg16254.html
http://dev.eclipse.org/newslists/news.eclipse.webtools/msg16258.html
訂閱:
文章 (Atom)