Pixel Pedals of Tomakomai

北海道苫小牧市出身の初老の日常

2006-09-01から1ヶ月間の記事一覧

Digesterに悩む

率直な感想は、「なんだ、この使いにくいAPIは!」。エレメントに対してルールを定義するというアイディアは賛同できるのですが、使えば使うほど辛くなってきます。なんでなんだろうと考えてみたんですが、APIが整理されていなくて、しかも命名が直感的じゃ…

Hibernate EntityManager

こちらのエントリを盗み見て動かそうと頑張っているのですが、まだ動きません(笑)。 lib以下はREADME.txtを見つつrequiredなjarを取り込む lib以下だけCLASSPATHに入れててメインのjarを入れ忘れたよ(ぉ *1 エンティティには@Entityアノテーションを cglibが…

RuntimePermission "exitVM"

ポリシーファイルにexitVM権限を付加しなくても、アプリはSystem.exit()可能だそうです。ここを流し読みした感じ、sun.misc.Launcher.AppClassLoader経由ではexitVM権限が付加されるみたい。確かに、デフォルトのjava.policyにはexitVM権限は書かれていない…

exitされたくない

外部のクラスのmain()を呼んだりしてみたところ、System.exit()されて後続の処理をキャンセルされてしまいました。それでは困るので、セキュリティマネージャーの力を借りてみました。 // 現在のセキュリティマネージャを取得 final SecurityManager origina…

BuddhistCalendar

仏陀は偉大なのです。例えば、ちょうど今、 Calendar cal = Calendar.getInstance(); System.out.println(cal.get(Calendar.YEAR));とやっても、タイでは「2006」が返って来ないかもしれません。試しに、ロケールをタイにした検証結果を載せてみます。 Calen…

finally{}とSystem#exit()

finally{} は非常に便利で、例外発生時だけではなく return 時にも必ず実行されます。しかし、System#exit()にはさすがに勝てません。こんな三つのメソッドを作って、 static void returnMeth(){ try{ System.out.println("(returnMeth) try."); return; }fi…

複数のStreamと例外

こんなに例外がやっかいだったとは・・・。ふたつのファイルからデータを読んで、ひとつのファイルに書き込むプログラムを書いてみました。 File in1 = new File("in1.txt"); File in2 = new File("in2.txt"); File out = new File("out.txt"); BufferedRead…

配列のキャスト

java初心者であることを痛感しました。以下のコードがClassCastExceptoinで動かないのです。 ArrayList list = new ArrayList(); list.add("hoge"); String[] array = (String[]) list.toArray();ArrayListから戻ってくる実体はObjectなので、Stringにはでき…

Velocity

TEXT形式で結果を出力しているプログラムを、html形式に直して欲しいと言う依頼を受けました。普通にprintln()でやるとつまんない*1上に改修に弱くなってしまうので、google先生に聞いてみたところ、Velocityなるものを発見。VTL(Velocity Template Language…

MavenはCPANの味

Maven 2をインストールしてみました。なるほど、CPANチックです。こちらのページが詳しくてよかったです。でも、あくまでも「チック」であり、根本的な違いも大きいです。一番大きいのは、Mavenはモジュールをインストールするツールではないってことです。…