IBM®
本文へジャンプ
    Japan [変更]    ご利用条件
 
 
検索範囲検索:    
    ホーム    製品    サービス & ソリューション    サポート & ダウンロード    マイアカウント    
skip to main content

developerWorks Japan  >  WebSphere  >

エンドユーザーのためのWebサービス/Webアプリケーション作成ツール

developerWorks
ページオプション

JavaScript を要するドキュメントオプションは表示されません


レベル: 初級

四野見 秀明, アプリケーション開発ツール / ソフトウェア開発研究所, IBM

2005年 7月 15日

“Ad Hoc Development and Integration tool for End Users” (ADIEU)は、JavaやJ2EEなどの知識の無いエンドユーザがWebアプリケーションやWebサービスを開発するためのツールです。IBMのUSの研究部門が考案しプロトタイプを作ったものを、ソフトウェア開発研究所が引き継いで機能拡張を含めた開発を行っているものです。7月1日付けでIBM alphaWorksサイトからダウンロード可能になりました。本稿では、ADIEUによるWebサービスを利用したWebアプリケーション開発について説明します。
ADIEUは正式名称ではなく略称ですが、私たちは「(Webアプリケーションの)複雑さよ、さようなら」という思いで「アディユー」(フランス語の「さようなら」)と呼んでいます。

ADIEUによる開発

カードの組合せによるアプリケーション開発

ADIEUを利用すると、Java等でコーディングすることなく、ソフトウェアコンポーネントに相当する「カード」を組み合わせることによりアプリケーション開発を行うことができます。カード間のデータの参照は、スプレッドシートのセルの参照のように指定されます。Webサービスを呼び出すカード利用して、新たなWebサービスを定義したり、画面を含んだWebアプリケーションを開発することもできます。カードは、カードの組合せで作ることも可能ですし、ADIEUが提供するクラスを継承して新たなカードタイプとしてJavaで実装することも可能です。

Webブラウザが開発環境

ADIEU自体は、WebSphere Application Server もしくは、Apache Tomcat (一部機能制限あり)上に導入されます。開発環境はクライアントであるWebブラウザ(現状では、Microsoft Internet Explorerのみサポート)です。クライアント側への導入は必要ありません。Webブラウザ画面でカードの組合せで作られたアプリケーションは、サーバー上でJavaとしてコンパイルされて実行されます。面倒なデプロイメント(deployment)の必要はなく、少し作っては実行して試し、また実行するという正にアドホック(ad hoc)な開発をも可能にしています。ここでアドホックとは、構造化プログラミングのようなトップダウンな設計・実装アプローチに対比して、既にあるコンポーネントを利用しながらボトムアップ的に少しずつソフトウェアを開発していく手法を指しています。




上に戻る


開発例

以下では、Webサービスを呼び出すカードの生成、それを利用した簡単なWebアプリケーションの作成、カードの組合せによる新たなWebサービスの定義を例に基づいて説明します。XMethodsサイトで公開されているWebサービスを利用します。

シートがアプリケーションの単位

ADIEUを導入し、ADIEUサーバーにアクセスするとブラウザ上にsamplesというフォルダーがあるのが見えます。その中を開くと以下のような画面になります。



並んでいるアイコンはシートと呼ばれ、アプリケーションの単位に相当します。中を開けるとコンポーネントやプログラムロジックに相当するカードが並んでいます。

以下では、上記のルートのフォルダーの下に、dWorksというフォルダーを作成し、その中にstockというシートを作成して、アプリケーションを作成してみます。



Webサービスを呼び出すカードの生成

ADIEUでは、比較的単純なWebサービス呼び出しに対しては、Web Services Description Language (WSDL)の指定により自動的にカードタイプを生成することができます(複雑なものに対してはJavaで実装することでカードタイプを追加可能です)。

ADIEUの「新しい種類のカードをインポートする」という機能を選択することにより、以下のダイアログが表示されます。



XMethodsで公開されているものから、サービス名が“StockQuote”と名付けられているWebサービスについての以下のWSDLを上記ダイアログのフィールドに指定します:

http://services.xmethods.net/soap/urn:xmethods-delayed-quotes.wsdl

このWebサービスは、会社コード(例、IBM、YHOO)を入力とし、その株価をドルで返すものです。「次へ」を押していくと、以下のようなダイアログが表示されるので、「カードカテゴリ名」に”XMethods Web Service”、「カードタイプ名」に”Get Stock Quote” を指定します。



このWebサービスを起動するカードタイプがADIEUに登録されます。

