Saturday, May 31, 2008

Memory removal and installation - ThinkPad X30, X31, X32

今更な感じもするが、所有している ThinkPad X31 のメモリを交換する方法を説明したページを記載しておく。

Memory removal and installation - ThinkPad X30, X31, X32

Installing Konqueror On Ubuntu Linux 8.04

発音できない...。

Konqueror

KED 環境のデフォルトブラウザ?と私は認識している。いくつかのブラウザを同時に起動しなければならず、いつもどおり Opera をインストールせず、Konqueror をインストールしてみた。GNOME 環境だけれど。



で、読み方は?

conqueror に似ているけれど...。

Creating A New Email Account

Google Apps に適用している自分のドメインに、新しくメールアカウントを登録する。さて、どんなアカウントにしようかしら。用途は、転職サイトに登録するメールアドレスなり。

つまり...?

寒い...。風邪をひきそう。

Friday, May 30, 2008

Do NOT Use "regist"!!!

これ、うちの会社も同じ。

秋元@サイボウズラボ・プログラマー・ブログ: regist という英語は無い

うちの会社の人間が書いた Java のソースコードを読んでみると、ある、"regist" が...。

私は class や method や variable を作成するとき、かなり英単語を気にして、あれこれ考えてから決定する。当然、辞書も調べるし、API リファレンスの例なども参考にする。適切な文字列を与えるため、すごく考える。なぜか?、それは Java の命名規則に従うためだけでなく、後からソースコードを読む人がわかりやすいようにするためでもあるし、また、その class や method や variable に与える文字列が、本当にそれらの用途を意味するようにしたいためだ。そして、できるだけ時間をかけずに作業を済ませらせるよう、普段から英単語の用例を確認している。その、普段から実施している作業をいくつか挙げる。

・英語のニュースを読む
・英語のドキュメントを読む
・英語のアプリケーションをインストールする
・英語でドキュメントを書く
・英語で調べる
・OS の表示を英語モードに変更する

何も意識していない人間がプログラムすると、この "regist" のように間違って使用してしまう。他、何か生成するとき常に "make" を使用したり("create" や "add" が適切だったりするのに)、動詞と名詞を認識していないと思われるケースも散在している。大抵、そういう人は、ほとんど気にしていないので、正常にプログラムを動作させられるなら、それで構わないのかもしれない。

(引用ここから)
ソフトウェア技術者として、英語は避けることができない要素だし、「名前重要」が身についているなら、常に書いている英単語が正しいかどうか、辞書でチェックすべきだろう。
(引用ここまで)


私は非常に意識しているつもりだ。さて、あなたはどうだろうか?

悲しいかな、意識していない人があなたの上司である場合、あなたが努力したとしても、その上司はは、「無駄に時間をかけるな」と言うだろう...。

本日

自宅にて仕事をすることに...。9:30 から日比谷の歯科にて、歯の治療(消毒)を済ませてきた。しばらく消毒を続けるような話だった。

Thursday, May 29, 2008

org.eclipse.ui.ide.prefs

かなり以前から気になっていて対象方法を特定できていなかった、Eclipse を起動した直後に表示されるワークスペースのディレクトリのパスを指定するウィンドウの履歴を手動で修正する方法を、やっと発見した。

% vi ./eclipse/configuration/.settings/org.eclipse.ui.ide.prefs

別れ

20 年ほど、ひっそりと、でも、しっかりと私のことを支えてくれた彼と別れました。彼は元気そうに見えましたが、病魔に負けてしまいました。彼の名は...





奥歯

Wednesday, May 28, 2008

ひるめし

食べ忘れてた...

抜歯

明日、抜歯されてしまう予定です。

Connecting to the Internet with emobile

昨年 10 月 2 日に契約した emobile を、今ごろになって接続してみた。もう説明書の画面と異なっているし、なかなか接続できなかったが、MacBook で無事に接続できた。

Ordered TS1GIB9834

追加で 6 枚のメモリ TS1GIB9834 を注文した。Ordered TS1GIB9834 と同一の製品だ。価格も同一で。2 台の X31 と 1 台の T42 のメモリを最大まで増設する。

Tuesday, May 27, 2008

You Don't Read Official Documentation

うちの会社のほとんどの人間は、オフィシャルドキュメンテーションを確認しないようだ。ここで、オフィシャルドキュメンテーションが意味する内容について、いくつか理解しやすい例を挙げる。

Java:
API Specifications

Python:
Python Library Reference

PostgreSQL:
PostgreSQL 8.3.1 Documentation

Class や method や SQL の定義を確認するとき、Official な情報でなく Google で UnOfficial な情報を検索してしまう。

どのようにしたら、どのように伝えたら、オフィシャルな情報がどれだけ大切か、を理解してもらえるだろうか?

google-email-uploader

これ、前から欲しかった!って、まだ試してないけど。

google-email-uploader - Google Code

Scripting with Scheme Shell

