StartExplorer: 讓我執行 batch/shell 時不用在 CD 老半天的 Eclipse Plug-in

Posted on March 5th, 2014

###超方便的 Eclipse plug-in: StartExplorer

每次在 Eclipse 開發時, 總是需要透過 Windows 的 File Explorer 或 Command Prompt 去啟動一個 Batch 來執行專案,

透過 cmd 還要 cd 個老半天才找到專案底下的 batch 檔, 實在很不方便...

即使在 Windows7 有一個不錯的功能, 可以在 File Explorer 上對資料夾點 **Shift + 滑鼠右鍵** -> **在此處開啟命令視窗** 來開啟 Command Prompt,

但此舉還是需要離開當前視窗, 找到 workspace, 專案, ... 有時候一離開 Eclipse 視窗後要找到哪個檔案都忘了了XD

某天突然就想應該有類似的 plug-in 可以用, 搜尋一下就在 stackoverflow 找到了其他高手推薦的 **StartExplorer**,

有了它就可以直接在 Package Explorer 按右鍵 -> StartExplorer -> **Show in File Manager** 或 **Start Shell Here**

> 真是快又有效!
> 一定 iPad 溫開水, 15 分鐘咳嗽 OUT!


####Ref:
[Startexplorer](http://basti1302.github.io/startexplorer/)

Tomcat + ImageIO: Can't create cache file!

Posted on February 27th, 2014

需求是想透過 pdfbox 將上傳的 pdf 文件中的圖片擷取出來, 以作為預覽縮圖使用,
當在 main 裡試過可以後, 就嘗試把程式搬到 Struts 上, 沒想到就丟出這個 Exception

> **Can't create cache file!**
> javax.imageio.IIOException: Can't create cache file!
> at javax.imageio.ImageIO.createImageInputStream(ImageIO.java:361)
> at javax.imageio.ImageIO.read(ImageIO.java:1351)

原來是當 `ImageIO` 在 Tomcat 上使用時,
程式會預設使用 ` $CATALINA_BASE/temp` 作為轉檔用的 Cache
所以要確認該資料夾存在, 且可以存取,
若沒有就會丟出上述 IIOException

####Ref:
[http://codeforfun.wordpress.com/2008/04/28/iioexception-cant-create-cache-file/](http://codeforfun.wordpress.com/2008/04/28/iioexception-cant-create-cache-file/)

第一次使用 SolrJ5.0 的各種小問題

Posted on February 25th, 2014

第一次使用 SolrJ5.0 的各種小問題

.
這次的需求是要將某一個系統上既有的文件資料發布到一個 Solr Server 上,
讓使用者可以簡單地進行搜尋,
.
因為要將文章發佈到 Server 上,
所以想先透過一個簡單的專案以 Main 去測試發布的功能,
.
沒想到我只寫了下面這一行 code 就遇到奇怪的問題:
.
HttpSolrServer server = new HttpSolrServer(WISE_SERVER_URL);
.

java.lang.UnsupportedClassVersionError: test/MainEntry : Unsupported major.minor version 51.0

搜尋一下發現應該是 JRE 版本不符合, 於是馬上改了 eclipse 上的 jre 設定 --> JRE1.7
.
.


改完, 緊接著發生另一個問題:
同樣只有這行new HttpSolrServer(WISE_SERVER_URL) :

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/http/NoHttpResponseException
..
前輩建議我先將這個 main 程式直接擺到運行 Solr Server 的專案底下試試,
沒想到居然可以運作了, 而且將 SolrInputDocument 可以丟到 Solr Server 上,
且 Server 可以正確進行索引及搜尋.
.
(我一開始以為這是改了 1.7 之後, JRE 不支援所產生的錯誤訊息...)
.
那麼應該就是環境的問題了!
.
所以首先將 WEB-INF/lib 底下的 Library 通通複製到新開的專案試試,
之後參考舊版的 SolrJ 所需的 jar 一個一個檢查哪一個是必要的.
.
沒錯, 問題是缺少了 HttpClient 的幾個相關的 Library,
最後專案裡是包含下面這幾個 jar
..
1. commons-codec-1.7.jar
2. commons-io-2.1.jar
3. httpclient-4.2.3.jar
4. httpcore-4.2.2.jar
5. httpmime-4.2.3.jar
6. jcl-over-slf4j-1.6.6.jar
7. log4j-1.2.17.jar
8. slf4j-api-1.6.6.jar
9. slf4j-log4j12-1.6.6.jar
10. solr-solrj-5.0-SNAPSHOT.jar
11. noggit-0.5.jar
..


但...
這次雖然 Main 是可以跑了, 但將 SolrInputDocument commit() 到 Server 就丟了錯誤訊息回來,
.

Server at http://127.0.0.1:8090/wise/wiseadm/core0 returned non ok status:500, message:Server Error

..
由於目前程式是可以運作, 只是 Server 會丟錯誤訊息回來...
所以暫時先這樣, 不過遲早要解決...或許哪天就這樣爆炸了!!


在 Postach 嘗試把一些經驗及心得寫下來

Posted on January 5th, 2014

最近發現一些新一代的部落格平台,
像是 Medium, Logdown 還有現在嘗試的這個 Postach
這些平台都是 2013 年才上線服務的,
目前 Postach 還是 beta 的階段。


Medium 則比較像是一個傾向社交的服務,
因為若要使用是需要透過 Twitter 的帳號登入,
整體介面很乾淨,幾乎沒有多餘的東西去干擾使用者,
讓文章在 Medium 上面非常適合閱讀。


第二個 Logdown 是由台灣的團隊 rocodev 進行開發的,
似乎很適合拿來發布關於技術的文章,
支援 Markdown, LaTex 等等線上即時編輯。


而最後一個是 Postach
會知道它是因為 Postach 在 2013 年的 Evernote Devcup 獲得金獎,
算是被官方認證過的服務了,
Postach 直接結合了 Evernote,
讓使用者可以直接透過 Evernote 進行編輯與發布,
這也是我選擇它的原因。


最近也慢慢養成習慣透過 Evernote 把一些曾經遇到的問題寫下來,
反正都記錄下來了,不如就讓它成為網路上的資源吧 XD



Symantec PcAnywhere 12.1@Win7啟動時中文亂碼問題

Posted on December 16th, 2013

PcAnywhere 是賽門鐵克的一個古老遠端操作軟體,

我聽都沒聽過XD 不過我猜它當年應該算是功能非常強大的。

由於某些客戶還是有在使用,所以只好去找來用。

軟體王目前還有提供12.1版的30天試用版下載

安裝完後打開卻出現滿滿的 ????? 亂碼

Google 到的解決方法是透過 Regedit 修改登錄檔值,

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Control Panel\International]
"Locale"="00000414"

404 為 中文語系 (預設)
414 為 英文語系

修改完重新啟動電腦再執行應該就可以了。
奇怪的是隔天上班開機執行後又出現亂碼,
所以又改回 404 ,目前一切都正常了。



Enable TCP/IP settings of MS SQL Server 2008

Posted on November 22nd, 2013

MS SQL 2008 Express R2 @ Windows Server 2003 環境下
若無法以 Tomcat 的 Server 連接( Telnet 亦無法連接 localhost:1433 ), 但卻可以透過 MSSQL Management Studio 連接,則問題可能為 MSSQL TCP/IP 組態沒有開啟

必須到: 開始 -> 所有程式 -> Microsoft SQL Server 2008 -> 組態工具-> SQL Server 組態管理員 進行設定

  1. 左方樹狀節點 SQLEXPRESS 的通訊協定 右邊項目 TCP/IP 右鍵內容 -> tab IP 位址,將 IPAll 節點底下的 TCP通訊埠 設定為 MSSQL 的 port 1433 ,確認後右鍵啟用
  2. 左方樹狀節點 SQL Server 服務 右邊 SQL Server(SQLEXPRESS) 右鍵啟用
  3. 完成後即可正確連接。
(一個奇怪的現象, Studio 可以連, 其他程式卻不能連接, 安裝完成應該要預設開啟才對啊...)

(感謝 Larry 大大教學)

Liullen

Notes from my experience.