掲載誌情報
掲載誌 Web Creators 2002/12
タイトル XMLもPHPも怖くない!WEB最新テクノロジー活用ガイド

2. Macromedia Flash Remoting MX
  (1) 製品概要
     Macromedia FlashとWebアプリケーションサーバを接続する環境を提供する「Macromedia Flash Remoting MX」は、「ColdFusion MX」や「JRun4」に組み込まれているFlash Remotingテクノロジーを、「.Net」や「J2EE」サーバ環境などで利用できるようにパッケージされたものである。
 「Macromedia Flash Remoting MX」は単体で動作するものではなく、Macromedia Flash・Webアプリケーションサーバとともに利用することで、リッチインターネット構築環境を整えるものである。
 以前はFlashで作成されたアプリケーションとバックオフィスのアプリケーションサーバとのデータ連携を行なう場合には、XMLデータに変換するなど、少なからず面倒な手続きが必要であった。しかし、「Flash Remoting MX」を使う事で、大幅に接続の手間が簡素化された。
 データのやりとりも「AMF:Action Message Format」というFlashのネイティブAPIによる接続を行うことで、パフォーマンス向上も実現している。
 現在サポートしているWebアプリケーションサーバは「JRun,ColdFusion MX,Microsoft.NET,J2EE/Java」である。既に述べたが「ColdFusion MX」や「JRun4」には既に実装されているため、それらをWebアプリケーションサーバとして利用する場合は、別途購入する必要は無い。製品として現在、「Microsoft .NET」版と「Java版(Windows/Linux/Solaris)」が提供されている。
  (2) 機能に関して
     ブラウザベースでのWebアプリケーションにおいてサーバと情報をやりとりする場合、必要なデータ以外にも、HTMLを構成する情報や画面デザインを構成するヘッダ・フッタ情報など、画面が遷移する毎に送受信が繰り返されるが、「Macromedia Flash Remoting MX」では、必要な情報のみの送受信だけで良いため、無駄なトラフィックを軽減できる。(図1)
 「Microsoft .NET版」の場合は、「.NET」のマネージドコードを使って動作するためパフォーマンスやセキュリティが最大のものを提供する。「Java版」の場合は、Javaで実装されるため、ピュアJava環境が提供されるなど、それぞれのアプリケーションサーバの利点を最大限に利用できる。(図2)
 また、サーバサイドのセッション管理機能などを、コーディングすることなく利用できる点も優れた機能として挙げられる。
 テスト環境に関しては、Macromedia Flash MXの「NetConnectionデバッガ」機能により、強力なテスト及びデバック環境が実現されており、(図3)開発者はそれらを利用して、イベントや変数を確認しながら開発を行なうことが可能となる。(図4)
     
    図1:写真は当社開発のPodPop/cwのお知らせ機能であるが、ワンスクリーンで情報の入力が可能となる。
図1
図2:JRun4上でFlash RemotingはWebアプリケーションとして実行されている。
図2
図3:Flash MXのNetConnectionデバッガ
図3
図4:Flash MXでの開発イメージ
図4
  (3) 使用感覚に関して
     従来は、Flashをユーザインターフェースとして使用し双方向にデータをやりとりするようなWEBサイトを構築する際には、ユーザが入力したデータを一旦XMLデータに変換して送信したり、httpプロトコルの引数として送受信する必要があった。XMLデータの送受信の場合、送信する側も受信する側もデータ変換を行わなければならず、そのための変換用プログラムを用意しなければならない。さらにそのようなプロセスがフロント側・バックオフィス側に発生するため、余計な処理が増える分レスポンスが悪くなっていたが、「Macromedia Flash Remoting MX」を使用することで、接続性の問題は劇的に改善された。
フロントエンドの開発者であるデザイナーが容易にバックオフィスのサーバ環境を手に入れることができるようになったのである。当社においても、デザイナーがサーバーサイドのテクノロジーに対して、これまで以上に興味を持つようになっている。(図5)
 また、データの扱いに関して、データベースから受け取るデータをクエリーそのもので受け取る他、構造体や配列での送受信が可能なため、レコードセットの煩雑さが全て解消されている。さらに利点として、CFCsやWEBサービスのメソッドを呼び出すことが可能となったため、オブジェクト指向のプログラミングが可能となったことも挙げられる。
     
    図5:Flash MXでActionScriptにてサーバサイドに接続するコーディングを行っている。
図5
  (4) 活用方法に関して
     フロントエンドのユーザインターフェースにFlashを利用する場合、従来はエンターテイメント的な使われ方や一部のナビゲーションへの使用、サイトのアイキャッチやアテンションとなるような演出的な場面での利用が大半であったと思われる。しかし、「Macromedia Flash Remoting MX」をフロントエンドとバックオフィスとの仲介に利用することで、Flashがバックオフィスのテクノロジーを手に入れたこととなり、従来のクライアント/サーバ型のシステムなどのように、使い勝手の良いビジネスアプリケーションの開発に用いられる場面が増えてくると思われる。(図6)
 また、商品購入やユーザ情報を受け付けるための複数画面にまたがるプロセスも、FlashとFlash Remoting MXとColdFusion MXを使う事で、ワンスクリーンによるユーザフレンドリーのインターフェースが提供できることとなり、ユーザの最終目的画面への到達率が格段に改善されると考える。
     
    図6:PodPop/cwのスケジュール画面、ページ遷移することなくスケジュールを参照・編集できる。
図6

BACK NEXT
PAGETOP
CLOSE