後で読むためのメモ(忘れないように

SCSH ( Scheme Shell ) スクリプト入門

原文

ARIA AIZAWA

たまたま YouTube で発見したアーティストだが、もっと聞いてみたいと思った。路上販売でのみ CD を購入できるようだ。路上ライブのスケジュールは...?

MySpace:
ARIA ASIA

オフィシャルサイト:
ARIA AIZAWA OFFICIAL SITE

YouTube の動画:
Celtic Punk Rock ケルト パンク ロック バイオリニスト ARIA ASIA 渋谷 路上ライブ!!

Google で検索:
ARIA AIZAWA

事件

先日 CD を購入した Taylor Swift が、cute すぎる件について。


“Taylor Swift” video results

Monday, May 26, 2008

あぶ様

すっかり忘れていて、もう無理だと思っていたが、まだ購入できるようだったので、注文してしまった。

AVRIL LAVIGNE, THE BEST DAMN TOUR 2008


--
AVRIL LAVIGNE

2008-05-25 の記録

13 時ごろ起床した。

ThinkPad T41 の状態 ( OS やバージョンなど ) を確認しつつ、購入したメモリ を装着して、更に設定を続けた。とりあえず 3 台とも完了した。2 GB なメモリなら、しばらく活用できるだろう。

昔、FreeBSD 5.x を使用していたときに、removable device として使用していた 3.5 inch の USB 接続タイプの HDD を、Ubuntu Linux にて mount しようと試みたが、マウントできなかった...。ファイルシステムは、おそらく ufs2 だ。Web の情報を参考に、最低でも read only で mount できそうだったが...。そのうち疲れて諦めた。

ubuntu mount ufs

Sunday, May 25, 2008

Unlimited calls to landlines using Skype

21st April, 2008 に Skype がリリースしたサービスを契約してみた。

具体的に契約したサービスは、このページ : Unlimited calls to landlines に記載されている Unlimited World だ。

まず、注意する点を記載しておく。このプランにおいて、`Unlimited calls' と記載されているが、実際のところ、10,000 calling minutes per month らしい。まぁ、これほど電話する人は、なかなかいないだろうが。

1 か月分を無料としてくれるらしいプラン (3 か月分) を購入した。Skype Credit にて支払いしようと思ったが、残高が € 9.30 だったため、PayPal からチャージされるよう指定し、設定を完了した。なお、意味もなく支払いの通貨として € を指定している。普通、円またはドルを選択すればよい。

とりあえず、まったく海外へ発信する予定はないが、いつか海外へ出張するときの準備として、サービスを評価しておこう。ちなみに、海外へ出張する予定は、ない。

Saturday, May 24, 2008

Java Development Environment

私が Java の開発環境として構築している設定の例

........................................................................................................................
........................................................................................................................

JDK 1.5.x
Eclipse 3.3.x
Apache Tomcat 5.5.x
Tomcat Plugin
GEF
EclipseHTMLEditor
StrutsIDE
Subclipse 1.2.x

....................................................................................................
....................................................................................................

Installing JDK 1.5.x


JDK を、いつもどおりにインストールする。

http://java.sun.com/javase/downloads/index_jdk5.jsp


% /bin/sh jdk-1_5_0_15-linux-amd64.bin
% ln -s jdk1.5.0_15 java
% export JAVA_HOME=`pwd`/java
% export PATH=%{JAVA_HOME}/bin:${PATH}





Setting Up Eclipse 3.3.x


Eclipse のファイルをダウンロードして、ファイルを展開する。

http://www.eclipse.org/downloads/


% tar zxvf eclipse-java-europa-winter-linux-gtk-x86_64.tar.gz
% mv eclipse eclipse-java-3.3.2
% ln -s eclipse-java-3.3.2 eclipse


本ポストにおいて、他の説明をしやすくするため、環境変数を定義する。つまり、これは必須でない作業だ。

% export ECLIPSE_HOME=`pwd`/eclipse





Setting Up Apache Tomcat 5.5.x


Apache Tomcat の 5.5 をダウンロードして設定する。

http://tomcat.apache.org/download-55.cgi


% tar zxvf apache-tomcat-5.5.26.tar.gz
% ln -s apache-tomcat-5.5.26 tomcat
% export CATALINA_HOME=`pwd`/tomcat





Setting Up Tomcat Plugin


ファイルをダウンロードして設定する。

http://www.eclipsetotale.com/tomcatPlugin.html


% unzip tomcatPluginV321.zip
% mv com.sysdeo.eclipse.tomcat_3.2.1 ~/${ECLIPSE_HOME}/plugins/


Eclipse を起動し、

[Window] ---> [Preferences...] ---> [Tomcat]

`Tomcat version' ---> `5.5'
`Tomcat home' ---> `${CATALINA_HOME} が保持するディレクトリを absolute path で入力する'
`Context declaration mode' ---> `Server.xml'
`Configuration file' ---> `server.xml までの absolute path を指定する'



なお、上の画像の path は、本ポストの path と異なる。


`OK' ボタンをクリックし、`Peferences' を終了する。Eclipse の Toolbar に表示されている Tomcat のアイコンをクリックし、正常に Apache Tomcat が起動するか、を確認する。





Setting Up GEF

Eclipse を起動する。

[Help] ---> [Software Updates] ---> [Find and Install...]

`Install/Update' ウィンドウにおいて、`Search for new features to install' を選択し、`Next' ボタンをクリックする。

`Install' ウィンドウにおいて、`Sites to include in search:' に表示されている site のなかに存在する `Graphical Editing Framework (GEF) Update Site' のチェックボックスをチェックし、`Finish' ボタンをクリックする。

画面にしたがい、インストール作業を完了すること。





Setting Up EclipseHTMLEditor


ファイルをダウンロードして設定する。

https://sourceforge.jp/projects/amateras/files/?release_id=29511#29511


% unzip tk.eclipse.plugin.htmleditor_2.0.5.1.zip
% mv pluging/* ${ECLIPSE_HOME}/plugins/




Setting Up StrutsIDE

ファイルをダウンロードして設定する。

http://sourceforge.jp/projects/amateras/files/?release_id=29404#29404


% unzip tk.eclipse.plugin.htmleditor_2.0.5.1.zip
% mv pluging/* ${ECLIPSE_HOME}/plugins/





Setting Up Subclipse 1.2.x


Eclipse を起動する。

[Help] ---> [Software Updates] ---> [Find and Install...]


`Install/Update' ウィンドウにおいて、`Search for new features to install' を選択し、`Next' ボタンをクリックする。

`New Remote Site...' ボタンをクリックする。`Name:' ボックスに任意の名前を入力し、`URL:' ボックスに次の URL を入力して `OK' ボタンをクリックする。

http://subclipse.tigris.org/update_1.2.x

画面にしたがい、インストール作業を完了すること。





以上

Safari Books Online

うちの会社において、Java を使用して Web アプリケーションを作成する場合、無難な選択として、Apache Struts の 1.2.x を使用する。1.x 系の場合、現在 1.3.8 が最新であるし、かつ、2.x 系もリリースされている現在だが。ところで、自分もその Java アプリケーションの開発に参加している、数日前から。そこで、Struts を勉強しなおそうと「書籍でも購入しておくか」と思い、Amazon.com をさまよってみたが、新しい書籍は、2.x を対象としているようだった。古い本を購入する、という選択も存在するが、イマサラ感もあり躊躇してしまった。2.x 系を対象とした書籍を購入すると業務とミスマッチしてしまう...。古い書籍をチラ見したいだけである場合、有効な手段は存在するのか?

そこで、以前から気になってしかたなかった、Safari Books Online を利用してみようと考えた。このサービスを利用すれば、過去の本を購入せずにチラ見できる。とりあえず 10 日間は free trial な期間らしいが、契約を継続することを考慮し、安いプラン ( $22.99 per month ) を選択しておいた。これから Safari のサイトを探索してみる予定だ。

Installing Skype on 64 bit Ubuntu Linux

% sudo apt-get install ia32-libs lib32asound2
% wget -O skype-install.deb http://www.skype.com/go/getskype-linux-ubuntu
% sudo dpkg -i --force-all skype-install.deb


Today I installed Skype on 64 bit version of Ubuntu Linux 8.04 successfully. By the way, you can use Skype on 64 bit Ubuntu Linux but a integrated webcam into your machine may not work...

Dump And Restore In PostgreSQL

いつも忘れる PostgreSQL の dump と restore の方法をメモしておく。


% pg_dump dbname > outfile

% psql dbname < infile


--
PostgreSQL 8.3.1 Documentation - Chapter 24. Backup and Restore

Thursday, May 22, 2008

Ordered TS1GIB9834

ThinkPad T41 ( 2373-9FJ ) に装着するメモリ TS1GIB9834 を注文した、Transcend のオンラインストアにて。現在 + 512 MB で合計 1024 MB であるが、2048 MB にして、末永くマシンを使用する予定だ。3 台の T41 のメモリを最大まで引き上げるため、6 枚を注文した。30 % OFF であったため、合計で 34,314 円だった。

Purchased A Book

EJB 3 in Action

Wednesday, May 21, 2008

Ordered Books

Enterprise Javabeans 3.0
Hackers and Painters

MacBook : Battery not recognized

MacBook のバッテリが正常でない(充電できない)ので、修理を依頼しようと思った。どういう事象だったか、というと以下のとおり。

・電源アダプタを接続しているときのみ本体を起動できる。
・電源アダプタのランプは、常に緑色に点灯している。
・電源アダプタを接続して本体を起動している状態で電源アダプタを引き抜くと、強制的に終了される。

Apple のサポートページにおいて、この事象を説明しているページを発見した。

MacBook, MacBook Pro: Battery not recognized or "X" icon appears on menu bar

購入してから 90 日以内であれば、無償の電話サポートにより対応してくれるらしいが、超過してしまった場合、通常、店舗にマシンを持ち込んで、そこで検査してくれる。ただし、この検査、予約をしなければならない。このページから

http://www.apple.com/jp/retail/

店舗を選択し、`Genius Bar' を予約する。当日、店舗に本体を持ち込み、対応してもらう。私の場合、実質 10 分ほどで検査を終了し、新しいバッテリーに交換して終了だった。他、事務的な対応(サインなど)をして終了だ。

2008-05-20 の記録

今日も 9:30 から、日比谷の歯科にて治療を予定していた。15 分ほど寝坊してしまい、慌てて用意をして自宅を飛び出した。予約した時刻に遅刻したくなかったため。で、だ。雨が降っていると知っていたが、あそこまで風が強いと思わなかった。外に出て数秒で傘の骨が砕け、最寄り駅に到着するまで、何度か傘が反転した。ビニール傘だったから、骨が弱いんだろう。ビニール傘でない傘を取りに戻る余裕なしだったため、そのまま出発した。結果的になんとか間に合った。傘の骨が 1 本でも折れると、あんなに弱くなるなんて。つか、傘の骨を折る体験は初だった。予想どおり、濡れまくり。歯茎が腫れたままであるため本格的に治療できないらしく、5 分ほどで終了...。10 時までビルの待合室のイスに座り、少しでも雨風が弱まる状態を待っていたら、本当に雨が止んだ...。昨日、眠れなくて、ほとんど寝ておらず、眠い 1 日だった。本日は給料日であり、第 1 回目の減給...。今更ながら Apache Ant を学習している...。あのオンラインドキュメントって、かなり読みにくい。なぜ Apache Forrest を使用しないのか?久々に Apache Software Foundation のトップページを表示したら、だいぶデザインを変更したようで。

Tuesday, May 20, 2008

検討

転職を検討してみるべき、か。



会社を紹介してください(マジ

ありえない

Mac OS X って、大文字でもコマンドを実行できるようだ。

つまり

% ls



% LS

でも実行できる。



これ、かなり気持ち悪いな。

2008-05-19 の記録

ここ数日、かなりバタバタしていた。

先週の木曜日、前日(つまり水曜日)の外気の寒さに体調を崩したのか、風邪っぽかった。残業せずに帰宅しようと考えていたが、17 時を過ぎたころ事件が発生した。

うちのような小さな会社の場合、苦しい状況でサーバを運用していたりする。管理している担当者も兼務である。ケーブルはゴチャゴチャになりやすかったり、マシンにホコリがたまりっぱなしだったり、バックアップも不定期になりがちで、設定されている情報を担当者のみが把握していて、かつドキュメント化されていない、などなど。まぁ、規模を考慮するとありがちかもしれない。

今回、事件は、電源供給の部分で発生した。UPS が鳴りはじめた。たまに業務のマシンの電源を UPS から供給したりするため、それを原因だと思っていた。ただし、思い返してみると、やけに長い間、いや、対処するために十分な時間、UPS は鳴り続けていたように記憶している。

結果的に UPS が接続されているタップに電源が通電しなくなっていた。そのため、数分後、UPS が落ち、接続されているサーバが落ちた。8 台も同時に。

その後、復旧の作業を開始したが、当然、簡単に完了できず、作業者として参加した自分も、寝ずに朝を迎えてしまった。

寝ずに金曜日の昼ごろまで活動していた。さすがに早めに帰宅しようと思っていた。正直なところ、少しタイミング悪く、知り合いから連絡をもらった。せっかく東京に戻ってきているからと、会うことにした。結果的に会って正解だった。が、ほぼ終電の帰宅となってしまい、2 日ほど寝ずに活動してしまった。

ちなみに、金曜日、歯の診察を予約していたが、キャンセルせざるをえなかった。土曜日の昼ごろに起床したところ、あり得なくくらい歯茎が腫れていた...。もともと治療してもらおうと考えていた場所と違ったが、もし、金曜日の午前中に、予定どおり診察してもらっていたら、あれほど腫れなかったかもしれない。腫れは日曜日も続き、まったく外出もできなかった。

金曜日に診察してもらおうとしていた歯科は、自宅の近くであり、歩いて数分の距離だ。近くなら通いやすいだろう、という理由からだ。ただし、以前、自分が通院していた歯科に通いたいと思っていた。慣れていたし。

月曜日、少し早く自宅を出て、日比谷で電車を降り、午前中に診察してもらえるか電話してみた。幸い、15 分ほど後の 9:30 から予約でき、土日に腫れた部分と、その他を治療してもらうことにした。腫れた部分は病気?になっているらしく、もしかしたら抜歯するかもしれない、とのことだが、とりあえずクスリを飲んで治療してみる予定だ。しばらく通院することになりそう。

今日の治療を終えて、気分転換にマッタリと日比谷公園を通過していたら、急に頭上から何かが降ってきた。思わず体を曲げて避けたが、なんと鳥の糞だった...。右に 5 cm でもズレて歩いていたら直撃だった...。しかし、直撃を避けたが、スーツのジャケットとパンツに少しだけ付着してしまっていた。素早くティッシュで拭き取ったら大丈夫そうだったが...。あり得ないっす、マジで。

移動して改札を目の前にした段階で、間違えて日比谷線であることに気づき、千代田線の霞ヶ関へ移動...。歩いていたら汗をかいてしまって、最悪な状態。ただし、日比谷公園の雰囲気に癒されたのか、まったく悪い気分じゃなかった。

歯茎が腫れた原因は、体の抵抗力が低下している事実を露呈しているはずで、早く寝るべきんだんが...。

Installing Java 1.6 In Mac OS X 10.5

Java - Downloads

Friday, May 16, 2008

終わらね

疲れてきた...

まだ

故障したマシンの HDD から、新しいマシンの HDD へ転送しているデータの数量が多すぎて、転送し終わらない。

もうひとりの社員は

デスクで寝てる...


オラは作業中!

くっ

終わらねぇ...

ラーメン

食べてきた。

九州じゃんがら@原宿

かっ

帰れねぇ...。現在、事務所@原宿にて障害を復旧中なり...。

Thursday, May 15, 2008

働いてみたい会社

Recruit - アクセンスのおまけ - Trac

BitTorrent Client In Mac OS X

Mac OS X において実行できる BitTorrent クライアントを調査していた、が、結局、Transmission を使用することにした。あえて Firefox に組み込む必要はないし。軽く、シンプルで使いやすい、これ。Ubuntu Linux 8.04 と Mac OS X の両方で、共通のアプリケーションを使用できる点も大きい。最近、新しいアプリケーションの操作を習得することに、あまり興味を感じなくなってきていような。

These Days...

すべて、いや、ほとんどのことを後回しにしてしまっている。つまり、テンパっている状態だ。とりあえず気にしていることは、購入した ThinkCentre を、まだ箱からさえ取り出していないこと、だ。何のために購入したんだか。8 GB のメモリも放置している。

Wednesday, May 14, 2008

Purchased CDs

注文した CD が配送されたので、iTunes にインポートした、昨日。輸入盤の CD って、安くてイイっすね。ケースがヒビ割れしてたけど、2 枚も...。

Back to Basics
So Amazin'
The Open Door
Taylor Swift
Spirit
As I Am

2008-05-13 の記録

一応、とりあえずソレを動作させられた。Seam Framework を使用した、ある機能を。必要になりそうな機能を追加し、更にドキュメントを読み、他の社員が(私が不在でも)作業できれば理想的だ。まぁ、新入社員は無理だな、と思っているが。ThinkPad T61 を使用して、このポストを記述している。快適すぎだ、このキーボード。このスピードでタイプできない、MacBook の場合。ほとんどホームポジションから手を動かさずにタイプしていられる。ステキだ。追加でフォントをインストールしたら、かなり文字を読みやすくなった。そういえば、やっと歯の診察を予約した。結局、自宅から最も近い歯科を選択してしまった。

Tuesday, May 13, 2008

Firefox BitTorrent Client

現在、Ubuntu Linux 上で、CentOS の ISO image ファイルを BitTorrent 経由でダウンロードしている。Ubuntu Linux というか、Gnome は BitTorrent のクライアント ( Transmission ) を搭載しているため、*.torrent ファイルをダブルクリックするだけでダウンロードを開始できるようだ。ためしに MacBook において *.torrent ファイルをダブルクリックしてみたが、どのアプリケーションも対応していないようだ、デフォルトの場合。Firefox も対応していない ( extension をインストールする ) ようで、しかたなく、Opera を使用してダウンロードしている、FreeBSD を。密かに Opera を便利だと感じている Firefox 使いの私だが、Firefox が BitTorrent 経由でファイルをダウンロードできるよう、extension を調査することにした。とりあえず検索してみた。

Search Add-ons

いくつか存在するようだ。とりあえず、ひとつだけインストールして評価してみよう。


--
Transmission (BitTorrent client)

Japanese Support In Ubuntu Linux 8.04

`System' ---> `Administration' ---> `Language Support'

`Japanese' チェックして `Apply' ボタンをクリックする。

フォント(など)がインストールされる。

2008-05-12 の記録

もう寝よう...。今日、Seam Framework を使用したアプリケーションの開発において、少し前に進めた。Trac 設定していたらハマりまくり。疲れた。

Sunday, May 11, 2008

How to burn CD in Ubuntu

Ubuntu Linux において、ISO イメージのファイルを CD に焼く、最も簡単な方法:

1. ISO イメージのファイルを右クリックする。
2. `Open with "CD/DVD" Creater' を選択する。
3. "Write to Disk" ウィンドウにおいて、"Write" ボタンをクリックする。

Saturday, May 10, 2008

Setting Up ThinkPad T61

SPARCO.COM で購入した ThinkPad T61 を、箱から取り出し、セットアップした。まず、TRANSCEND のオンラインショップで購入したメモリ A2/N667-2GX2 を装着した。デフォルトのメモリを取り外し、2 GB のメモリと交換し、続いて、もう一方のスロットに 2 GB のメモリを装着した。電源を投入し、BIOS がメモリを認識しているか、を確認。大丈夫そうだった。続いて、パソコン工房で購入した HTS722010K9SA00 を装着。もともと装着されていた HDD を取り外した。結局、Windows を起動しなかった。続いて、Ubuntu Linux 8.04 (ubuntu-8.04-desktop-amd64.iso) をインストールした。特に問題なし。正常に 4 GB のメモリを認識した。設定した日本語の入力も問題なし。これから開発環境を整備する予定だ。ThinkPad T41, T42 と比較して、しっかりとキーボードを打ち込めるようだ。非常に安定していると感じる。かつ、無駄な "かな表示" のない英語キーボードであるため、かなり快適。あぁ、国内の Lenovo が、英語キーボードを選択できるようにしてくれたら...。ひとつ残念だった点を述べる。私が SPARCO.COM から ThinkPad を購入しようと決意した理由は、以下だった。

1. 右側へ偏っていない液晶を選択できると
2. 英語キーボードを選択できること

これらの理由のうち、やはり 1 を最重要だと考えていた。現行の ThinkPad のうち、T61 と R61 の液晶は、すべてワイド液晶であり、かつ右側へ偏っている。実機を確認すれば、あの不細工さを理解できるだろう。あのように偏った液晶のままでノートパソコンを販売しているメーカーは、他に存在しないはずだ。理解できない。あの液晶を非常に気にしていたため、ワイド液晶でなく、これまで販売されてきた 4:3 な SXGA+ 液晶のモデルを購入したかった。ただ、国内の Lenovo は Non-Widescreen な ThinkPad を販売しておらず、海外のモデルを選択せざるをえなかった。

ところで、メモリを交換しようとして気づいたが.....、この SXGA+ な T61 の液晶も右側へ偏ってしまっている!つまり、私が SPARCO.COM で ThinkPad を購入しようとした意味が...。

ただし、このキーボードに満足しているし、4 GB のメモリを活用できるし、実際、それほど偏り液晶も気にならないな、と自分を納得させている状態だったりする。

Python Code Reading

本日、Python Code Reading に参加した。5 番目くらい?で到着したので、自由に席を選択できたが、最終的に、出席者が多く、一部の人たちが、イスを借りてきて部屋の後ろで参加していたみたい。プロジェクタのせいかのか、非常に文字を認識しにくい環境だった。もっと前に座ればよかった。昨夜、奇跡的に 2 AM ごろ寝たが、睡眠不足を解消できなかったらしい。加えて、前日、クーラーの風に直撃されてしまったせいか、風邪のような症状だったため、クスリを飲んだら眠くて眠くて、集中できなかった。残念。発表者が発表する内容に関心したが、要所で柴田さんがツッコミしたりして、Python という言語を、これほどまで理解している、そして理解しようとしている人が存在するんだ、と気づいた。久々に、心に風が吹き込まれたように感じた。この勉強会に参加するような人と仕事をしたいな...。ところで、半数ほどの人がノートパソコンを持ってきていた。ほとんど Windows だった。一部 MacBook な人を発見。iBook に Ubuntu をインストールして使用している人も発見した。巨大な ThinkPad を起動して、かつ Ubuntu Linux をインストールして使用していた人は...、私ですが、何か?

2008-05-09 の記録

今日もドキュメントを作成した。だいたい終わりか?少し早めに終業して、新橋へ移動した。現在、ThinkPad T41 に、Ubuntu Linux 8.04 をインストールしている。jp.archive.ubuntu.com からアップデートのパッケージをダウンロードしているが、非常に遅い、遅すぎる。

悩ましい

悩ましい。何を悩ましいと感じているか?私は、ThinkPad T41 (2373-9FJ) を 3 台も所有しているが、これらを、今後どのような用途に活用するか?各 T41 のメモリは + 512 MB されていて、合計で 1024 MB な状態であるが、今となっては、それほど多くもない。最大 2048 MB まで増設できる。仮に最大まで搭載すれば、何かの用途に活用できるかもしれない。とりあえず、transcend のオンラインショップにおいて対象のメモリを検索したところ、TS1GIB9834 を発見した。現在の価格は、8,170 円だ。高くない。ただし、2048 MB まで増設するために 2 枚を購入しなければならないため、16,000 円の出費になる。このメモリを、所有している T41 すべてに適用すると、約 45,000 円の出費となる。はたして、この古いマシンたちに、この投資をする価値はあるだろうか?このままにしておいて、新しいマシンを購入すべきだろうか?悩む。

Friday, May 09, 2008

2008-05-08 の記録

自社で社内エンジニア用のドキュメントを作成した。体調を崩してしまったので、2:00 前に寝た。そろそろ限界かも。

Thursday, May 08, 2008

Configuration Of Eclipse, JBoss AS, JBoss Seam

Tutorial For Building Java EE Applications Using JBoss And Eclipse


======================================================================


Eclipse, JBoss, JBoss Seam などを採用した Java EE アプリケーションを開発するため、環境を Mac OS X 上にセットアップする。基本的に、ホームディレクトリにおいて作業を実施する。


まず、環境変数を設定する。後々、簡単に説明するため `$SEAM_HOME' を宣言しておくが、必須でない。なお、続く `$JAVA_HOME' および `$JBOSS_HOME' および `$ANT_HOME' を宣言すること。これらは必須である。

$SEAM_HOME="/Users/satoshiabe/jboss-seam-2.0.1.GA"

$JAVA_HOME="/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Home"
$JBOSS_HOME="/Users/satoshiabe/jboss-4.2.2.GA"
$ANT_HOME="/Users/satoshiabe/apache-ant-1.6.5-bin"


JBoss Application Server (JBoss AS) および JBoss Seam のバージョンは、現時点での安定板 (`Stable' OR `Production') である。JDK 1.6 を使用しない理由は、JBoss Seam が 1.6 でテストされていないためだ。少し古い Apache Ant を使用する理由もリンクしておく。

これらのソフトウェアをダウンロードするサイトを記載しておく。

JBoss Application Server
JBoss Searm (Seam Framework)
Apache Ant



Apache Ant:

Apache Ant をインストールし、環境変数を設定する。

$ tar xzvf apache-ant-1.6.5-bin.tar.gz
$ mv apache-ant-1.6.5-bin ~
$ export ANT_HOME="/Users/satoshiabe/apache-ant-1.6.5-bin"
$ export PATH=$ANT_HOME/bin:$PATH





JBoss AS:

JBoss AS をインストールし、環境変数を設定する。また簡単に動作を確認する。

$ jboss-4.2.2.GA-src.tar.gz
$ jboss-4.2.2.GA-src/build
$ ant
$ mv ./output/jboss-4.2.2.GA ~
$ export JBOSS_HOME="/Users/satoshiabe/jboss-4.2.2.GA"
$ export PATH=$JBOSS_HOME/bin:$PATH



Chapter 2. Getting started with Seam, using seam-gen に、このように記載されている。

((引用ここから))
JBoss has sophisticated support for hot re-deployment of WARs and EARs. Unfortunately, due to bugs in the JVM, repeated redeployment of an EAR—which is common during development—eventually causes the JVM to run out of perm gen space. For this reason, we recommend running JBoss in a JVM with a large perm gen space at development time. If you're running JBoss from JBoss IDE, you can configure this in the server launch configuration, under "VM arguments".
((引用ここまで))

`OutOfMemoryException' の発生を回避する方法のひとつとして、次のファイルを編集する。`JAVA_OPTS' を宣言する行を変更する。

$ vi $JBOSS_HOME/bin/run.conf
((変更した後の `JAVA_OPTS' ここから))
JAVA_OPTS="-Xms512m -Xmx1024m -XX:PermSize=256m -XX:MaxPermSize=512 -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000
((変更した後の `JAVA_OPTS' ここまで))




`run.sh' は、起動スクリプトだ。実行して、

$ /bin/sh $JBOSS_HOME/bin/run.sh


この URL を Web ブラウザで表示し、画面が表示されることを確認する。8080 port を使用して LISTEN しているか、を確認したいなら、`netstat' コマンドを実行すれば確認できる。

http://localhost:8080/






JBoss Seam:

JBoss Seam をインストールし、環境変数を設定する。

$ tar jboss-seam-2.0.1.GA.tar.gz
$ mv jboss-seam-2.0.1.GA ~
$ export SEAM_HOME="/Users/satoshiabe/jboss-2.0.1.GA"


`build.properties' ファイルを編集する。JBoss AS への PATH を追記する。

$ vi $SEAM_HOME/build.properties

((ここから追記する))
jboss.home=/Users/satoshiabe/jboss-4.2.2.GA
((ここまで追記する))



JBoss Seam のアプリケーションが動作するかを確認してみる。`$SEAM_HOME/examples' ディレクトリに、複数のアプリケーションが保存されている。動作させるアプリケーションのディレクトリに `cd' し、`ant' コマンドを実行する。

$ cd $SEAM_HOME/examples/registration
$ ant


この URL を Web ブラウザで表示し、画面が表示されることを確認する。

http://localhost:8080/seam-registration/





ここまで問題なければ、JBoss AS と JBoss Seam の動作を確認できていることを意味する。


JBoss AS のプロセスを停止しておく。

$ kill -TERM <JBOSS_PID>



コマンドラインにおいて `export' コマンドを実行し有効にした環境変数は、current shell および、その sub shell のみ有効だ。ログアウトすると無効になってしまう。ログインするたびに環境変数を定義したいだろう。Mac OS X 10.5 において、一般ユーザの default shell は、bash のようだ。つまり、一般的に、以下のどちらかのファイル

$HOME/.bashrc
$HOME/.bash_profile

に環境変数を設定すればよい。私の環境において、`$HOME' ディレクトリに `.bashrc' のみ存在した。そのため、このファイルに設定を記述しておく。

$ vi $HOME/.bashrc

((ここから追記する))
export ANT_HOME="/Users/satoshiabe/apache-ant-1.6.5-bin"
export PATH=$ANT_HOME/bin:$PATH

export JBOSS_HOME="/Users/satoshiabe/jboss-4.2.2.GA"
export PATH=$JBOSS_HOME/bin:$PATH

export SEAM_HOME="/Users/satoshiabe/jboss-2.0.1.GA"
((ここまで追記する))


ただし、どうやらこのファイルは、ログインするときに実行されない (TODO) ようだ。理由の調査を後回しにし、とりあえず、ログインするたびに以下のように実行し、環境変数を有効にしておく。

$ source $HOME/.bashrc





続いて、JBoss Seam に付属するコマンドを実行し、プロジェクトを作成する。プロジェクトを作成したら、Eclipse にインポートする。

なお、今回、HSQLDB でなく、リモートホストの PostgreSQL を使用する。実際、VMware Fusion 上にインストールした Ubuntu Linux にインストールされた PostgreSQL である。Java プログラムから PostgreSQL に接続するため、JDBC driver を必要とする。PostgreSQL の JDBC driver は、PostgreSQL JDBC Driver - Download で配布されている。JDK 1.5 を使用しているため、`JDBC 3' から選択すればよい。私は PostgreSQL 8.2.x を使用しているため、8.2-508 JDBC 3 をダウンロードした。このダウンロードした JDBC driver を、`$SEAM_HOME/seam-gen/lib' に保存しておくこと。



プロジェクトを初期化する。設定する情報をまとめておく。尚、リモートホストにおいて稼働する PostgreSQL を指定するため、`<IP_ADDRESS>' 部分に任意の IP Address または hostname を指定すること。`5432' port はデフォルトであるため、指定しなくても構わない。


ワークスペース : /Users/satoshiabe/Documents/workspace
JBoss ディレクトリ : /Users/satoshiabe/jboss-4.2.2.GA
プロジェクト名 : pj
session bean 用のパッケージ名 : com.example.pj
entity bean 用のパッケージ名 : com.example.pj
test case 用のパッケージ名 : com.example.pj.test
データベースの種類 : postgres
JDBC driver : lib/postgresql-8.2-508.jdbc3.jar
JDBC driver class : org.postgresql.Driver
JDBC URL : jdbc:postgresql://<IP_ADDRESS>:5432/pj
データベース名 ; pj
データベースユーザ : pj
データベースユーザパスワード : pj




まず、データベースを設定しておく。

データベースユーザを作成する。

$ su -
# su - postgres
$ createuser pj
Shall the new role be a superuser? (y/n) y
CREATE ROLE
$



データベースを作成する。

$ createdb pj -O pj
$ psql
postgres=# ALTER USER pj WITH PASSWORD 'pj';
postgres=# \q
$ exit
#



リモートホストからの接続を許可する。

まず、listening port を設定する。デフォルトで無効に設定されているため、設定を有効に指定する。次の例は、ワイルドカードを指定している。

# vi /etc/postgresql/8.2/main/postgresql.conf

この行を

#listen_addresses = 'localhost'


このように変更する。

listen_addresses = '*'




PostgreSQL のデータベースにコネクトするマシンが、192.168.100.0/24 のネットワークに存在し、かつ IPv4 のみを使用していると過程する。`pg_hba.conf' ファイルを編集する。
((この行を追記する:ここから))
host    all             all     192.168.100.0/24        md5
((この行を追記する:ここまで))



編集したファイルの設定を有効にするため、PostgreSQL のプロセスをリスタートする。

# /etc/init.d/postgresql-8.2 restart



動作を確認する。


ubuntu@ psql -h <IP_ADDRESS> -d pj -U pj -W





JBoss Seam の作業に戻る。セットアップコマンドを実行する。値を入力せず、[ENTER] キーを押下すると、デフォルトの値が選択される。黄色フォントの部分が、指定した値である。


$ cd $SEAM_HOME
$ /bin/sh ./seam setup
Buildfile: build.xml

init:

setup:
     [echo] Welcome to seam-gen :-)
    [input] Enter your Java project workspace (the directory that contains your Seam projects) [C:/Projects] [C:/Projects]
/Users/satoshiabe/Documents/workspace
    [input] Enter your JBoss home directory [C:/Program Files/jboss-4.2.2.GA] [C:/Program Files/jboss-4.2.2.GA]
/Users/satoshiabe/jboss-4.2.2.GA
    [input] Enter the project name [myproject] [myproject]
pj
     [echo] Accepted project name as: pj
    [input] Do you want to use ICEFaces instead of RichFaces [n] (y, [n], )
[ENTER]
    [input] skipping input as property icefaces.home.new has already been set.
    [input] Select a RichFaces skin [blueSky] ([blueSky], classic, ruby, wine, deepMarine, emeraldTown, sakura, DEFAULT)
[ENTER]
    [input] Is this project deployed as an EAR (with EJB components) or a WAR (with no EJB support) [ear] ([ear], war, )
[ENTER]
    [input] Enter the Java package name for your session beans [com.mydomain.pj] [com.mydomain.pj]
com.example.pj
    [input] Enter the Java package name for your entity beans [com.example.pj] [com.example.pj]
com.example.pj
    [input] Enter the Java package name for your test cases [com.example.pj.test] [com.example.pj.test]
com.example.pj.test
    [input] What kind of database are you using? [hsql] ([hsql], mysql, oracle, postgres, mssql, db2, sybase, enterprisedb, h2)
postgres
    [input] Enter the Hibernate dialect for your database [org.hibernate.dialect.PostgreSQLDialect] [org.hibernate.dialect.PostgreSQLDialect]
[ENTER]
    [input] Enter the filesystem path to the JDBC driver jar [lib/hsqldb.jar] [lib/hsqldb.jar]
lib/postgresql-8.2-508.jdbc3.jar
    [input] Enter JDBC driver class for your database [org.postgresql.Driver] [org.postgresql.Driver]
org.postgresql.Driver
    [input] Enter the JDBC URL for your database [jdbc:postgresql:template1] [jdbc:postgresql:template1]
jdbc:postgresql://<IP_ADDRESS>:5432/pj
    [input] Enter database username [sa] [sa]
pj
    [input] Enter database password [] []
pj
    [input] Enter the database schema name (it is OK to leave this blank) [] []
[ENTER]
    [input] Enter the database catalog name (it is OK to leave this blank) [] []
[ENTER]
    [input] Are you working with tables that already exist in the database? [n] (y, [n], )
n
    [input] Do you want to drop and recreate the database tables and data in import.sql each time you deploy? [n] (y, [n], )
y
[propertyfile] Creating new property file: /Users/satoshiabe/jboss-seam-2.0.1.GA/seam-gen/build.properties
    [echo] Installing JDBC driver jar to JBoss server
    [copy] Copying 1 file to /Users/satoshiabe/jboss-4.2.2.GA/server/default/lib
    [echo] Type 'seam create-project' to create the new project

BUILD SUCCESSFUL
Total time: 1 minutes 53 seconds
$



`seam-gen/build.properties' が生成される。また、`$JBOSS_HOME/server/default/lib' に JDBC driver のファイルだけ? (TODO) がコピーされる。





プロジェクトを作成する。


$ /bin/sh ./seam create-project
Buildfile: build.xml

init:

init-properties:
    [echo] /Users/satoshiabe/jboss-4.2.2.GA

validate-workspace:

validate-project:

icefaces-staging-copy:

initcopy:

initpoms:
    [echo] Setting up dependencies
    [mkdir] Created dir: /Users/satoshiabe/jboss-4.2.2.GA/classes/poms
    [copy] Copying 1 file to /Users/satoshiabe/jboss-4.2.2.GA/classes/poms
[artifact:install] [INFO] Installing /Users/satoshiabe/jboss-4.2.2.GA/classes/poms/root.pom to /Users/satoshiabe/.m2/repository/org/jboss/seam/root/2.0.1.GA/root-2.0.1.GA.pom
    [copy] Copying 1 file to /Users/satoshiabe/jboss-4.2.2.GA/classes/poms
[artifact:install] [INFO] Installing /Users/satoshiabe/jboss-4.2.2.GA/classes/poms/parent.pom to /Users/satoshiabe/.m2/repository/org/jboss/seam/parent/2.0.1.GA/parent-2.0.1.GA.pom
    [copy] Copying 1 file to /Users/satoshiabe/jboss-4.2.2.GA/classes/poms
    [copy] Copying 1 file to /Users/satoshiabe/jboss-4.2.2.GA/classes/poms
    [copy] Copying 1 file to /Users/satoshiabe/jboss-4.2.2.GA/classes/poms
    [copy] Copying 1 file to /Users/satoshiabe/jboss-4.2.2.GA/classes/poms
    [copy] Copying 1 file to /Users/satoshiabe/jboss-4.2.2.GA/classes/poms
    [copy] Copying 1 file to /Users/satoshiabe/jboss-4.2.2.GA/classes/poms
    [copy] Copying 1 file to /Users/satoshiabe/jboss-4.2.2.GA/classes/poms
    [copy] Copying 1 file to /Users/satoshiabe/jboss-4.2.2.GA/classes/poms
    [copy] Copying 1 file to /Users/satoshiabe/jboss-4.2.2.GA/classes/poms
    [copy] Copying 1 file to /Users/satoshiabe/jboss-4.2.2.GA/classes/poms

copyseam:

copyseamdependencies:

copyjbossembedded:

copy-icefaces-home:

copy-icefaces-maven:

copy-lib:
    [echo] Copying Seam and depdencies to the /Users/satoshiabe/Documents/workspace/pj/lib directory...
    [copy] Copying 97 files to /Users/satoshiabe/Documents/workspace/pj/lib
    [copy] Copied 4 empty directories to 1 empty directory under /Users/satoshiabe/Documents/workspace/pj/lib
    [echo] Copying JBoss Embedded configuration to the /Users/satoshiabe/Documents/workspace/pj/bootstrap directory...
    [copy] Copying 35 files to /Users/satoshiabe/Documents/workspace/pj/bootstrap
    [copy] Copied 15 empty directories to 3 empty directories under /Users/satoshiabe/Documents/workspace/pj/bootstrap

file-copy-war:

file-copy-ear:
    [echo] Copying resources needed for EAR deployment to the /Users/satoshiabe/Documents/workspace/pj/resources directory...
    [copy] Copying 1 file to /Users/satoshiabe/Documents/workspace/pj/resources/WEB-INF
    [copy] Copying 1 file to /Users/satoshiabe/Documents/workspace/pj
    [copy] Copying 6 files to /Users/satoshiabe/Documents/workspace/pj/resources

setup-filters:

file-copy:
    [copy] Copying 11 files to /Users/satoshiabe/Documents/workspace/pj/resources
    [copy] Copying 1 file to /Users/satoshiabe/Documents/workspace/pj
    [copy] Copying 1 file to /Users/satoshiabe/Documents/workspace/pj
    [copy] Copying 1 file to /Users/satoshiabe/Documents/workspace/pj
    [copy] Copying 1 file to /Users/satoshiabe/Documents/workspace/pj/resources
    [copy] Copying 1 file to /Users/satoshiabe/Documents/workspace/pj/.settings
    [copy] Copying 1 file to /Users/satoshiabe/Documents/workspace/pj/resources
    [copy] Copying 1 file to /Users/satoshiabe/Documents/workspace/pj/resources
    [copy] Copying 1 file to /Users/satoshiabe/Documents/workspace/pj/resources
    [copy] Copying 1 file to /Users/satoshiabe/Documents/workspace/pj/resources
    [copy] Copying 1 file to /Users/satoshiabe/Documents/workspace/pj/resources
    [copy] Copying 10 files to /Users/satoshiabe/Documents/workspace/pj/view
    [copy] Copying 2 files to /Users/satoshiabe/Documents/workspace/pj/view
    [copy] Copying 1 file to /Users/satoshiabe/Documents/workspace/pj/src/action/com/example/pj
    [copy] Copying 6 files to /Users/satoshiabe/Documents/workspace/pj
    [mkdir] Created dir: /Users/satoshiabe/Documents/workspace/pj/src/model
    [mkdir] Created dir: /Users/satoshiabe/Documents/workspace/pj/src/test
    [copy] Copying 1 file to /Users/satoshiabe/Documents/workspace/pj/src/test
    [mkdir] Created dir: /Users/satoshiabe/Documents/workspace/pj/nbproject
    [copy] Copying 3 files to /Users/satoshiabe/Documents/workspace/pj/nbproject

create-project:
    [echo] A new Seam project named 'pj' was created in the /Users/satoshiabe/Documents/workspace directory
    [echo] Type 'seam explode' and go to http://localhost:8080/pj
    [echo] Eclipse Users: Add the project into Eclipse using File > New > Project and select General > Project (not Java Project)
    [echo] NetBeans Users: Open the project in NetBeans

BUILD SUCCESSFUL
Total time: 4 seconds
$




JBoss AS のプロセスを起動し、以下の URL を表示する。画面が表示されるはずだ。

$ /bin/sh ./seam explode
$ $JBOSS_HOME/bin/run.sh

http://localhost:8080/pj/





Importing the project into Eclipse:


以下の手順に従い、Eclipse にプロジェクトをインポートする。

[File] ---> [New] ---> [Project and select General] ---> [Project]


`Create a new project resource' に、`seam setup' コマンドを実行した後に指定した ""workspace + project name"" を、つまり `/Users/satoshiabe/Documents/workspace/pj' を指定する。これまで同様に作業した場合、Figure 2. のように、プロジェクト名 `pj' のみを入力すればよい。`Finish' ボタンをクリックする。



Figure 1.



Figure 2.


インポートした後、自動的にビルドが実行される。`BUILD SUCCESSFUL' と表示されることを確認すること。

((ここから))
Buildfile: /Users/satoshiabe/Documents/workspace/pj/build.xml

clean:

unexplode:

init:
    [mkdir] Created dir: /Users/satoshiabe/Documents/workspace/pj/exploded-archives/pj.jar
    [mkdir] Created dir: /Users/satoshiabe/Documents/workspace/pj/exploded-archives/pj.ear
    [mkdir] Created dir: /Users/satoshiabe/Documents/workspace/pj/exploded-archives/pj.war
    [mkdir] Created dir: /Users/satoshiabe/Documents/workspace/pj/dist

compile:

copyclasses:
    [copy] Copying 1 file to /Users/satoshiabe/Documents/workspace/pj/exploded-archives/pj.jar

jar:
    [copy] Copying 2 files to /Users/satoshiabe/Documents/workspace/pj/exploded-archives/pj.jar
    [copy] Copying 1 file to /Users/satoshiabe/Documents/workspace/pj/exploded-archives/pj.jar/META-INF
    [copy] Copying 1 file to /Users/satoshiabe/Documents/workspace/pj/exploded-archives/pj.jar/META-INF
    [copy] Copying 1 file to /Users/satoshiabe/Documents/workspace/pj/exploded-archives/pj.jar

war:
    [copy] Copying 12 files to /Users/satoshiabe/Documents/workspace/pj/exploded-archives/pj.war
    [copy] Copying 4 files to /Users/satoshiabe/Documents/workspace/pj/exploded-archives/pj.war/WEB-INF
    [copy] Copying 11 files to /Users/satoshiabe/Documents/workspace/pj/exploded-archives/pj.war/WEB-INF/lib
    [copy] Copying 5 files to /Users/satoshiabe/Documents/workspace/pj/exploded-archives/pj.war/WEB-INF/classes

ear:
    [copy] Copying 10 files to /Users/satoshiabe/Documents/workspace/pj/exploded-archives/pj.ear
    [copy] Copying 2 files to /Users/satoshiabe/Documents/workspace/pj/exploded-archives/pj.ear/META-INF

datasource:
    [copy] Copying 1 file to /Users/satoshiabe/jboss-4.2.2.GA/server/default/deploy

explode:
    [mkdir] Created dir: /Users/satoshiabe/jboss-4.2.2.GA/server/default/deploy/pj.ear/pj.jar
    [mkdir] Created dir: /Users/satoshiabe/jboss-4.2.2.GA/server/default/deploy/pj.ear/pj.war
    [copy] Copying 6 files to /Users/satoshiabe/jboss-4.2.2.GA/server/default/deploy/pj.ear/pj.jar
    [copy] Copying 32 files to /Users/satoshiabe/jboss-4.2.2.GA/server/default/deploy/pj.ear/pj.war
    [copy] Copying 12 files to /Users/satoshiabe/jboss-4.2.2.GA/server/default/deploy/pj.ear

restart:

compiletest:

copytestclasses:
    [mkdir] Created dir: /Users/satoshiabe/Documents/workspace/pj/test-build
    [copy] Copying 1 file to /Users/satoshiabe/Documents/workspace/pj/test-build

buildtest:
    [copy] Copying 16 files to /Users/satoshiabe/Documents/workspace/pj/test-build
    [copy] Copying 1 file to /Users/satoshiabe/Documents/workspace/pj/test-build/META-INF
    [copy] Copying 1 file to /Users/satoshiabe/Documents/workspace/pj/test-build
BUILD SUCCESSFUL
Total time: 1 second
((ここまで))





Eclipse の `Software Updates' を実行し、以下のソフトウェアをインストールしておく。

TestNG
http://beust.com/eclipse

JBoss Tools
http://download.jboss.org/jbosstools/updates/stable

Subclipse
http://subclipse.tigris.org/update_1.2.x





おおよそ、以上の作業で終了だ。もし記述を忘れていたら、気づきしだい追記する。

2008-05-07 の記録

出勤する前に、宅配の業者が来襲した。SPARCO.COM からの荷物だった。かなり段ボールが汚れている。とりあえず無事に届けられてよかった。早く段ボールから出したい。そして、開発環境を MacBook + ThinkPad で構成させる。午前中、先週まで仕事をしていた場所(表参道)に、忘れ物(さいふ)を取りに立ち寄った。ついでに、OpenSSH の Public key Authentication を実現するための手順を、新入社員にレクチャしてみた。MacBook を使用している新入社員は、そこそこ早く成功したが、Windows を使用している新入社員は...、成功できなかった。失敗したまま。Windows を使用している人は自分でやってください、と言いたい、マジで。とりあえず放置だ。Seam Framework を使用して、フレームワーク?づくりを開始した。いろいろなステップでつまずきまくり。Ubuntu Linux で開発していると、Eclipse が勝手に終了しまくるから困りまくり。メモリ 2 GB だと厳しいな。食べカスが放置されたままのデスクって、信じられませんが、目の前の現実です。手も洗っていないのに自分のパソコンを操作されてしまう、これも現実です。油つきまくり。マジ鳥肌。次の現場の調整。久々に明日からスーツで出勤する予定だが、あの事務所だと速攻で汚れてしまいそう。悲しい。22 時まで残業して、帰宅して後、先ほどまで続きの作業。Subversion でソースファイルを共有しているので完璧、ほぼ。だるい。最近、頻繁に鼻水が出るので困っている。

I Have Finally Got It!

やっと配送された、SPARCO.COM に注文した ThinkPad T61 が。ほとんど忘れかけていた。購入しておいたメモリは、どこ?結局、受け取りのときに 3,000 円を支払った。思っていたより安くて助かった。

Tuesday, May 06, 2008

Upgraded VMware Fusion

Upgraded VMware Fusion from 1.1.1 to 1.1.2 (87978).

2008-05-05 の記録

会社で仕事...。久々に原宿の事務所で。やっぱり、ここの環境は自分にあわない、と思った。落ち着けない。というような、マイナスなイメージを感じていること、を理解してもらえていないことも、辛かったりする。ただし、火曜日から原宿の事務所で仕事をする予定なんだなぁ。できるだけ自宅で仕事をしよう。。。

Tutorial For Building Java EE Applications Using JBoss And Eclipse

これは、私が 4 月からたずさわっている JBoss 関連の情報をまとまるための post だ。順次、内容を追加する。ただし、しばらくの間、各ページの内容を頻繁に更新する予定だ。


ちなみに、主な環境は以下のとおり。ひとつのマシン (MacBook) を使用し、VMware Fusion に Ubuntu Linux をインストールして使用する。Ubuntu Linux を使用する理由は、PostgreSQL を簡単に使用したい、それだけだ。


開発マシン:

MacBook (Mac OS X 10.5)
Ubuntu Linux (7.10)


ソフトウェア:

VMware Fusion (1.1.2)
PostgreSQL (8.2)
JBoss Application Server (4.2.2 GA)
JBoss Seam (2.0.1 GA)
Apache Ant (1.6.5)
Eclipse (3.3.2)
JBoss Tools (2.0.1)
TestNG


アーティクル:

1. Configuration Of Eclipse, JBoss AS, JBoss Seam
2. ログインページを作成してみる
3. 続き

Monday, May 05, 2008

Communicate with...

たまに Skype の chat を使用して、海外の人が話かけてくる。たいてい無視するが、たまに chat してみたりもする。英語の勉強にもなるしね。今夜、話かけてきた人は、 Puerto Rico に住んでいるようだった。ちなみに話題は、"日本において増加する gay について" だった...。疲れた。。。

Java SE 6 is available on Mac OS X 10.5

Java for Mac OS X 10.5 Update 1 adds support for Java SE 6

Sunday, May 04, 2008

2008-05-03 の記録

上野でお好み焼きを食べた。会社の人と食べると気を使うから疲れる。

Saturday, May 03, 2008

さいふ

会社に忘れてきてしまったようだ。連休中、事務所は完全に閉鎖されてしまっているので、どうしようもないな。

Friday, May 02, 2008

Lenovo has some funny-ha-ha times at MacBook Air's expense

これ、日本だったら絶対に放映されないだろうな。

Lenovo has some funny-ha-ha times at MacBook Air's expense - Engadget

Skype for your mobile

Skype が、携帯電話にインストールできるクライアントをリリースするようだ。

Skype、携帯電話向けのクライアントソフトのベータ版をリリース | 携帯 | マイコミジャーナル


対象のリストを確認してみると...、

Skype for your mobile

私が所有している Nokia E61 もリストさている。

どこかで聞いたセリフ

いつか自分が「すごいプログラマ」と呼ばれる日が来るなら、今夜の退屈な debug だって、その日につながってる、ってことさ。

2008-05-01 の記録

久々に出勤したような。上司が新入社員を参加させてミーティングを開催したが、その場で実施された筆記テストに自分も参加するはめになった。21 時ごろまで仕事をして終了。自分が判断する限り新入社員のモチベーションは低いが、なんとか上げてやろうと思い、ありがたい?話をしてみたが、まったく効果ないようで。もっと危機感をもってほしい...。時間を無駄にしてしまった感じだ。帰りの電車に乗っているとき、いつも間にか眠ってしまったらしく、気づいたら終点の駅だった。助かった、綾瀬までの電車で...。相変わらず、Seam を使用したアプリケーションを意図どおりに動作させられないので、コンポーネント単位で動作を確認してみようと考えた。ドキュメントを読みながら。

Thursday, May 01, 2008

ねこ?

ちょっと、気になっている。ちょっとだけ...。


しろーさん くろーさん
両手で抱えて操作する直径17センチ超の巨大ネコ顔マウス


いや、でかすぎだろ、それ。

それなりに価格も高い...