
Javaを使ってOffice2007をクラックする
最近の連載、「Officeのリッチクライアントアプリケーション」で、我々は、基準としてOffice2007プラットフォームを使い、様々な異なる方法でJavaテクノロジーと相互運用するリッチクライアントアプリケーションをどこから構築するかについて議論しました。その際にカバーされなかった OfficeとJavaの相互運用性の1領域は恐らく最も古びた方法になっているでしょう。

最近の連載、「Officeのリッチクライアントアプリケーション」で、我々は、基準としてOffice2007プラットフォームを使い、様々な異なる方法でJavaテクノロジーと相互運用するリッチクライアントアプリケーションをどこから構築するかについて議論しました。その際にカバーされなかった OfficeとJavaの相互運用性の1領域は恐らく最も古びた方法になっているでしょう。

知恵のあるJava開発者をずっと避け続けている、興味深い一面に、別のクライアントプラットフォームがあります。これは、すでにユーザのデスクトップのほぼすべてに存在し、ユーザインターフェイスオプションとして驚くほどの量の能力と柔軟性を提供し、リリースされたすべてに集中的な研究を経た親しみやすいユーザ対話型形式を提供しています。もちろん、Microsoft OfficeプラットフォームのWord、Excel、Outlook、PowerPoint、InfoPathのことを話しています。

歴史的に、Java/.NET間の相互運用性についての議論は、.NETとJavaのシステムのどちらも持ち、対話させることが必要な特定の企業においてのみ発生する、"必要なときのみ"の相互運用性という見出しの元でしか行われてこず、アーキテクチャの話題の二の次とされていました。しかし、それらの議論から抜け落ちているものがあります。それは、開発者には「必要だから」という場合でなくともJavaと.NETをともに動作させたい場合があり、その動機についての議論です。
MS Office用OpenXML SDK 2.0はOpen XML文書を操作するための、厳密に型指定されたパーツ クラスを提供する。WorddocGeneratorはテンプレート駆動のWordファイルを生成する、オープンソースのユーティリティであるが、このSDKを使って開発できる例の1つである。InfoQはこのユーティリティの開発者である Atul Verma氏にこのプロジェクトについて幾つか質問をした。
Grid Logicは、Visual Studio LightSwitch開発者がMicrosoft Office 2010でデータを扱うことができるようにするOffice Integration Packをリリースした。この拡張により、ユーザーは文書、スプレッドシート、PDFの作成ができたり、OutlookでEメールや予定を送ったり、データをExcelから移動したりすることができる。
3ヶ月前、マイクロソフトは、開発者にサーバーやデスクトップアプリケーションで、OutlookをインストールせずにPSTコンテンツを作成することを認め、Outlook PST仕様書をリリースした。マイクロソフトは5月24日、アプリケーションの開発をより容易にするPSTデータ構造閲覧ツールとPSTファイルフォーマットSDK2つの新しいオープンソースプロジェクトを発表した。
Microsoftは、OutlookのPSTファイルフォーマットの仕様を公開した。これは、昨年の10月に約束したように、相互運用性を容易にし、顧客やベンダーが様々なプラットフォーム上で,.pstファイル内のデータにアクセス出来るようにするためである。
Visual Basic for Applicationsには将来性がなく、Visual Studio for Applicationsは注目されていない。開発者は.NETのコードとレガシなVBAマクロを混ぜるような居心地の悪い開発の中に取り残されている。 Visual Studio Tools for Officeはこの苦しみを少し和らげてくれる。
ApacheはMicrosoft Officeのファイルを扱うPOIライブラリのバージョン3.5をリリースした。最新バージョンではOffice 2007以降のフォーマットであるOOXMLをサポートしている。InfoQはPOI 3.5のリリースマネージャであるApacheのYegor Kozlov氏、POIプロジェクトの設立者であるAndrew Oliver氏とRobert Duffner氏に話を聞いた。また、このプロジェクトについて理解を深めるためMicrosoftのVijay Rajagopalan氏にも話を聞いた。