目前分類:Java (60)

瀏覽方式: 標題列表 簡短摘要

痞客邦的第二篇,還不太熟怎麼用。

進行POC過程發現如果XML不是檔案,而是字串,JDOM如何去parse? 這以前晃兄有教過一次。

Jemmy 發表在 痞客邦 留言(0) 人氣()

  在Windows 7 64bit跑Eclipse,用SVN提交或更新專案時,老彈出如下落落長視窗:

Failed to load JavaHL Library.

Jemmy 發表在 痞客邦 留言(0) 人氣()

  今天狀況還真不少,也更了解JavaMail,曾因發Mail中文出現亂碼,經由客戶提供sample,從純文字改以HTML方式發送,果然OK。

Properties props = new Properties();

Jemmy 發表在 痞客邦 留言(0) 人氣()

  寫了那麼久的Java,現在才有機會寫JavaMail。之前存在一個誤解是要架設Mail Server,不過修正的是OS都有自己內建的Mail Server,也許沒有產品化的功能強大。

  JavaMail目前最新版是1.4.3,在Maven放的是1.4.1,還需引入activation,作用先不深究。pom.xml設定如下:

Jemmy 發表在 痞客邦 留言(0) 人氣()

  討厭的JDOM,語法習慣都和一般的Java libraries不太一樣,當然還沒像IBM的那麼奇怪。若想把單一的Element轉成XML String怎麼處理?壓根兒沒猜到JDOM把它當作Stream處理,所以沒有所謂的toXML、convert等method,要用XMLOutputer。轉字串很簡單的如下:

XMLOutputter outputter = new XMLOutputter();

Jemmy 發表在 痞客邦 留言(0) 人氣()

  漫不經心的憂傷,踹到JDOM來。拿既有的Element當作一份新產出XML Document怎麼處理呢?假設Element值是<book>漫不經心</book>,若要以<book>為根元素,其寫法如下:

XMLOutputter outputter = new XMLOutputter();

Jemmy 發表在 痞客邦 留言(0) 人氣()

  任何一套Web Framework,都會遇到一對多,甚至再一對多或多對多的編輯畫面,雖然各有自己解決方式,但學習門檻、普遍適用性問題,都得考慮是否值得投資時間學更複雜的用法。而JSON一出,我倒覺得可以一分為二,單一的Table的增改刪查可以依賴Web Framework既有的解決方案,而複雜關聯性的增刪改查,可以統一使用JSON,也比XML省空間。

  我還是用net.sf.json-lib套件,在前端Post(或Get)到後端的變數是JSON格式字串,它若不是物件(Object)就是陣列(Array),其用法區分如下:

Jemmy 發表在 痞客邦 留言(1) 人氣()

  出現java.lang.NoSuchMethodError: org.apache.commons.collections.map.ListOrderedMap: method <init>()V not found。係JSON套件依賴於commons-collections。而JSON的pom.xml並未設定此依賴,是故需手動設定pom.xml如下:

<dependency>    <!-- 2008/4/15 -->

Jemmy 發表在 痞客邦 留言(0) 人氣()

  Java泛型(Generic)功能強大易學難理解,易學是因為在一般程式開發時很好用,可是提昇到架構層次思維時,往往以為可以達成的工作卻不work,原因是不了解泛型的本身意涵與限制。

  泛型作用是在於Runtime時才確認要work的Class,是故宣告個pulbic class Generic<T>,在用其它Class去call Generic時,才把T用其它Class取代,例:Generic<String> generic = new Generic<String>;。反過來說,call Generic的時候,還不確定T是什麼類別,或是Generic類別裡的程式又用到泛型,那應該不work的。舉例Spring的RowMapper例子如下,newInstance的參數是Class類別,直接傳泛型T不能compile:

Jemmy 發表在 痞客邦 留言(0) 人氣()

  兩年半前的Vibo案,Aqual Logic竟無法註冊.Net的WebServices,用Axis去call .net web services完全不通。近日受命研究連接某公司的.net web services,要用Java去call,結果在JBoss的官方文件竟找到Solution,出處在http://docs.jboss.org/jbossas/jboss4guide/r2/html/ch12.html,還是用javax.xml.rpc套件去call的,反而我還是無法使用Axis踹出來,不免有種滄海桑田之感。

  某公司的web services的URL是https://…/Security.asmx。以asmx結尾是.Net手路之一,所以後面加?wsdl確定有它的存在。在該網頁檢視發現有個URL地位很重要:http://tempuri.org/,這麼解釋它:它是.Net WebServices參考的Namespace(命名空間)。之後找到JBoss附的source如下:

Jemmy 發表在 痞客邦 留言(0) 人氣()

  SimpleTage和SimpleTagSupport是JSP 2.0簡化版的自訂標籤的介面與抽象類別。只需覆寫doTag method,但不像BodyTagSupport可以處理自訂標籤包起來的內容當作JSP解譯,是故在TLD的配置如下:

<taglib xmlns="http://java.sun/xml/ns/j2ee"

Jemmy 發表在 痞客邦 留言(0) 人氣()

取自http://weavesky.com/2007/03/17/servlet-2-5-web-xml/的內容,因為在下也遇到:

