「Package Once. Deploy Anyware」(IzPack Part1)

みなさまこんにちわ。プロダクト開発部のhirotoshi(@wi_hiro)です。
さて、今回はオープンソースの「クロスプラットフォームインストーラー作成ツール」である「IzPack」に関してをご紹介します。このIzPack、ちょっと使い方を覚えると、なんでもコレで納品してしまいたくなるので注意が必要です。お客様へのドキュメント&テストパッケージの納品なんかもコレで行けます。

今回はパート1として、IzPackの概要と、実際に簡単なインストーラーを作って見たいと思います。


■まずは「IzPack」概要

IzPack(http://izpack.org/)はインストーラーを作成するためのパッケージングツールです。IzPackで作成したインストーラーは、複数のOSで動作可能で、サイトには以下のように書かれてます。

「You can package once, and deploy the very same installer to many platforms!」

IzPack自体と、IzPackで作成したインストーラを動作させるにはJava(1.4以上)が必要ですが、配布するパッケージ自体に制限はなく、Javaのアプリでも、シェルスクリプトでも、Windows NativeなプログラムでもOKです。
ちなみに、Javaでの開発を業務にしている方なら、すでに使っているパッケージかもしれませんが、以下のパッケージはこのIzPackによりインストーラーが作成されています。

  • Glassfish
  • Spring
  • JBOSS
  • Scala

■ざっと特徴を以下に。

○パッケージング

・1回のパッケージングで複数OSで稼働可能なインストーラーの作成
・パッケージングはXMLで指定
・GUIモードとコンソールモードでのインストーラ・多言語対応
・Uninstallerも同時に作成される
・各OS毎の動作を指定可能
・Webベースのインストール(途中でダウンロードするタイプね)も作成可能
・「setup.exe」のようなexeファイル形式も作成可能

“「Package Once. Deploy Anyware」(IzPack Part1)” の続きを読む

2ch騒動の教訓

おはようございます。プロダクト開発部のhirotoshi(@wi_hiro)です。
さて、技術ネタ第1投目は、javaネタ第一弾:「IzPackを使ってみた」をお送りする予定だったのですが、先週起きたとある事件に関して書きます。
果たして、このネタが番長ブログの最初の技術ネタになってよいのかどうか非常に悩むところではあったものの、反面教師という点で肝に銘じておきたいと思い、書かせていただきます。

2011/01/06の2ch騒動

2ch騒動の詳細は「2ch 騒動 キャップ漏れ」等で検索していただくとして、本来一般のユーザーにはできないはずのスレッドの管理、さらには、板の移転までができるようになってしまいました。
これにより、以下のような事が行われ「2ch壊滅?」とまで言われるような事態に。

  • スレッドの削除
  • スレッドの乱立
  • スクリプトコードを含むスレッドタイトル
  • 勝手な板移転
  • etc

事の発端

なぜ、このような事態になったのか。ここからが、技術的な話し。
確実そうな部分だけ、記載すると

  • 削除スクリプトと思われるファイルが存在し、拡張子が「.cgi」ではなかったために、スクリプト自体がダウンロード可能となっていた。※

というのが一番の発端ようす。
※そのファイル名称(URI)が判明した理由は定かではないですが、以下の説が有力
・アルファベット総当たりで探した
・Apacheの設定で、ディレクトリ内容の表示を許可されて居た

ここから先は推測:

“2ch騒動の教訓” の続きを読む