侍2.0
を公開した。だいぶ使いやすくなりました。
侍2.0
・複数ファイルのモニタに対応
タブ表示または上下/左右に並べて表示できる。
・「最近のファイルを開く」機能を追加
そもそもあって然るべき機能です。
・Mac OS X環境でアプリケーションメニューに対応
aboutメニュー、環境設定がアプリケーションメニューから呼び出せるようになった。
・CSVファイルのグラフ化は拡張子が".csv"のファイルの場合のみ働くようになった
GCログをかませた場合などCSVファイルと勘違いしてグラフ化してしまうことがあったので。
・存在しないスレッドがテーブル表示で黒く表示されるようになった
今まで白く表示されていたので、running状態のスレッドと区別がつかなかった。
・Matrix モードを追加
あの興奮をもう一度!ログが黒字に緑色で流れるのはかなり良いです。Neoがスクリーンの向こう側で飛んでいるのが見える。
起動はこちらから ->
(要JDK1.4以降)

上のペインでCSVファイルを監視しているとこ。下のペインはMatrixモードでスレッドダンプとGCログを含むログファイルを監視しているとこ。
スレッドダンプはブロックされまくりのひどい状態。
タブ表示するにあたって、閉じるためのボタンを配置したかったんだけど、JTabbedPaneにそんな機能はなかった。
手頃な既製品も見あたらなかったので車輪から作ったら恐ろしいほど手間がかかった。

まぁ手間に見合ったぶんキレイにできたかな?
3つ以上のペインを上下左右に並べて表示するのはJTabbedPane をネストして無理矢理表現。みかけはそんなに変わってないけど相当手間暇かかってるのでなんとなく2.0とした。
だいぶリファクタリングが進んで中身が整理されてきたので今後の機能追加は楽になると思う。
SpringやVelocityを使ってもっと楽をしたいな。
侍2.0
・複数ファイルのモニタに対応
タブ表示または上下/左右に並べて表示できる。
・「最近のファイルを開く」機能を追加
そもそもあって然るべき機能です。
・Mac OS X環境でアプリケーションメニューに対応
aboutメニュー、環境設定がアプリケーションメニューから呼び出せるようになった。
・CSVファイルのグラフ化は拡張子が".csv"のファイルの場合のみ働くようになった
GCログをかませた場合などCSVファイルと勘違いしてグラフ化してしまうことがあったので。
・存在しないスレッドがテーブル表示で黒く表示されるようになった
今まで白く表示されていたので、running状態のスレッドと区別がつかなかった。
・Matrix モードを追加
あの興奮をもう一度!ログが黒字に緑色で流れるのはかなり良いです。Neoがスクリーンの向こう側で飛んでいるのが見える。
起動はこちらから ->

(要JDK1.4以降)
上のペインでCSVファイルを監視しているとこ。下のペインはMatrixモードでスレッドダンプとGCログを含むログファイルを監視しているとこ。
スレッドダンプはブロックされまくりのひどい状態。
タブ表示するにあたって、閉じるためのボタンを配置したかったんだけど、JTabbedPaneにそんな機能はなかった。
手頃な既製品も見あたらなかったので車輪から作ったら恐ろしいほど手間がかかった。