同様に、同じくXMethodsから”Currency Exchange Rate” というサービス名のWebサービスの以下のWSDLを指定します:

http://www.xmethods.net/sd/2001/CurrencyExchangeService.wsdl

前と同じカードカテゴリ ”XMethods Web Service”、カードタイプは”Get Currency Exchange Rate”としてADIEUに登録します。このWebサービスは、二つの国名を入力することにより、その国の通貨間の換算レートを返すものです。

シートへのカードの追加

上記の二つのWebサービスが、”XMethods Web Service”カテゴリの下の新たなカードタイプとして、シートへのカード追加メニューに以下のように表示されます。



このダイアログで、この二つのWebサービスに相当するアイコンを各々選択することにより、stockシートに以下のようにカードが追加されます。



これら二枚のカードは、実行ボタン()を押すことにより各々個別に実行できます(この場合はWebサービス呼び出し)。この例では、カードA では入力された会社の株価をドル建てで返し、カードB では米ドル(US)から円(Japan)への変換レートを返した実行結果を得ることが出来ます。

カード間のフィールドの参照と計算

カードA中のフィールドResultは、ドル建ての株価であり、カードBのフィールドResultは米ドルから円への換算レートであることから、その二つを乗算することにより円での会社の株価を得ることができます。そのために以下のVariableカードをシートに追加し、フィールド(stockYen)追加し、その乗算を記述します。フィールド名の入力は、以下の図のように入力支援機能があるので、キーボードから手で打つ必要はありません。



乗算の結果は、stockYenフィールドの下に表示されています。

結果表示Webページの生成

二つのWebサービスを呼び出すことにより、会社の株価を円で返す小さなアプリケーションができました。Webアプリケーションになるためには、この結果をWebページとして公開する必要があります。
そこで、Web Pageカードを追加して、表示される画面を定義します。



このカード中、cardsToRunはこのページを表示するために実行すべきカードを指定するフィールドです。Outputの下のhtmlフィールドには、HTMLを入力します。かぎ括弧で囲まれた部分はADIEUの表現であり、ここでは、カードCのstockYenというフィールドの値を示しています。このカード中のaddress フィールドのURLをクリックすることにより、以下のWebページが表示されます。



ここでは、HTMLを手で打ち込んでいますが、ADIEUはIBM ホームページ・ビルダー V9との連携機能があり、このHTMLの部分をホームページ・ビルダーで編集することができます。alphaWorksからダウンロードできるzipファイルには、ホームページ・ビルダー用のパッチが含まれておりそれを適用することによりADIEUとの連携が可能になります。

Webサービスとしての提供

上記では、計算結果をWebページとして公開する例を示しましたが、同様に、ADIEUによる計算をWebサービスとして提供することができます。先ほどのWeb Pageカードの代わりに、Web Serviceカードを使います。ここでは、任意の会社コードを渡すことが出来るように修正しています。Web Pageカードと同様な定義で、会社コードを受け取り、その会社の株価を円で返すWebサービスとして提供されます。ここでは、そのWebサービスを呼び出すカードタイプ"Get Stock Quote in Yen"がADIEUに追加されて、先の"Get Stock Quote"、"Get Currency Exchange Rate"カードと同様に容易に利用できます。






上に戻る


まとめ

ADIEUは、エンドユーザがJavaやPHPを書くことなくWebアプリケーションやWebサービスを開発できるツールです。IBM alphaWorksからダウンロード可能になっていますので、興味のおありの方は導入して使用してみていただければと思います。



参考文献



著者について

四野見秀明は、ソフトウェア開発研究所でのADIEU開発のリーダーです。研究部門、開発部門でアセンブラ、Prolog、COBOL、PL/Iのプログラム解析ツールの研究開発を行いました。プログラム解析に関する研究発表に対して、情報処理学会第54回全国大会大会優秀賞を受賞しています。現在はアプリケーション開発ツールの開発に携わっています。




記事の評価


サイト改善のため、ご意見をお寄せください。こちらのフォームからお願いいたします。



 


 


12345
不充分・不完全である大変素晴らしい
 


この記事を共有する

はてなブックマーク はてなブックマーク livedoorクリップ livedoorクリップ del.icio.us del.icio.us Buzzurl(バザール) Buzzurl(バザール) Choix! Choix!
Saafブックマーク Saafブックマーク FC2ブックマーク FC2ブックマーク MM/memo MM/memo ニフティクリップ ニフティクリップ Yahoo!ブックマーク Yahoo!ブックマーク
CZブックマーク CZブックマーク newsing newsing




上に戻る


    日本IBMについて プライバシー お問い合わせ