Servlet 2.5在web.xml的namespace Servlet 2.4在web.xml的namespace
<web-app xmlns="http://java.sun.com/xml/ns/javaee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
    http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
    version="2.5">
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
    http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
    version="2.4">

Jemmy 發表在 痞客邦 留言(0) 人氣()

  Survey技術有時最討厭的一點,就是把自己的電腦搞得一團糟。環境不再乾淨,Eclipse一大堆插件,但解決方式有時很另類,不必知道原因,直接切換一個新的workspace就OK了。

  在舊有的workspace就出現以下的訊息,再建立一個新的Maven檔時候。

Jemmy 發表在 痞客邦 留言(0) 人氣()

  在Eclipse Create一個maven-archetype-webapp專案時,丟出警告訊息,之後還是產出Project目錄。maven-archtype-webapp站台可能怪怪的,重點不在此。之前Create struts2-archetype-starter成功後,Project的圖示有M和J的字母,代表同時為Maven Project和Java Project。而maven-archtype-webapp產出的Project圖示只有M,因此我想去Create一個Package或Class或Source Folder都失敗,失敗訊息如標題所示:Source folder is not a java project。

  每個Project目錄下至少有個.project檔,而maven-archtype-webapp的.project檔目錄內容很少,節錄如下:

Jemmy 發表在 痞客邦 留言(0) 人氣()

  • Feb 04 Thu 2010 12:19
  • Jemmy

  曾翻閱絕世武功目錄之一:http://java-source.net/。竟發現一個與我同名的測試工具-Jemmy。它是Java UI testing tool,原本是由NetBeans維護,最新版Jemmy3已移至Java.net網站了,位在https://jemmy.dev.java.net/

  在Bloghttp://zwshen.blogspot.com/2008/05/tutorial-of-jemmy.html對Jemmy的入門介紹還不錯。也整理如下:

Jemmy 發表在 痞客邦 留言(0) 人氣()

  感謝史烤酥當初提議,找Contract進來要考試,無意間就考進兩名高手,雖然很愜意的不用寫程式,第一次扮演發號施令的角色,不用再校長兼撞鐘,也因此得以學習到高手程設精髓。目前專案任務是將報表內容轉存成pdf檔,儲存到Oracle的Blob後再response到前端去,現在採倒敍法記錄這些訣竅:

1.把byte array內容response到前端:

Jemmy 發表在 痞客邦 留言(0) 人氣()

  三年前的思維,再這次修改案中又重現。而且記得更多,三年級的統計學、四年級的線性代數、五年級的數值分析和作業研究,相關科目記得還有離散數學、拓璞學等。我不是數學高手,會注意到這些管理數學類的東西,是因為它們的目的是要預測更貼近真實,更貼近生活週遭。目前Java大概只有Apache的commons-math套件提供免費封裝好的元件,更不及現有著名的數學軟體Matlib。就算不用commons-math,也Google到有人用Java寫出蒙地卡羅模擬器,但…應該很累。

  蒙地卡羅(Monte-Carlo)是一種藉用數百次,乃至數萬次的模擬,藉大數法則來對非線性、非常態分配的數據模型進行推估預測。翻成白話,比如男生平均壽命75、女生平均壽命82,是可預測的正常分布(常態分配);而地球被外星撞上的新聞,科學家都藉由模擬來評估有幾千或幾萬分之一的機率撞上地球,是就已知可掌握的因素加上未知不可預測風險因素評估出來的。蒙地卡羅模擬也後來被實證有相當的準確性。

Jemmy 發表在 痞客邦 留言(0) 人氣()

  拜重拾三年前的專案所賜,其所需要的Know how基於統計學、線性代數,乃至更高層次的作業研究(Operator Research),大陸稱之運籌學(取得不錯,運籌惟幄之中,決勝千里之外)。而Apache的commons-math套件也提供相當的函數,如幾何平均數:

43cea9aee871f9ad5ec664fcf4f9e2e3

Jemmy 發表在 痞客邦 留言(0) 人氣()

  自Sun網站下載jdk-6u1-linux-i586-rpm.bin,置於/root/jdk目錄下,給它executor權限(chmod +x jdk-6u1-linux-i586-rpm.bin)。執行./jdk-6u1-linux-i586-rpm.bin進行安裝,一段時間後完成。就會產出JDK6至/usr/java/jdk1.6.0_17(最新版)。

  由於上傳jdk-6u1-linux-i586-rpm.bin過程曾中斷,初次執行./jdk-6u1-linux-i586-rpm.bin出現以下錯誤訊息:

Jemmy 發表在 痞客邦 留言(1) 人氣()

  JMeter是Apache釋出Java專用的效能評測產品(不是元件),所以在有安裝好JDK後,切到Home目錄\bin下執行jmeter.bat執行即可。就彈出一個GUI操作介面。網路敍述用於HTTP評測的例子較多,而用於DB較少,而且是以MySQL為例,若要用Oracle,則需把Driver Jar檔置於Home目錄\lib下,再重啟jmeter.bat就能重新載入。

  JMeter的概念,一個Test Plan可包含數個Thread group(執行緒群組)。Thread Group是JMeter核心,有三個核心要設置,分別是Config Element(設定元素)、Sampler(取樣)和Listener(接聽),見下圖:

Jemmy 發表在 痞客邦 留言(0) 人氣()

1 23