その歴史より、Adobe FlexおよびAIRはEclipseベースのIDEおよびServletコンテナで実行するために、Javaに内蔵された完全機能データサービス製品を 含む、Javaと深いつながりがある。しかしながら、Javaプラットフォームとの強い結束があっても、Adobe AIRには、クライアントでJavaを使用するための生来の方法がない。その上、他のデスクトッププラットフォームと比べると、AIRアプリケーションは ローカルリソースに対するアクセスが比較的制限されている。
概して、Adobeは技術的な理由からではなく、概念上の理由から、固有のOS機能およびローカルアクセスの追加を避けてきた。Adobeが理解しているのは、そのような追加によって、OS全体にわたる移植性をさらに厄介にしてしまうかもしれないということである。Adobeの懸 念は、プラットフォームベンダーにとって道理にかなったものえあるが、コミュニティは、Merapiプロジェクト(リンク)において独自のソリューションを提供する ことで、それに答えた。
MerapiのプロジェクトWebサイト(リンク)は、そのブリッジを以下のように説明している。
MerapiはJava™アプリケーションであり、ユーザの(クライアント)コンピュータを実行することを目的としている。Merapiはユーザのコン ピュータ上にある他のJava™アプリケーションを、ユーザがインストールしたAdobe AIR™アプリケーションに接続する。
それはマジックではない。Merapiに接続可能な方法で Adobe AIR™アプリケーションを開発する必要がある。Merapiは、「仲介人」として働く。AIR™アプリケーションとJava™アプリケーション間でオブジェクトの受け渡しをする。
Merapiを使用すると、Adobe AIR™アプリケーションはユーザがコンピュータにインストールした他のソフトウェアと「対話する」ことができる。おまけに、ユーザのコンピュータ上でJavaアプリケーションができるのと同じように、MerapiはAIR™アプリケーションがユーザインターフェイスとして機能することを可能にする。
そのプロジェクトの別の要約(リンク)は、以下のとおりである。
Merapiを使用すると、Adobe AIR™アプリケーションはユーザがコンピュータにインストールした他のソフトウェアと「対話する」ことができる。おまけに、ユーザのコンピュータ上で Javaアプリケーションができるのと同じように、MerapiはAIR™アプリケーションがユーザインターフェイスとして機能することを可能にする。
Merapiは、デベロッパによって求められている機能をベンダーが提供することができないギャップをコミュニティが埋めているという、また別の素晴らし い例である。Merapiについて詳しくは、この段階的なガイド(リンク)および以下の概要(リンク)を参考にするとよい。また、プロジェクトの導入時2008年初め、寄稿者の1人Adam Flater氏によるブログ記事(リンク)も参照するとよい。