小山博史のJavaを楽しむ(8)
デスクトップをJava製ウィジェットでにぎやかに
ガリレオ
小山博史
2007/10/5
|
教育界、技術者コミュニティでJava言語の教育と啓蒙に長年携わってきた筆者が、独自の視点からJavaの面白さを掘り下げていく。(編集部) |
■ Java製デスクトップ・ウィジェット!?
| 今回の主な内容 ・ 百聞は一見にしかず! Glossitopeを使ってみよう ・ Desklet開発のための環境 ・ Deskletを作ってみよう ・ 作ったサンプルをウィジェットとして実行する ・ Java製デスクトップ・ウィジェットの利点 |
サーバサイド一色だったJavaも、EclipseのようなGUI開発ツールの登場によって、Javaで作成したデスクトップ用アプリケーションで成功を収めることができることが証明されました。「まだまだ一般の人が使うアプリケーションではJavaは少ないかもしれませんが、今後は増えてきそうな気がする」などと思っていたところ、なかなか面白いものが登場してきました。それはJava製のデスクトップ・ウィジェットです。
ワイド画面のパソコンが増えてきたせいか、デスクトップ画面上に「ウィジェット」(Widget)または、「ガジェット」(Gadget)と呼ばれる簡易アプリケーションを動かしている人も多くなってきたのではないでしょうか。Windows VistaやMac OS X(バージョン10.4以降)では、標準で時計、カレンダーといったウィジェットが提供されていますし、GoogleデスクトップやOperaブラウザ、Yahoo!ウィジェットといったアプリケーションでも無料でさまざまなデスクトップ・ウィジェットが利用できますから、重宝している人も多いでしょう。
今回は、こういったデスクトップ向けウィジェットをJavaで実現するためのプラットフォームとして登場した“Glossitope”の世界を紹介します。Javaですから、WindowsだけでなくMac OS XやLinuxのデスクトップでも動作するウィジェットを簡単に作ることができるという魅力があります。
■ 百聞は一見にしかず! Glossitopeを使ってみよう
Glossitopeは、GPL2のライセンスで配布されているオープンソースのウィジェット実行エンジンです。原稿執筆時点(2007年10月3日現在)では、アルファバージョンでしたが、とにかく使ってみるということでダウンロードをしてみました。Normal versionをクリックすると、Java Web Startで起動するかを確認するダイアログボックスが表示されるので、デフォルトのウィジェットをダウンロードすると、次のような画面が表示されました。
編集部注:Java Web Startについて詳しく知りたい読者は、「サンの夢を語れるのか?「Java Web Start」」をご参照ください。
![]() |
| 図1 Glossitopeをダウンロードして起動(画像をクリックすると拡大します) |
右側に表示された領域をクリックすると、いろいろなウィジェットがダウンロードされたにぎやかな画面に切り替わります。
![]() |
| 図2 Glossitopeのデスクトップ・ウィジェット(画像をクリックすると拡大します) |
天気予報、時計、カレンダーといったウィジェットが表示されているのが分かります。これらのウィジェットを表示したまま、Windowsのアプリケーションを使うことはできませんが、休憩時間などではこちらの画面に切り替えて、和んだりできそうです。
Setupボタンをクリックすると、動作しているウィジェットの設定画面が表示されます。ほかのウィジェットをダウンロードしたい場合は[Download more]というボタンをクリックしてみましょう。GlossitopeのギャラリーのWebページが表示されて、登録されているウィジェットをダウンロードできます。
■ GlossitopeのFAQ
GlossitopeサイトにあるFAQによると、Glossitopeは“Desklet”というウィジェット・アプリケーションを実行するためのコンテナだという説明がされています。使ってみると分かりますが、ウィジェットはこのコンテナ内で実行されます。
また、Glossitopeを動かすにはJava 6が必要だということです。ウィジェットを開発するためには、org.glossitope.Deskletインターフェイスを実装するクラスを用意するだけなので、それほど難しくはないようです。
■ Desklet開発のための環境
GlossitopeのDevelopersページから、サンプルコードと必要なライブラリをダウンロードして、サンプルのDeskletを動かしてみました。
■ NetBeans IDEを使う
「as a NetBeans project」のリンクをクリックすると、オープンソースの統合開発環境NetBeans IDE用のSampleWidget.zipファイルがダウンロードできます。「using maven」のリンクをクリックすると、Maven 2を使ったサンプル構築方法の説明ページが開きます。
編集部注:Mavenについて詳しく知りたい読者は、「Java開発支援ツールの定番」の[Maven]や、連載「CoolなEclipseプラグイン」の第11回「ビルドを効率化するEclipseプラグイン」の[m2eclipseプラグイン]をご参照ください。
ここでは、取りあえず、NetBeans IDE用のSampleWidget.zipをダウンロードして動作させてみることにしました。NetBeans IDEも用意する必要がありますが、ダウンロードサイトからインストール用ファイルをダウンロードして実行するだけで、すぐに準備できますし、どうせIDE(統合開発環境)でソースコードを見ることになるので、トータル的に手間が少なくて済むと考え、使ってみることにしました。執筆時点でリリースされていたNetBeans IDE 5.5.1を使いました。
![]() |
| 図3 NetBeans IDEのダウンロードサイト |
NetBeans IDEの準備はすぐにできたので、早速SampleWidget.zipファイルをダウンロードして展開しました。次に、NetBeans IDE用のプロジェクトファイルを入れるフォルダ「C:\projects」を作成しました。そこへアーカイブを展開した結果のSampleWidgetフォルダを移動しました。このフォルダは、NetBeans IDE用プロジェクトの構成となっていて、直下には、build、lib、src、nbprojectといったフォルダが含まれています。
NetBeans IDE用プロジェクトを開く手順は次のように簡単です。
- NetBeans IDEを起動して、[ファイル]→[プロジェクトを開く]と指定
- [プロジェクトを開く]ダイアログボックスが表示されたら、[C:\projects\SampleWidget]フォルダを指定
- [プロジェクトフォルダを開く]をクリック
■ NetBeans IDEも結構いい感じ
最近、筆者はEclipseをずっと使っていたので、NetBeans IDEを使用するのは久しぶりでした。機能が多いので、簡単に操作できるとまではいえませんが、大体の操作は分かるインターフェイスで、結構使いやすいと感じました。
また、問題が発生したときにサポートをしてくれる機能が付いていて、助かりました。どういうことかというと、プロジェクトを開いたところで、警告が出たのですが、その解決方法はどうすればよいのか示されたのです。
具体的には、[プロジェクトフォルダを開く]で問題が発生した時点で、SampleWidgetプロジェクトをマウスの左ボタンでクリックして、[参照の問題を解決]を指定するように指示するダイアログボックスが表示されます。いわれたとおりに開くと、次のような画面が表示されます。
![]() |
| 図4 [参照の問題を解決]ダイアログ |
ここでは、desklet-specification-1.0.jarが見つからないという警告が出ていました。これは、[解決]ボタンをクリックして、SampleWidgetフォルダに含まれるlibフォルダにあるJARファイルを指定することで解決しました。
また、JDK_1.6プラットフォームが見つからないというメッセージも出ています。これを解決するためには、[解決]ボタンをクリックして表示される画面でプラットフォームを追加するだけです。こういう機能が付いているというのは、いいですね。
とはいうものの、今回の場合は、デフォルトのプラットフォームを指定すればよいはずなので、そちらの方法も調べてみました。プロジェクトのプロパティを一通り確認して、すぐにどうすればいいか分かりました。この場合は、[SampleWidget]のプロパティで[ライブラリ]を指定し、[Javaプラットフォーム]へのインストール時に設定されている[JDK 1.6(デフォルト)]を指定するのです。こうやって使ってみると、NetBeans IDEも結構いい感じです。
■ サンプルウィジェットの実行
準備ができたので、SampleWidgetプロジェクトをマウスの左ボタンでクリックして、[プロジェクトの構築]を指定して、JARファイルを生成しました。
![]() |
| 図5 NetBeans IDEでJARファイルの生成(画像をクリックすると拡大します) |
実行する方法が構築結果を表示する画面に出力されているので、そのとおりにコマンドプロンプトを起動して実行しました。
| 以下のコマンドを実行 |
>java -jar C:\projects\SampleWidget\dist\SampleWidget.jar |
次のように、黄緑色の円と簡単な文字列が描画されたウィンドウがデスクトップの左上に表示されました。
![]() |
| 図6 サンプルをJavaアプリケーションとして実行 |
Javaアプリケーションとして動作することを確認できたので、次はウィジェットとして動作させたいところです。そのためには、左側に表示されているGlossitopeの[Setup]を使います。これをクリックすれば、ウィジェットの管理画面が表示されますから、そこで登録をします。管理画面を表示して、[Add]ボタンをクリックし、構築の結果生成されたJARファイルのSampleWidget.jarを追加したところ、次のようにGlossitopeのコンテナに画面が追加されました。
![]() |
| 図7 サンプルをDeskletとして実行 |
円の周りが透けている点に気が付きましたか?
次ページからはDeskletのサンプルの作り方を解説します。
| 1-2-3 |
| INDEX | ||
| 第8回 デスクトップをJava製ウィジェットでにぎやかに | ||
| Page1 百聞は一見にしかず! Glossitopeを使ってみよう Desklet開発のための環境 |
||
| Page2 Deskletを作ってみよう |
||
| Page3 作ったサンプルをウィジェットとして実行する Java製デスクトップ・ウィジェットの利点 |
||
小山博史のJavaを楽しむ バックナンバー 連載インデックスへ»
- 第1回 JavaとJavaScriptの親しい関係
- 第2回 いろいろなJavaを楽しむ
- 第3回 待望のJava SE 6 でパーシステンス
- 第4回 (Java+Derby)* Ruby on Rails プログラミング
- 第5回 【新人研修向け特別企画】JavaでPHPを使ってみた
- 第6回 JavaFXでJava RIA開発はどれくらい変わるの?
- 第7回 そろそろブログ+RSSアプリでも作ってみませんか?
- 第8回 デスクトップをJava製ウィジェットでにぎやかに
- 第9回 Google Android用携帯アプリ作成のための基礎知識
- 第10回 【新人なるプログラマーへ】ソースコードを読みましょう
- 第11回 Javaはクラウドのプラットフォームになり得るのか
- 第12回 「Javaは遅い」から「Javaは楽しい」に至る歴史
- 第13回 Subversionならできる! NetBook最強バックアップ術
- 第14回 UNIX/Linuxも楽しむJava開発者になるための学習法
- 第15回 年末でJetty(絶対)にできるAndroid携帯サーバ活用
| Java Solutionコラム一覧 |
TechTargetジャパン
- Scalaのパッケージ、アクセス修飾子、オブジェクト継承 (2012/5/22)
インポート、パッケージオブジェクト、抽象クラス/抽象メソッド、オーバーライド、final、シールドクラスなども - 基幹系システムでCloud SQLは使えるか試してみた (2012/5/17)
サンプルとしてMRPシステムを作成して動かし、「再帰呼び出し」などのパフォーマンスを測定して検証してみます - アジャイル管理ツール9選+Pivotal Tracker入門 (2012/5/14)
群雄割拠のアジャイルプロジェクト管理ツールを9つ紹介し、特に注目を集めているPivotal Trackerの基本的な使い方を解説します - サーバサイドJSやJavaでWebアプリが作れるXPages (2012/5/11)
Notes/Dominoの資産をサーバサイドJavaScriptやJavaで操作し、HTMLやJavaScript、CSSをUIにできる技術を紹介
|
|
キャリアアップ
スポンサーからのお知らせ
- - PR -
イベントカレンダー
- - PR -




![図4 [参照の問題を解決]ダイアログ](/fjava/column/koyama/images/koyama08-04.gif)


