« 2008年09月 | メイン | 2009年07月 »

2009年05月 アーカイブ

2009年05月01日

RedHat の pc のインストール

RedHat のインストール。プリインストールだから、特に何かしなくても動くはずと思ったら甘かった。とりあえず動いたが、まずネットワークの設定でひっかかった。DHCP が使えない環境なので、手動で設定してやらないといけない。これを設定した後で、RHN に接続しにいくはずだったが、どこにも行く気配がない。謎。

routerの設定とか見直して外に出て行けるようになったが、RHN の activation をしていない。activation をしたいのだが、これが意外と難しい。システムの update をしようとしたのだが、「アカウントは正しいが別のシステムで使っている」のようなメッセージが。謎。

顛末は次回に続く。

2009年05月02日

RedHat の pc のインストール (2)

Red Hat の話の続き。結論から言って、分からない。アカウントがあるので問い合わせたらいい所だが、もう一度 update のツール(GUIの方)を起動したら、なぜかうまく接続できる。ハードウェアの情報を送ってもいいか、というような画面が出ているので、もちろんokとして、activate は無事終わったような感じである。

ただ、メッセージには、update するものはありません、というように出ている。本当なのだろうか? プリインストールしたものを購入しているのだから、update までしておいてくれてもよさそうなものだが、activation の前にそういうことができるのか?

ということで、何となく root で yum update してみたら、

Install 11 Package(s)
Update 400 Package(s)

何か大量に釣れるような。ともあれこれで最新版になったような気がする。

2009年05月03日

JSF に戻す値 outcome を変えたい処理を追加する場合

someBean に action というメソッドがあるとする。このメソッドは、処理した後に OK という文字列を返す。これは JSF で状態遷移に使う outcome になる。

ここで、ある処理を追加することになった。処理の内容は殆ど action と同じなので、それを流用したいのだが、返す outcome は CONFIRM にする必要がある。そこで、someBean.action を呼び出して、戻り値を無視し、return "CONFIRM" とするようなメソッドを someBean に新たに作った。

これで目的の処理は達成しているのだが、action を呼び出したときの戻り値を無視しているという事実がどうしても気になる。こういう場合は、action の中から処理だけを取り出して別メソッドにして、action からはそれを呼び出した後に OK を返す、新しく追加するメソッドは同じように別メソッドを呼び出して CONFIRM を返す、そのように作るべきではないか?

2009年05月04日

NHK の IT 番組でやっていたメールを盗み見る話

送ったメールの内容を他のpcから盗み見るという設定で、簡単にやっていたようだが、見た感じは社内のLANでパケットモニターしているような方法のように見えた。これが簡単なようで意外と難しい。

LANのデータは二点間をパケットが流れるイメージだが、この経路以外のpcから盗み見ようとしても、最近はハブは殆どスイッチングハブなので、まず他のpcからは見えない。見るためには、スイッチングハブを特殊なものにしてモニターできるようにするか、ゲートウェイやルーターの所にトラップをかけて一網打尽にするか、そういった工夫をしなければならない。これも下手をすると大量のログが残って盗み見る側が破綻する。

以前、どうも外に出て行っているパケットが不審なので、社内から社外に出るパケットをゲートウェイになっているpcの所でトラップしたことがあったが、その時はモニター機能の付いたスイッチングハブをわざわざ購入して入れ替えて対応した。

2009年05月05日

Java: Arrays.asList メソッド

車輪を再発明しないというのはプログラミングの世界では常識だが、そのためには既に発明されているものを全て知ってしなければならない。これが意外と難しいことがある。

それはさておき、Java で List を初期化したい場合に、既に Collection があればそれを使って ArrayList のコンストラクタを呼び出すことができる。ではその Collection はどうやって初期化する? JIRO の場合は Spring Framework を使っているので、ArrayList を初期化するのは簡単なのだが、Spring を使わずに初期化する必要がある場合は、Arrays.asList を使う手がある。

Java の API リファレンスには、次のような例が出ている。

List stooges = Arrays.asList("Larry", "Moe", "Curly");

Arrays クラスというのは他にもいろいろな便利なメソッドが用意されているので、知らないと損をしてしまう。

2009年05月30日

JIRO に Excel で作った CSV のデータを取り込むときのコツ

JIRO にデータをインポートする方法はいくつかあるが、CSV のデータを作っておいて取り込むのが一番標準的である。この場合、XML で取り込む時とは違って、データ型が曖昧なので、いろいろなことが起こる。例えば日付を想定したフィールドに「未」という文字が入っていたら、そこだけ Date ではなく String のオブジェクトとして取り込む。

今回ハマったのは番号の取り込みなのだが、12桁の番号が、CSV に書き出した時点で、2.3456E+11 のような文字列になってしまっている。数値のように見えるのだが、0で始まるときに困るので、このカラムの書式は「文字列」に指定してあるのだが、なぜこういう表現になるのか分からない。とりあえず、このセルをダブルクリックすると12桁の数字に戻る。全部そういうことをすればよさそうだが、面倒すぎる。

そこで、何気なく、Excel でこのカラムの書式指定を「文字列」ではなく「数値」にしてみたら、一瞬で12桁の数字になった!
 つまり、Excel 的には、

書式が文字列 → 2.3456+11
書式が数値 → 234567890123

ということらしいのだが、若干釈然としない。しかしとりあえず問題は解決した。いやまて、先頭が0の場合はどうなるのだ?

開発製品

jirologos.gif

About 2009年05月

2009年05月にブログ「三田ブログ」に投稿されたすべてのエントリです。新しい順に並んでいます。

前のアーカイブは2008年09月です。

次のアーカイブは2009年07月です。

他にも多くのエントリがあります。メインページアーカイブページも見てください。

Powered by
Movable Type