Ubuntu VMWare上のWindows
なぜかアンダースコア(_)が入力できないことに、今日気が付いた。他の記号は大丈夫だ。なぜだろう。とりあえずALT押しながら95で入力できるから、困らないけど(この入力方法使ったの久しぶりだ)。
squat on Ubuntu Linux
VMWareでWindowsを立ち上げ、squatを導入、ロカールを英語モードにしてみる。あれ、リソースバンドルを用意してやれば、ちゃんと動くな。ということは、どうやら文字コードとかじゃないかもしれないな。
ログがvarの下にあったので見てみると、エラーが記録されていた。
org.seasar.framework.exception.ResourceNotFoundRuntimeException: [ESSR0055]Resource(drill/prepare/Products.xls) not found
で、言われた通りdata/drill/prepareの下を見てみると。あぁなるほど。大文字と小文字が違いますな。だからWindowsでは動くわけか。というわけで、この下のファイルを以下のように大文字、小文字正しく変更してやれば、動くようになった。
BelongTo.xls Categories.xls CustomerClasses.xls Customers.xls Departments.xls Employees.xls Prefecturals.xls Products.xls Salary.xls Sales.xls
まとめると、
- classesというディレクトリを作って、squat.jarをその下に展開。
- jp/towersquest/squat/gettext/gettext_ja.propertiesをgettext.propertiesにコピー。
- 以下の内容のstartup.shを用意
export LANG=C java -cp data:classes jp.towersquest.squat.Main
- data/drill/prepareの下のファイルを以下の通りにリネーム
BelongTo.xls Categories.xls CustomerClasses.xls Customers.xls Departments.xls Employees.xls Prefecturals.xls Products.xls Salary.xls Sales.xls
で、ok。起動は./startup.sh(あ、当然chmod +x startup.shが必要)。なかなか楽しめました。もう元を取った気分(<だから違)
SQL書き方ドリル
というわけで夏休みの宿題で、ずっと前に買っておいたSQL書き方ドリルを読み始める。SQUATはJavaみたいなんでUbuntuでも動くかなと。
java -cp data:squat.jar jp.towersquest.squat.Main
例によってsetLookAndFeel()でぬるぽ。英語環境に切り替え。
export LANG=C
なにやらリソースバンドルが無いとのエラー。
Caused by: java.util.MissingResourceException: Can't find bundle for base name jp.towersquest.squat.gettext.gettext, locale en_US
Jarを展開して、jp/towersquest/squat/gettext/gettext_ja.propertiesをgettext.propertiesにもコピーしてやる。
おぉ、立ち上がった。しかし最初の問題でつまずく。いや、そんなはずは。正解の結果と、自分の入力での結果を比べると、全く同じ。あ、そうか。多分結果が別ファイルになっていて、それを読み込む時にデフォルトエンコーディングになっていて、Shift_JISが仮定されているんだろう。ということは正解ファイルをUTF-8にしてやれば行けるかも。結果ファイルはdata/drill/expectedにあった。しかしExcel...
いやでも、正解の読み込みでエンコーディングがおかしいなら、squat上の正解結果表示が文字化けしていないのは変だな。結果との比較ロジックで何か問題が起きているんだろうか。そろそろソースがないと、つらくなってきた。なかなか手強い宿題だ(<違)
Ubuntu + Javaでキー入力できなくなる件。
再現できずでクローズされてしまった。こうなるとLinux日本語環境での、デスクトップJavaは絶望的な状況だな。
P.S. その後IMをuimに変更したとろこ問題なくなった。やはりSCIMの問題のようだ。




