アーカイブ
システムプロパティを取得する。
システムの改行文字だとかパス区切り文字だとかJavaのバージョンだとかを表示する。
いつも忘れてしまうのでメモ。
Iteratorを使って。
Iterator it = System.getProperties().keySet().iterator();
while (it.hasNext()) {
String key = (String) it.next();
System.out.print(key + " : ");
System.out.println(System.getProperty(key));
}
Enumerationを使って。
Enumeration keys = System.getProperties().keys();
while (keys.hasMoreElements()) {
String key = (String) keys.nextElement();
System.out.print(key + " : ");
System.out.println(System.getProperty(key));
}
・・・で、改行文字「\n」は「line.separator」で分かりやすいのですが、普段(わたしが)パス区切り文字って呼んでいる「/」は「file.separator」になってて、「path.separator」は「:」でした。
ちょっと混乱。
mod_proxy_ajpでつなぐ。
Quick Start メモ。
Apache 2.2.0とTomcat 5.5.12で確認しました。
mod_jkを使うのに比べるとコレだけでいいの?ってくらい楽。
まずはインストール。とりあえずデフォルトの/usr/local/apache2へ。
# cd /usr/local/src
# wget http://example.com/httpd-2.2.0.tar.gz ←最寄りから。
# tar zxf httpd-2.2.0.tar.gz
# cd httpd-2.2.0
# ./configure --enable-proxy --enable-proxy-ajp
# make
# make install
参考:mod_proxy_ajpのドキュメント
そして設定。
httpd.confにまとめて書くんじゃなくて、機能ごとに別ファイルにしてIncludeするのがこれからのスタイルらしい。
/usr/local/apache2/conf/extra/httpd-proxy.conf
<Location /jsp-examples/>
ProxyPass ajp://localhost:8009/jsp-examples/
</Location>
ロードバランサーの設定もこのファイルに。
参考:Tomcatのドキュメント
そして/usr/local/apache2/conf/httpd.confの最後へ追記。
Include conf/extra/httpd-proxy.conf
Tomcat側はデフォでポート8009にAJP 1.3 Connectorが開いているので、とくにやることなし。
ちなみにmod_jkを使った例はこちら。
結城さんのデザパタ本(新しいほう)。
結城浩のはてな日記 – 『増補改訂版Java言語で学ぶデザインパターン入門』無料プレゼント
日ごろの感謝を込めて、『増補改訂版Java言語で学ぶデザインパターン入門』を無料プレゼントいたします。
今回は、ブログやWeb日記を書いている方を対象としたプレゼントです。
結城さんがあのデザパタ本の無料プレゼントをしておられます。
内容は言わずもがなですが、鞄に突っ込んで通勤電車で読むのにはつらかった。
・・・と、そもそもそういう読み方をする本ではないか。
とにかく、デザインパターンの導入を検討中のご家庭には必須の一冊です。
iアプリでAmazon検索 その2。
ISBNのみ対応はやっぱり中途半端なので、その他も対応しました。
Amazon.co.jpで扱いのあるものならなんでもイケます。
iアプリのURLはこちら→iアプリでAmazon検索。
ときどきエラーが出るのはAmazonECSのレスポンスが安定してないせいです。しっかりしてくれよぅ・・・。
iアプリでAmazon検索。

iアプリ作りに挑戦してみたらコードリーダー使うのがおもしろくて、そのまま勢いで作ったもの。
AmazonECSの仕様の関係で本以外がちょっと複雑になるので、とりあえず978で始まるISBNのバーコードのみ対応とします。その他も対応しました。
実機検証は手元のP901iでしかやってませんが、505i, 506iシリーズ(DoJa-3.0)以降なら大丈夫でしょう。
Amazon自身が出してるヤツとなにやらかぶってますが、気にしない方向で。
書店の店頭で気になった本の評価をAmazonで調べるときなどに便利です。というか、そのままブラウザ開いてカートに入れることも可能です。
まぁ、目の前に積んである本をネットで買うってのもアレですが。
HSQLDBの次。
The creator of Hypersonic SQL has written a new database engine: H2. It’s is written in Java, is free, source code is included.
現在SourceForge.netで開発が続けられている、Javaで書かれたDBエンジンHSQLDBの作者Thomasさんが新しいDBエンジンを作られたようです。
HSQLDBがあれだけ使われているのですから、これも注目ですね。
Commons Emailでメールを送る。
現象:
普通のテキストメールを送るためのSimpleEmailを使ったときに日本語が化けてしまった。
原因:
SimpleEmail#setMsg()のロジックにキャラクタセットを適用としている姿勢が見られない=ロジックがない。
ISO-8859-1以外のメールとばしてみれば一発で発覚するんだけど。それは「想定外」ってことですか。
ちなみにこの件はBugzillaにすでに登録されてました。
これを自分で適用してひとまず解決。
でもこの対応だと、setCharset() → setMsg()の順番で呼ばなければいけないという暗黙のルールができてしまう。
それはやだなぁ。
J2EEアプリを速くする6つのステップ?
JavaBoutique: Six Steps to Faster J2EE Apps
JavaBoutique has posted an article with the title “Six Steps to Faster J2EE Apps: Performance Tuning with JSP and Servlets,” by Sridhar M S, focusing on the web tier only and on using JSP and Servlets in that tier.
ディレクティブでのincludeとjspアクションのincludeの適用を間違えるなだとか、jsp:useBeanのスコープは正しく(できる限り狭く)しようだとか。
気をつけるところといえばそうなんだけども、「J2EEアプリ」ってくくるのは大風呂敷じゃないですか?
Java 5 アップデート。
Sun Microsystems has released Java 5 Update 6 for Windows, Linux, and Solaris. It is a combination of security enhancements and bug fixes.
上がってます。セキュリティ脆弱性対応とバグフィックスのようです。
