瀏覽器 版本號 |
navigator.userAgent |
Chrome 26.0.1410.43 |
Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.31 (KHTML, like Gecko)
Chrome/26.0.1410.43 Safari/537.31
|
Firefox 20.0.1 |
Mozilla/5.0 (Windows NT 5.1; rv:20.0) Gecko/20100101 Firefox/20.0 |
Safari 5.1.7 (7534.57.2) |
Mozilla/5.0 (Windows NT 5.1) AppleWebKit/534.57.2 (KHTML, like Gecko)
Version/5.1.7 Safari/534.57.2
|
Opera 12.01 |
Opera/9.80 (Windows NT 5.1; U; zh-tw) Presto/2.10.289 Version/12.01 |
IE8 8.0.6001.18702 |
Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET
CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; .NET4.0C)
|
IE7 7.00.5730.13 |
Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 2.0.50727;
.NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; .NET4.0C)
|
IE6 6.00.2900.2180
|
Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 2.0.50727;
.NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; .NET4.0C)
|
大笨鳥 發表在 痞客邦 留言(3) 人氣(1,569)
在使用 Spring 的 Web 專案中的一般類別 (即未宣告在 applicationContext.xml 的類別),如何取得由 Spring 實例化出來的物件?
請依照下例步驟執行:
取得 javax.servlet.ServletContext 物件
如果是 struts2 專案,可使用【 org.apache.struts2.ServletActionContext.getServletContext() 】來取得。
取得 org.springframework.context.ApplicationContext 物件
使用【 org.springframework.web.context.support.WebApplicationContextUtils 】類別來取得 WebApplicationContext (繼承自 ApplicationContext) 物件。如下:
WebApplicationContext ac = WebApplicationContextUtils.getRequiredWebApplicationContext(servletContext); // 將第 1 步取得的 ServletContext 物件傳入
透過 ApplicationContext 物件即可取得由 Spring 實例化出來的物件了
例如:HelloService helloService = (HelloService) ac.getBean("helloService");
大笨鳥 發表在 痞客邦 留言(0) 人氣(166)
這幾天找資料時無意間看到了這個網頁
http://eligrey.com/demos/FileSaver.js/
上面除了應用了 File API 之外,另外讓我感興趣的就是按一下按鍵就能下載。
當然這功能似乎一般的超連結寫法或是交由後端 server 程式處理也能做到,但一般超連結如果遇到的是瀏覽器認識的檔案,如圖檔之類的,就會直接在瀏覽器開啟,使用者如果要下載,就必需要開啟右鍵選單來下載,而交由後端 server 程式就開發者而言就更麻煩了,因此就小小研究一下這個功能。
大笨鳥 發表在 痞客邦 留言(0) 人氣(144)
大笨鳥 發表在 痞客邦 留言(1) 人氣(114)
JavaScript 最常用的用法之一為操作頁面上的 DOM elemnt,而 DOM element 屬性中,同樣都是寬度,就有區分為 offsetWidth、clientWidth 與 offsetWidth 這幾種,而這之間的差別如下:
scrollWidth :
element 的真正寬度,會依其內容而有所增加,並不一定會是設定在 style 中的 width 的值。
其值也不包含自身的邊線 (border) 寬度,但若是其內容是一個比自身還寬 element,
則在 Firefox 與 Chrome 中,會計算內容 element 的 border 寬度,而在 IE 中則不會 (請看範例)。
clientWidth :
element 不包含邊線 (border) 與捲軸 (scrollbar) 的可視寬度。
此值 border 為 0 時,IE 與 Firefox、Chrome 是一樣的,但若 border 不為 0,則此值在此兩種瀏覽器會有所不同,原因請看範例說明。
offsetWidth :
element 包含邊線 (border) 與捲軸 (scrollbar) 的可視寬度。
此值 border 為 0 時,IE 與 Firefox、Chrome 是一樣的,但若 border 不為 0,則此值在此兩種瀏覽器會有所不同,原因請看範例說明。
大笨鳥 發表在 痞客邦 留言(0) 人氣(473)
YUI Builder 是 Yahoo 所開發的一套基於 ANT 技術的 YUI 元件(Component) build tool。
它能夠為 YUI 元件開發者,提供以下幾個建構功能
對 Javascript 原碼進行「壓縮(YUI Compress)」 與「校驗 (JSLint)。
對 CSS 原碼進行「壓縮(YUI Compress)」。
將多個 JS 檔或 CSS 檔合併成單一個檔案 (在 YUI3 中,通常會將所有子模組的 JS 檔合併成父模組同名的一個 js 檔)。
除了會自動複制一份原檔外,尚會為此檔建位壓縮檔(同檔名以 -min 結尾) 與 debug 檔 (同檔名以 -debug 結尾,保留 YAHOO.log 或 Y.log 程式碼,以方便除錯)。
其他有的沒的。
大笨鳥 發表在 痞客邦 留言(0) 人氣(291)
問題描述:
當頁面上有某個 Tag 被包在 A Tag 之內 (例如:<a><p>文字</p></a>),若取得此 Tag 並使用 innerHTML 來填入字串時,Firefox 會很雞婆的在填入的字串前後自動加上 A Tag。
例如:我們要取得如下結構中的 P Tag 後,用 innerHTML 填入文字
<a id='link'><p id="text">TEXT</p></a>
大笨鳥 發表在 痞客邦 留言(0) 人氣(343)
最近打算將 Struts 2.0.x 版本直接升到 2.2.1,但如此一來之前為 Struts 2.0.x 所寫的一些能讓 XML 配置檔的 include tag 使用萬用字元的 Class 就無法運作了。
為了讓 Struts 2.2.1 XML 配置檔的 include tag 也能使用萬用字元,所以我又回頭去追原始碼,打算像之前 Struts 2.0.x 版一樣自己來寫一個,但是在追原始碼的過程中,我發現 Struts 2.2.1 本身已經有支援 include tag 使用萬用字元了,於是我在往前回溯到之前一度用過的 Struts 2.1.6,發現在 2.1.6 其實就已經有支援了,雖然我沒有再往前追查 2.1 最早的版本,但我相信 2.1 應該就已經支援了,而且不論如何,至少 2.1.6 確定是有支援配置檔的 include tag 使用萬用字元。
Struts 2 有關讀入並解析 XML 配置檔的程式是在 com.opensymphony.xwork2.config.providers.XmlConfigurationProvider 類別,其中的 loadConfigurationFiles() 方法內可以看到解析 include tag 萬用字元的程式碼。
大笨鳥 發表在 痞客邦 留言(0) 人氣(133)
因為專案需要呼叫公司既有的 Web Service 來處理上/下傳檔案,所以先前花了些時間在測試 Web Service 與 Client 端有關於傳檔的寫法,當時是使用 AXIS 的技術。
雖然測試的結果都很 ok,但實際上拿到公司的 Web Service 時,才發現公司是用 AXIS2,一開始也不以為意,依舊用 AXIS 的 Client 是呼叫這個 Web Service,不過結果確很讓人沮喪,因為雖然一般的呼叫都沒問題,但只要呼叫上傳檔案的方法就會丟出錯誤:
『org.apache.axis2.AxisFault: Invalid reference :cid: xxxxxxxxxxxxxxxxx』(其中的 XXXX 是一串文數字,每次都不相同)
大笨鳥 發表在 痞客邦 留言(0) 人氣(803)
當我們的 Web Service 有傳遞檔案的需求時,除了使用 byte 陣列之外,還可以使用 javax.activation.DataHandler 這個類別。
要使用這個類別,尚需引入 activation.jar (JAF) 與 mail.jar 這兩個套件。
這裏要注意的是,有些教學網站只教你去 SUN 網站下載 JAF 來使用即可,但其實 JAF 就是我們使用 java mail 時需要引入的 activation.jar 檔,不過這也還好,主要是這些網站並沒說要引入 mail.jar,結果就是在執行時會丟出『java.lang.RuntimeException: No support for attachments』的錯誤,當時的確是造成了笨鳥的困擾,好加在有在別的網站找到原因,不然又不知要被困多久了 ~~ >_<
大笨鳥 發表在 痞客邦 留言(0) 人氣(5,738)