まぁ手間に見合ったぶんキレイにできたかな?
3つ以上のペインを上下左右に並べて表示するのはJTabbedPane をネストして無理矢理表現。みかけはそんなに変わってないけど相当手間暇かかってるのでなんとなく2.0とした。
だいぶリファクタリングが進んで中身が整理されてきたので今後の機能追加は楽になると思う。
SpringやVelocityを使ってもっと楽をしたいな。
| Tweet |
Apache Lenya インストールメモ
侍とかわらじのドキュメントに、多言語が使えて無償のCMS(Content Management System)がないものかと思っていたらよさそうなのがあった。
・Apache Lenya
http://lenya.apache.org/
Cocoon ベースのCMSで、サーブレットコンテナ上ならなんでも動くはず。
じゃぁ WebLogic にデプロイしてみよう。今回使ったのは WLS8.1SP4。
バイナリをダウンロードして展開したら lenya.war が出てきたので、とりあえずデプロイ・・・したら
----
Unable to use getRealPath to locate /WEB-INF
java.lang.NullPointerException
----
との例外。getRealPath 関連 null ってことは展開ディレクトリ形式でデプロイしないといけないっぽいので展開してデプロイ・・・したらTransformationを取得できないとかの例外。今度はXMLパーサの問題っぽい。
たぶん WebLogic 内蔵のパーサと WEB-INF/lib に配置されているパーサが衝突しているのだろうということで、WEB-INF のクラスを優先してロードするように weblogic.xml に設定。
------weblogic.xml
<!DOCTYPE weblogic-web-app PUBLIC "-//BEA Systems, Inc.//DTD Web Application 8.1//EN" "http://www.bea.com/servers/wls810/dtd/weblogic810-web-jar.dtd">
<weblogic-web-app>
<container-descriptor>
<prefer-web-inf-classes>true</prefer-web-inf-classes>
</container-descriptor>
</weblogic-web-app>
・Apache Lenya
http://lenya.apache.org/
Cocoon ベースのCMSで、サーブレットコンテナ上ならなんでも動くはず。
じゃぁ WebLogic にデプロイしてみよう。今回使ったのは WLS8.1SP4。
バイナリをダウンロードして展開したら lenya.war が出てきたので、とりあえずデプロイ・・・したら
----
Unable to use getRealPath to locate /WEB-INF
java.lang.NullPointerException
----
との例外。getRealPath 関連 null ってことは展開ディレクトリ形式でデプロイしないといけないっぽいので展開してデプロイ・・・したらTransformationを取得できないとかの例外。今度はXMLパーサの問題っぽい。
たぶん WebLogic 内蔵のパーサと WEB-INF/lib に配置されているパーサが衝突しているのだろうということで、WEB-INF のクラスを優先してロードするように weblogic.xml に設定。
------weblogic.xml
<!DOCTYPE weblogic-web-app PUBLIC "-//BEA Systems, Inc.//DTD Web Application 8.1//EN" "http://www.bea.com/servers/wls810/dtd/weblogic810-web-jar.dtd">
<weblogic-web-app>
<container-descriptor>
<prefer-web-inf-classes>true</prefer-web-inf-classes>
</container-descriptor>
</weblogic-web-app>
| Tweet |
Java アプリケーションで MacOSのアプリケーションメニュー操作、のメモ
com.apple.eawt.* パッケージを使うと Mac OS X 特有のアプリケーションメニューのイベントハンドリングができるらしい。「[アプリケーション名]について」とか「環境設定」「[アプリケーション名]を終了」とかを伝統的なファイルメニューではなく、モダンなMacOSXのアプリケーションメニューから呼び出せるのでよりネイティブアプリっぽくなる。
http://developer.apple.com/documentation/Java/Reference/1.5.0/appledoc/api/index.html
なんかNASAのサイトにサンプルがあった。
http://oodt.jpl.nasa.gov/pds-bd-macosx/xref/BulkDownloader.html
Web を調べると com.apple.mrj.MRJApplicationUtils ってクラスを使う例が良く出ていて混乱したけれども JDK1.4.2/5.0 では deprecated みたい。
・Tailoring Java Applications for Mac OS X
http://developer.apple.com/jp/technotes/tn2042.html
http://developer.apple.com/documentation/Java/Reference/1.5.0/appledoc/api/index.html
なんかNASAのサイトにサンプルがあった。
http://oodt.jpl.nasa.gov/pds-bd-macosx/xref/BulkDownloader.html
Web を調べると com.apple.mrj.MRJApplicationUtils ってクラスを使う例が良く出ていて混乱したけれども JDK1.4.2/5.0 では deprecated みたい。
・Tailoring Java Applications for Mac OS X
http://developer.apple.com/jp/technotes/tn2042.html
| Tweet |
