JavaFX+NetBeansでWidgetFXアプリを作るには
JavaFXでデスクトップを遊ぶ「WidgetFX」(後編)
小林 秀樹
2009/11/19
キッチン・タイマ・ウィジェットもあるよ
誌面の都合上、「Hello! World」ウィジェットの仕組みについて詳細まで解説できないのが残念ですが、もう1つサンプルとして、キッチン・タイマのウィジェットを作ってみたので、ぜひそちらもご覧になってください(図13)。
このサンプルでは、タイマの分と秒を、ユーザーがスライダー・コントロールを使って設定できるようにしており(図14)、Integer型の値で「IntegerProperty」というクラスを使って設定します。
図13 キッチン・タイマ・ウィジェット | 図14 キッチン・タイマのコンフィグレーション・ダイアログ |
下の「launch」アイコンをクリックすると、ウィジェットを実行できます。
KitchenTimerWidgetのNetBeansプロジェクトは、ここからダウンロードできます。見た目も機能もまだ十分ではないので、ぜひとも、いまより洗練させてみてください。
自分で作ったウィジェットを公開するには
せっかく苦労して開発した自信作のウィジェットは、自分1人で使うだけでなく、誰かほかの人にも使ってほしいものです。誰かに使ってもらって喜んでくれたり、感想などフィードバックが得られたら、それはとてもうれしいものです。
そこで、ここではウィジェットを公開する方法を説明します。WidgetFXのウィジェットは、Java Web Startで公開・配布しますが、そのためにはJNLPファイルが必要です。JNLPファイルはXMLで記述しますが、それを一から書いたのでは大変ですが、安心してください。NetBeansが自動で生成してくれます。
先ほど紹介した手順でウィジェットを開発したのであれば、プロジェクトをビルドした際に、プロジェクト・フォルダの下に「dist」というフォルダができているはずです。その中に「プロジェクト名.jnlp」という名前のファイルが生成されています。KitchenTimerWidget の例では、distフォルダに以下のものが生成されていました。
図15 生成されたdistフォルダとその中身 |
いろいろと生成されていますが、ウィジェットの公開に必要なものは、KitchenTimerWidget.jarとKitchenTimerWidget.jnlp、そしてlibフォルダ(とその中身)だけです。これらのリソースを公開用のWebサーバに配置します。例えば、「KitchenTimerWidget」というディレクトリをWebサーバに作成して、その下にこれらのリソースをコピーすれば、めでたく公開となります。
ただし、KitchenTimerWidget.jnlpは少しだけ編集しなければいけないので、以下の例を参考に修正してください。
【1】の<jnlp>要素のcodebase属性の値、および【2】の<homepage>要素のhref属性の値を、公開するリソースを配置したディレクトリのURLにします。【3】の<j2se>要素のversion属性の値を「1.6+」にします(2009年9月の原稿執筆時現在)。そのようにして配置したら、以下のHTMLタグを、自身のホームページやブログに張り付けます。赤字の部分は、自身のウィジェットのJNLPファイルのURLに変えてください。
これでWidgetFXのLaunchボタンを表示して、公開できますが、ウィジェットがローカル・コンピュータのリソースやネットワークへのアクセスを必要とする場合、JNLPファイルへの権限付与の記述と、JARファイルへのデジタル署名が必要となります。これについて詳しく知りたい読者は、ここを参照してみてください。
コラム 「良いウィジェットを作るコツ」 |
前回紹介したStephen Chin氏いわく、「『小さくて有益な情報を提供する』『パフォーマンスを意識して設計する』といったことが、しっかり意識して作られたものが良いウィジェットなのだ」とのことです。 「小さくて有益な情報を提供する」というのは、ウィジェットが小さなものなので、ちゃんとそれに収まり、それでも有益・便利な情報や機能を提供するということです。 「パフォーマンスを意識して設計する」というのは、ウィジェットが常にデスクトップ上で実行していても、ユーザーの本来の仕事を邪魔しないように、気を付けるということです。 ウィジェットが有益な情報や便利な機能を提供するものであっても、ユーザーにとって“主役”のアプリケーションにはなりません。ユーザーにとって主役のアプリケーションはあくまでWebブラウザや表計算ソフトといったものです。ウィジェットは、それらの邪魔になってはいけないということです。 |
WidgetFXがビジネスチャンスに?
本特集では、WidgetFXについて紹介してきましたが、WidgetFXはJavaFXとNetBeansを使って簡単にデスクトップ・ウィジェットが作れることが分かったと思います。
本稿を読まれた皆さんもぜひ、独自のウィジェットを作ってみてください。アイデア次第でいろいろな面白いウィジェットが作れるのではないかと思います。近い将来、このようなウィジェットがビジネスへとつながる可能性もあるかもしれません。
■ @IT関連記事
「Javaは遅い」から「Javaは楽しい」に至る歴史 小山博史のJavaを楽しむ(12) 最新のJava実行環境は起動が速いドラッガブルアプレットなど楽しい機能が満載です。ここまで至るには、いろいろな出来事がありました…… 「Java
Solution」フォーラム 2008/12/15 |
“不況”時代を切り拓く、7つのRIA技術の基礎知識 結局、RIAはどれを使うべきなのか?(2) 中立的な立場でRIA技術を比べるために、それぞれの基本的な情報と、それらを学ぶ際に最初に注意すべきことを説明しよう 「リッチクライアント & 帳票」フ ォーラム 2009/2/4 |
Androidのホーム画面に常駐するアプリを作るには Androidで動く携帯Javaアプリ作成入門(10) 待ち受けウィジェットを作るには、これまで学んできたレイアウトやサービス、インテントの知識を総動員する必要があります 「Java Solution」フォーラム 2009/9/28 |
筆者プロフィール |
小林 秀樹(こばやし ひでき) フリーランスのエンジニアとして仕事をする傍ら、技術分野の研究活動をしている。Java、JavaScriptと、最近は特にJavaFXとGroovyがお気に入り。日本JavaFXユーザーグループでのコミュニティ活動および、WidgetFXポータルサイトの日本語訳の活動なども行っている。本人のブログはこちら。 |
1-2-3 |
INDEX 「JavaFXでデスクトップを遊ぶ「WidgetFX」(後編)」 | ||
Page1 | ||
WidgetFXの開発環境を整えよう NetBeansで作るJavaFXアプリの初歩 |
||
Page2 | ||
JavaFXアプリをWidgetFXウィジェットにする 作ったWidgetFXを動かしてみよう |
||
Page3 | ||
キッチン・タイマ・ウィジェットもあるよ 自分で作ったウィジェットを公開するには コラム 「良いウィジェットを作るコツ」 WidgetFXがビジネスチャンスに? |
Java Solution全記事一覧 |
- 実運用の障害対応時間比較に見る、ログ管理基盤の効果 (2017/5/9)
ログ基盤の構築方法や利用方法、実際の案件で使ったときの事例などを紹介する連載。今回は、実案件を事例とし、ログ管理基盤の有用性を、障害対応時間比較も交えて紹介 - Chatwork、LINE、Netflixが進めるリアクティブシステムとは何か (2017/4/27)
「リアクティブ」に関連する幾つかの用語について解説し、リアクティブシステムを実現するためのライブラリを紹介します - Fluentd+Elasticsearch+Kibanaで作るログ基盤の概要と構築方法 (2017/4/6)
ログ基盤を実現するFluentd+Elasticsearch+Kibanaについて、構築方法や利用方法、実際の案件で使ったときの事例などを紹介する連載。初回は、ログ基盤の構築、利用方法について - プログラミングとビルド、Androidアプリ開発、Javaの基礎知識 (2017/4/3)
初心者が、Java言語を使ったAndroidのスマホアプリ開発を通じてプログラミングとは何かを学ぶ連載。初回は、プログラミングとビルド、Androidアプリ開発、Javaに関する基礎知識を解説する。
|
|