(57)【要約】【課題】  ウェブブラウザ上で実行されるＲＩＡにより表示されるコンテンツを、ウェブブラウザと異なるプログラム（ＯＳのファイルシステムなど）で管理されているフォルダにＤ＆Ｄ操作することで、ダウンロードできるようにする。【解決手段】  本発明では、ウェブブラウザ上で動作する第１の拡張プログラムと第２の拡張プログラムとを用いる。第１の拡張プログラムは、文書管理サーバで管理されているコンテンツをブラウザの表示領域内に表示し、コンテンツがドラッグアウトされた場合、当該コンテンツの情報をブリッジデータ保持部に書き込む。第２の拡張プログラムは、ブリッジデータ保持部に書き込まれた前記コンテンツの情報を含むドラッグオブジェクトを生成し、該ドラッグオブジェクトがウェブブラウザ外でドロップされたか監視し、ドロップされた場合、ドラッグオブジェクトに含まれる前記コンテンツの情報を用いてダウンロード処理を実行する。【選択図】  図６
2015032002.tif 000002
【特許請求の範囲】
【請求項１】
ウェブブラウザ上で動作する第１の拡張プログラムと第２の拡張プログラムとを含む文書管理プログラムであって、
前記第１の拡張プログラムは、コンピュータを、
文書管理サーバで管理されているコンテンツの情報を取得する第１の取得手段、
前記第１の取得手段で取得した情報にしたがって、前記文書管理サーバで管理されているコンテンツを、前記ウェブブラウザ上に定義された表示領域内に表示する表示手段、
前記ウェブブラウザ上で発生したマウスイベント情報が、前記表示手段により表示されたコンテンツが前記表示領域外にドラッグされたことを示すドラッグアウトであると判断した場合、当該ドラッグされたコンテンツの情報をブリッジデータ保持部に書き込む第１の保存手段、
として機能させ、
前記第２の拡張プログラムは、前記コンピュータを、
前記ブリッジデータ保持部に書き込まれた前記コンテンツの情報を受信して、当該受信したコンテンツの情報を含むドラッグオブジェクトを生成し、当該ドラッグオブジェクトが前記ウェブブラウザ外でドロップされたか監視する監視手段、
前記ドラッグオブジェクトが前記ウェブブラウザ外でドロップされた場合、当該ドラッグオブジェクトに含まれる前記コンテンツの情報を用いて、文書管理サーバに該当するコンテンツを送信するように指示することによりダウンロード処理を実行するダウンロード手段、
として機能させることを特徴とする文書管理プログラム。
【請求項２】
前記コンテンツは、ファイルまたはフォルダの少なくともいずれかであることを特徴とする請求項１に記載の文書管理プログラム。
【請求項３】
前記ブリッジデータ保持部に書き込まれた前記コンテンツの情報は、該コンテンツのＵＲＩ情報であることを特徴とする請求項１に記載の文書管理プログラム。
【請求項４】
前記監視手段は、前記ドラッグオブジェクトをＯＳに登録することにより、当該ドラッグオブジェクトが前記ウェブブラウザ外でドロップされたか監視することを特徴とする請求項１に記載の文書管理プログラム。
【請求項５】
前記ドラッグされたコンテンツがフォルダであった場合、前記ダウンロード手段は、当該ドロップされたドラッグオブジェクトに含まれるフォルダの情報に基づいて、前記文書管理サーバから当該フォルダの配下に含まれるファイルの情報を取得し、更に、当該取得したファイルの情報を用いて、前記文書管理サーバに該当するファイルを送信するように指示することによりダウンロード処理を実行することを特徴とする請求項１に記載の文書管理プログラム。
【請求項６】
前記表示手段は、前記文書管理サーバで管理されているコンテンツの過去バージョンのコンテンツを、前記ウェブブラウザ上に定義された表示領域内に表示し、
前記ドラッグされるコンテンツは前記過去バージョンのコンテンツであることを特徴とする請求項１に記載の文書管理プログラム。
【請求項７】
前記ダウンロード手段は、前記文書管理サーバ上で管理されている前記コンテンツの更新日時を前記文書管理サーバから取得し、当該取得した前記文書管理サーバ上で管理されている前記コンテンツの更新日時を用いて、前記ダウンロードしたコンテンツの更新日時を更新することを特徴とする請求項１に記載の文書管理プログラム。
【請求項８】
前記ダウンロード手段は、前記ドラッグオブジェクトのドロップ先がウィジェットプログラムであった場合、当該ダウンロードされたコンテンツのファイルパスを前記ウィジェットプログラムに通知することを特徴とする請求項１に記載の文書管理プログラム。
【請求項９】
ドラッグが開始されたときのマウスイベントが、前記ウェブブラウザ外に表示されているファイルに対するドラッグであり、且つ、前記表示手段により表示された表示領域内のコンテンツに対してドロップされた場合、当該ドラッグされたファイルのアップロード処理を実行することを特徴とする請求項１に記載の文書管理プログラム。
【請求項１０】
請求項１乃至９のいずれかに記載の文書管理プログラムを格納した、コンピュータ読み取り可能な記憶媒体。
【請求項１１】
ウェブブラウザ上で動作する第１の拡張プログラムと第２の拡張プログラムとを格納したコンピュータ読み取り可能な記憶媒体と、前記ウェブブラウザのプログラムと前記第１の拡張プログラムと前記第２の拡張プログラムとを実行するＣＰＵと、を含む情報処理装置であって、
前記第１の拡張プログラムは、前記ＣＰＵを、
文書管理サーバで管理されているコンテンツの情報を取得する第１の取得手段、
前記第１の取得手段で取得した情報にしたがって、前記文書管理サーバで管理されているコンテンツを、前記ウェブブラウザ上に定義された表示領域内に表示する表示手段、
前記ウェブブラウザ上で発生したマウスイベント情報が、前記表示手段により表示されたコンテンツが前記表示領域外にドラッグされたことを示すドラッグアウトであると判断した場合、当該ドラッグされたコンテンツの情報をブリッジデータ保持部に書き込む第１の保存手段、
として機能させ、
前記第２の拡張プログラムは、前記ＣＰＵを、
前記ブリッジデータ保持部に書き込まれた前記コンテンツの情報を受信して、当該受信したコンテンツの情報を含むドラッグオブジェクトを生成し、当該ドラッグオブジェクトが前記ウェブブラウザ外でドロップされたか監視する監視手段、
前記ドラッグオブジェクトが前記ウェブブラウザ外でドロップされた場合、当該ドラッグオブジェクトに含まれる前記コンテンツの情報を用いて、文書管理サーバに該当するコンテンツを送信するように指示することによりダウンロード処理を実行するダウンロード手段、
として機能させる
ことを特徴とする情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、文書管理サーバで管理されている文書を処理するための文書管理プログラム、情報処理装置に関する。
【背景技術】
【０００２】
近年、文書管理システムにおいて、専用の文書管理クライアントアプリケーションを用いずに、一般的なウェブブラウザ（Ｍｉｃｒｏｓｏｆｔ  Ｉｎｔｅｒｎｅｔ  Ｅｘｐｌｏｒｅｒ（商標）など）を用いて文書管理サーバにアクセスすることが望まれている。一方で、文書管理サーバは複数のフォルダの階層構造を用いて文書ファイルを分類しており、ウェブブラウザを用いて文書管理サーバにアクセスする場合も、ユーザはこのフォルダ階層構造をインタラクティブに操作できるようにするのが望ましい。そこで、Ａｄｏｂｅ  Ｆｌａｓｈ  Ｐｌａｙｅｒ（商標）などのＲＩＡ（Ｒｉｃｈ  Ｉｎｔｅｒｎｅｔ  Ａｐｐｌｉｃａｔｉｏｎ）を用いて、文書管理サーバのフォルダ階層構造を操作するための拡張プログラムをウェブブラウザ上で実行することが考えられる。
【０００３】
また、特許文献１の図９では、ウェブブラウザにおいて、サーバへのアップロードパスを含むＨＴＭＬオブジェクト（アップロード用の領域）を表示しておく。そして、ユーザが、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）のファイルシステムで管理しているファイルを、該ＨＴＭＬオブジェクトにドラッグ＆ドロップ（以後、Ｄ＆Ｄと称する）した場合は、ＨＴＭＬオブジェクトに含まれるアップロードパスに対応する記憶領域へ、当該ファイルをアップロードするようにしている。しかしながら、特許文献１の技術では、ＨＴＭＬオブジェクトに対応付けられたアップロードパスで特定される１つの記憶領域にしかファイルをアップロードできなかった。すなわち、特許文献１の技術では、アップロードパスで定められた１つの記憶領域にファイルをアップロードするものであるので、ＲＩＡを用いてフォルダ階層構造を表示したとしても、当該表示されたフォルダ階層構造の中の所望のフォルダに、ＯＳ上のファイルをＤ＆Ｄでアップロードすることはできない。これに対して、本出願人は、特許文献２において、フォルダ階層構造を表示させるためにＲＩＡを用いて記述されたアドオンと、ＯＳで発生したマウスイベントの情報を取得および保持するためにＡｃｔｉｖｅＸ技術を用いて記述されたアドオンと、該アドオン間でマウスイベント情報を中継するためのＪａｖａＳｃｒｉｐｔ（登録商標）で記述されたスクリプトプログラムを設けることにより、ＯＳ上のファイルを、ＲＩＡを用いた表示されたフォルダ階層構造上のフォルダへＤ＆Ｄでアップロードする技術について提案している。
【０００４】
また、特許文献１では、ウェブブラウザによって表示されているＨＴＭＬオブジェクトを、ウェブブラウザの表示領域外へドラッグすると、アドインプログラムにより、ＯＳのドラッグオブジェクトを作成し、当該作成されたドラッグオブジェクトをＯＳに登録することで、Ｄ＆Ｄ操作でＨＴＭＬオブジェクトのダウンロードを行う技術を開示している。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】ＷＯ２００８／０２９７７４号公報
【特許文献２】特開２０１２−２４３１４５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１は、ウェブブラウザによって表示されているＨＴＭＬオブジェクトをダウンロード対象とするものである。すなわち、特許文献１の技術では、Ａｄｏｂｅ  Ｆｌａｓｈ  Ｐｌａｙｅｒ（商標）などのＲＩＡにより表示されているコンテンツ（ファイルやフォルダ）を、Ｄ＆Ｄ操作によりダウンロードすることはできない。
【０００７】
また、特許文献２は、上述したように、ＯＳ上のファイルをドロップした時のウェブブラウザ上の座標を、Ｆｌａｓｈ  Ｐｌａｙｅｒ側に通知することにより、アップロード先のフォルダを特定するものであるが、ダウンロード時の構成については記載していなかった。すなわち、特許文献２はデータをアップロードするための構成を開示するものであるので、Ｆｌａｓｈ  ＰｌａｙｅｒなどのＲＩＡにより表示されているコンテンツをＤ＆Ｄ操作によるダウンロードの構成としてそのまま適用することはできない。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、本発明の文書管理プログラムは、ウェブブラウザ上で動作する第１の拡張プログラムと第２の拡張プログラムとを含む文書管理プログラムであって、前記第１の拡張プログラムは、コンピュータを、文書管理サーバで管理されているコンテンツの情報を取得する第１の取得手段、前記第１の取得手段で取得した情報にしたがって、前記文書管理サーバで管理されているコンテンツを、前記ウェブブラウザ上に定義された表示領域内に表示する表示手段、前記ウェブブラウザ上で発生したマウスイベント情報が、前記表示手段により表示されたコンテンツが前記表示領域外にドラッグされたことを示すドラッグアウトであると判断した場合、当該ドラッグされたコンテンツの情報をブリッジデータ保持部に書き込む第１の保存手段、として機能させ、前記第２の拡張プログラムは、前記コンピュータを、前記ブリッジデータ保持部に書き込まれた前記コンテンツの情報を受信して、当該受信したコンテンツの情報を含むドラッグオブジェクトを生成し、当該ドラッグオブジェクトが前記ウェブブラウザ外でドロップされたか監視する監視手段、前記ドラッグオブジェクトが前記ウェブブラウザ外でドロップされた場合、当該ドラッグオブジェクトに含まれる前記コンテンツの情報を用いて、文書管理サーバに該当するコンテンツを送信するように指示することによりダウンロード処理を実行するダウンロード手段、として機能させることを特徴とする。
【発明の効果】
【０００９】
本発明によれば、ウェブブラウザ上で実行されるＲＩＡによって表示されるコンテンツを、ウェブブラウザと異なるプログラム（ＯＳのファイルシステムなど）で管理されているフォルダへＤ＆Ｄ操作することにより、サーバで管理されている該コンテンツを容易にダウンロードできるようになる。
【図面の簡単な説明】
【００１０】
【図１】システム構成図
【図２】文書管理サーバおよび文書管理クライアントのハードウェア構成例
【図３】文書管理サーバおよび文書管理クライアントが提供する各処理部の構成例
【図４】ウェブブラウザ構成図
【図５】ＵＩ構造図
【図６】マウスイベントを取得してファイルをダウンロードするメインシーケンス図
【図７】実施例１のコンテンツを表示する処理の流れを示すフローチャート
【図８】実施例１のコンテンツがドラッグされたときの処理の流れを示すフローチャート
【図９】実施例１のコンテンツをダウンロードする処理の流れを示すフローチャート
【図１０】マウスイベントを取得してファイルをアップロードするメインシーケンス図
【図１１】マウスイベントをウェブブラウザに通知する処理の流れを示すフローチャート
【図１２】マウス位置にあるフォルダを検知する処理の流れを示すフローチャート
【図１３】ファイルをアップロードする処理の流れを示すフローチャート
【図１４】アップロード失敗時のエラーメッセージを表示する処理の流れを示すフローチャート
【図１５】実施例２のファイルの過去バージョンを表示する処理の流れを示すフローチャート
【図１６】実施例３のダウンロード済みファイルの更新日時を更新する処理の流れを示すフローチャート
【図１７】実施例４のウィジェットプログラムがコンテンツを取得する処理の流れを示すフローチャート
【発明を実施するための形態】
【００１１】
［実施例１］
＜システム構成＞
図１は、本発明の実施形態に係る文書管理システムの構成図である。該システムは、ＬＡＮ３０を介して接続された文書管理サーバＰＣ１０とクライアントＰＣ２０により構成される。文書管理サーバＰＣ１０は、ファイルやフォルダなどのコンテンツを管理する文書管理機能と、Ｗｅｂアプリケーションサーバ機能とを提供する。なお、本実施形態では、文書管理機能とＷｅｂアプリケーションサーバ機能は、同一サーバ内で実現するものとしたが、別々のサーバで実現するようにしても構わない。クライアントＰＣ２０は、ウェブブラウザを介して文書管理サーバＰＣ１０に接続してコンテンツを操作する機能を提供する。
【００１２】
＜ハードウェア構成＞
図２は、本発明の実施形態に係る文書管理システムを構成する各ＰＣのハードウェア構成例を示している。文書管理サーバ１０とクライアントＰＣ２０は、一般的なＰＣのハードウェアを用いて構成できる。
【００１３】
ＣＰＵ２０１は、ＲＯＭ２０３やハードディスク等の外部メモリ２１０に記憶されたＯＳ（オペレーションシステム）やアプリケーション等のプログラムを実行することにより、後述する各フローチャートの各ステップを実行する処理部として機能する。ＲＡＭ２０２は、ＣＰＵ２０１の主メモリ、ワークエリア等として機能する。キーボードコントローラ２０４は、キーボード２０８や図示しないポインティングデバイスからの入力を制御する。ディスプレイコントローラ２０５は、各種ディスプレイ２０９の表示を制御する。ディスクコントローラ２０６は、各種データを記憶する外部メモリ２１０（ハードディスクなど）におけるデータアクセスを制御する。ＮＣ（ネットワークコントローラ）２０７は、ネットワークに接続されて、ネットワークに接続された他の機器との通信制御処理を実行する。
【００１４】
＜ソフトウェア構成＞
図３は、文書管理サーバＰＣ１０とクライアントＰＣ２０が提供する各処理部の構成例を示している。
【００１５】
文書管理サーバＰＣ１０のＣＰＵ２０１がプログラムを実行することにより、文書管理サーバは各処理部３００〜３０２として機能する。なお、コンテンツなどの情報は、外部メモリ２１０に保持され、必要なときにＲＡＭ２０１にロードし処理される。
【００１６】
文書管理サーバＰＣ１０におけるメイン制御部３００は、文書管理サーバのアプリケーションを司るメイン制御処理を行う。また、メイン制御部３００は、入出力制御部３０１、コンテンツ制御部３０２を制御し、コンテンツ情報などの橋渡しを行う。入出力制御部３０１は、クライアントＰＣ２０からのコマンドのリクエストを受信して、クライアントＰＣ２０へコマンドのレスポンスを送信する。また、コンテンツ制御部３０２は、クライアントＰＣ２０からリクエストのあったコンテンツ情報を取得する。なお、コンテンツ情報については、ＤＢやファイルなどで管理されていても良く、特に形態は問わない。
【００１７】
クライアントＰＣ２０のＣＰＵ２０１が各処理部のプログラムを読み出して実行することにより、クライアントＰＣは各処理部３１０〜３１４として機能する。
【００１８】
クライアントＰＣ２０のメイン制御部３１０は、クライアントＰＣ２０のアプリケーションを司るメイン制御処理を行う。また、メイン制御部３１０は、入出力制御部３１１、コンテンツ表示部３１２、マウスイベント制御部３１３、ブリッジデータ保持部３１４を制御し、コンテンツ情報などの橋渡しを行う。入出力制御部３１１は、文書管理サーバＰＣ１０へコマンドのリクエストを送信して、文書管理サーバＰＣ１０からのコマンドのレスポンスを受信する。
【００１９】
コンテンツ表示部３１２は、文書管理サーバＰＣ１０から受信したコンテンツ情報を解釈してウェブブラウザ上に表示する。コンテンツとは、文書などのファイルや、ファイルを管理するフォルダを示す。また、コンテンツ表示部３１２は、マウスイベント制御部３１３が取得したマウス座標（ポインティングデバイスにより指示される座標位置）に基づいて、表示されているコンテンツの重なっているかを検知する。コンテンツ表示部３１２は、マウスイベント制御部３１３が処理に失敗した場合、失敗した旨を示すエラーメッセージを表示する。更に、コンテンツ表示部３１２は、ウェブブラウザ４００と通信をするためのインターフェースを公開している。また、コンテンツ表示部３１２は、ウェブブラウザ４００内で発生したマウスイベント（コンテンツのドラッグ開始やドラッグアウトなどのイベント）を取得すること、マウスイベント情報を保持することを実現する。
【００２０】
マウスイベント制御部３１３は、ウェブブラウザ４００とは異なるプログラム（ＯＳなどのプログラム）から受けたマウスイベント（ポインティングデバイスによるイベント）に基づいて、マウスイベント情報を取得する。マウスイベント制御部３１３は、当該取得したマウスイベント情報に基づいて、イベント種類、座標位置、ドラッグされているファイルは何かを判断する。ファイルのアップロードを行う場合、マウスイベント制御部３１３は、コンテンツ表示部３１２においてドロップしたときのマウス座標に重なっていると検知したフォルダに、ドラッグ元で設定されているファイルをアップロードする。一方、ファイルのダウンロードを行う場合、マウスイベント制御部３１３は、クライアントＰＣ２０のＯＳ上のフォルダへのドロップ操作を検知し、文書管理サーバＰＣ１０から、ドロップ先のフォルダにドロップしたコンテンツのダウンロードを行う。マウスイベント制御部３１３を実現するプログラムは、ブリッジデータ保持部３１４に情報を設定したことを通知するために、ウェブブラウザ４００とＪａｖａＳｃｒｉｐｔ（登録商標）を介して通信するためのインターフェースを公開している。
【００２１】
ブリッジデータ保持部３１４は、マウスイベント情報やコンテンツ表示部３１２が表示しているフォルダ情報を、マウスイベント制御部３１３との間で送受信するための情報を保持する。更に、ブリッジデータ保持部３１４を実現するプログラムは、マウスイベント情報、フォルダ情報を送受信するための、ウェブブラウザ４００とのインターフェースを公開している。
【００２２】
図４は、本発明の実施例１に係るウェブブラウザ上で実行するアドオンプログラム（コンテンツ表示部３１２、マウスイベント制御部３１３およびブリッジデータ保持部３１４としてコンピュータを機能させるための文書管理プログラム）の構成図である。
【００２３】
ウェブブラウザ４００は、ＨＴＭＬの解釈、ＪａｖａＳｃｒｉｐｔ（登録商標）の実行、外部拡張機能のアドオン機能を提供するアプリケーションである。
【００２４】
ＨＴＭＬ４００は、「ＨｙｐｅｒＴｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ」の略で、ウェブブラウザ４００で利用可能な、Ｗｅｂページを記述するためのマークアップ言語である。
【００２５】
ＪａｖａＳｃｒｉｐｔ（登録商標）４０２は、ウェブブラウザ４００で利用可能なスクリプト言語で記述されたプログラム（スクリプトプログラム）であり、以下の機能をウェブブラウザ４００に提供する。提供される機能は、マウスイベント制御部３１３からマウスイベント情報を受信する機能、ブリッジデータ保持部３１４に情報を設定する機能、ブリッジデータ保持部３１４に保存されている情報を取得する機能、コンテンツ表示部３１２へブリッジデータ保持部３１４から取得した情報を設定する機能である。
【００２６】
外部拡張機能アドオン４０３と４０４は、ウェブブラウザ４００の機能を拡張する拡張プログラム（アドオンプログラム）である。外部拡張機能アドオン４０３は、マウスイベント制御部３１３とブリッジデータ保持部３１４の機能を提供するためのアドオンプログラムである。外部拡張機能アドオン４０４は、コンテンツ表示部の機能を提供するためのアドオンプログラムである。
【００２７】
外部拡張機能アドオン４０４は、ウェブブラウザ上で動作するＡｄｏｂｅ  Ｆｌａｓｈ（商標）などのＲＩＡを用いて記述されたプログラムであり、コンテンツ表示部３１２の機能（ユーザインタフェース機能）を提供する。ウェブブラウザは、文書管理サーバから読み込んだＨＴＭＬのウェブページの記述に従い、外部拡張機能アドオン４０４により定義される画面を表示するための表示領域を、ウェブブラウザのウィンドウ内に定義する。そして、ウェブブラウザ上の当該表示領域内に、外部拡張機能アドオン４０４により定義される画面（図５（Ａ）のメイン画面５００のようなＵＩ）が表示される。すなわち、外部拡張機能アドオン４０４によって実現されるコンテンツ表示部３１２は、ウェブブラウザのウィンドウ内に表示されるメイン画面５００において、文書管理サーバＰＣ１０で管理しているファイルやフォルダ階層構造を表示する。
【００２８】
外部拡張機能アドオン４０３は、ＡｃｔｉｖｅＸ技術を用いて、ＯＳ（ウェブブラウザ４００と異なる外部アプリ）で発生したマウスイベントに基づいてマウスイベント情報を取得する機能や、該マウスイベント情報を保持する機能を実現するためのプログラムである。更に、外部拡張機能アドオン４０３は、マウスイベント情報やメイン画面５００上に表示されているフォルダの情報を、ＪａｖａＳｃｒｉｐｔ（登録商標）４０２を介して外部拡張機能アドオン４０４との間で通信する。これにより、メイン画面５００上に表示されているファイルをＯＳなどで管理されている所望のフォルダにＤ＆Ｄする操作に応じて、文書管理サーバＰＣ１０で管理しているファイルをクライアントＰＣ２０へダウンロードするように機能させる。
【００２９】
コンテンツ表示部３１２によってウェブブラウザのウィンドウ上に表示される図５のメイン画面５００は、ヘッダー表示領域５０１、ツリー表示領域５０２、コンテンツ表示領域５０３、プロパティ表示領域５０４、フッター表示領域５０５より構成される。
【００３０】
コンテンツ表示部３１２は、ヘッダー表示領域５０１に、文書管理システムの名前やメニューなどを表示する。また、コンテンツ表示部３１２は、ツリー表示領域５０２内に、（文書）ファイルを格納するフォルダを階層的に表示する。更に、コンテンツ表示領域５０３には、ツリー表示領域５０２で選択されたフォルダ内に格納されている文書やフォルダが表示される。なお、図５のメイン画面５００は、ツリー表示領域５０２で「トップフォルダ」が選択されている場合のコンテンツ表示領域５０３の表示例を示している。なお、コンテンツ表示部３１２は、コンテンツ表示領域５０３の表示形式を変更することが可能であり、切り替えボタンなどの操作によりアイコン表示とリスト表示を切り替えることができる。また、プロパティ表示領域５０４には、コンテンツ表示領域５０３で選択されているコンテンツ（ファイルまたはフォルダ）のプロパティが表示される。プロパティは、当該コンテンツの名称やパスなどの情報が含まれる。また、フッター表示領域５０５には、アプリケーションバージョンやＣｏｐｙＲｉｇｈｔｓなどの情報が表示される。
【００３１】
コンテンツのダウンロードにおいて、ダウンロード対象のコンテンツはドラッグ操作が行われた時のマウス座標により判定する。ツリー表示領域５０２に表示されるフォルダ、あるいは、コンテンツ表示領域５０３に表示されるフォルダとファイルが、ダウンロード対象としてＤ＆Ｄ操作されるコンテンツとなりうる。
【００３２】
コンテンツのアップロードにおいては、アップロード先のフォルダは、ドロップ操作が行われたときのマウス座標により判定する。コンテンツ表示部３１２は、マウスイベント情報から座標位置を取得し、当該取得したマウス座標に基づいて、ツリー表示領域５０２やコンテンツ表示領域５０３に表示されているフォルダの表示位置との重なりを検知する。図５（Ｂ）は、ツリー表示領域５０２やコンテンツ表示領域５０３に表示されるフォルダの１つに対して定義されている座標情報を説明するための図である。フォルダ表示領域５１０は、表示しているフォルダのマウス座標の重なりを検知するために定義されている領域であり、左上を始点とし、右下を終点として当該領域の位置を保持している。コンテンツ表示部３１２は、フォルダ表示領域５１０の中にマウス座標５１１が含まれている場合、フォルダとマウス座標が重なっていると判断する。なお、フォルダ表示領域は、フォルダが表示されている領域や表示形式に応じて、定義される形状が異なる。例えば、ツリー表示領域５０２に表示されるフォルダに対して定義されるフォルダ表示領域は、図５（Ｃ）のフォルダアイコンとフォルダ名を囲むような長方形の領域５２０で定義される。また、コンテンツ表示領域５０３でアイコン表示している場合、コンテンツ表示領域５０３に表示されるフォルダに対して定義されるフォルダ表示領域は、図５（Ｄ）の領域５３０のように定義される。また、コンテンツ表示領域５０３でリスト表示している場合、コンテンツ表示領域５０３に表示されるフォルダに対して定義されるフォルダ表示領域は、図５（Ｅ）の領域５４０のように定義される。
【００３３】
＜＜処理の説明＞＞
以下、本実施例１のシステムの処理の流れについて、図６〜図９を用いて説明する。
【００３４】
図６は、ウェブブラウザにおいてＡｄｏｂｅ  Ｆｌａｓｈ等のＲＩＡにより文書管理サーバで管理されているコンテンツを表示し、ドラッグされたコンテンツをクライアントＰＣ２０のＯＳ上のフォルダにダウンロードするまで一連の流れを示すシーケンスである。シーケンスは大きく分けて以下の３つの処理に分かれている。すなわち、文書管理サーバＰＣ１０で管理されているコンテンツを表示するシーケンス（Ｓ１０）、ＲＩＡにより表示されているコンテンツがドラッグされたときの処理のシーケンス（Ｓ２０）、コンテンツがＯＳのフォルダにドロップされ、該コンテンツ（ファイル）がダウンロードされるシーケンス（Ｓ３０）である。各シーケンスにおける処理の詳細について以下に記す。
【００３５】
ステップＳ１０において、コンテンツ表示部３１２は、文書管理サーバＰＣ１０よりコンテンツ情報（フォルダ情報とファイル情報を含む）を取得する。コンテンツ情報は、コンテンツの名称や、コンテンツを特定するための一意のＩＤをひとまとめにした情報である。コンテンツを特定するための一意の情報は、パスであってもかまわない。また複数のコンテンツ情報を同時に取得することが可能である。コンテンツ表示部３１２は、取得したコンテンツ情報に基づいて、ツリー表示領域５０２およびコンテンツ表示領域５０３にコンテンツを表示する。コンテンツを表示する位置や大きさについては、コンテンツ表示部３１２の中で定義するものとするが、定義の方法については、内部リソースとして定義しても良いし、外部ファイルで定義しても良い。
【００３６】
ステップＳ２０において、コンテンツ表示部３１２は、マウスイベントを取得すると、当該取得したマウスイベント情報のイベント種類により処理を振り分ける。すなわち、マウスイベント情報が、コンテンツがドラッグされ且つメイン画面５００外にドラッグされるドラッグアウトが行われたか、メイン画面５００内でのドラッグかに応じて処理を切り替える。マウスがメイン画面５００から出たことを示すドラッグアウトでない場合（すなわちメイン画面５００内でのドラッグの場合）、コンテンツ表示部３１２は、ドラッグ操作に合わせた位置にコンテンツ再描画を行う。一方、マウスイベント情報がドラッグアウトの場合、コンテンツ表示部３１２は、ドラッグ対象コンテンツの情報を取得し、ブリッジデータ保持部３１４に該コンテンツ情報を送信してドラッグ開始を通知する。更に、ブリッジデータ保持部３１４は、マウスイベント制御部３１３に当該受信したコンテンツ情報を送信することにより、ドラッグ開始を通知する。マウスイベント制御部３１３は、受信したコンテンツの情報を含むドラッグオブジェクトを生成し、更に、ウェブブラウザ外（すなわちＯＳのフォルダ）へのドロップの監視を開始する。
【００３７】
ウェブブラウザ外（すなわちＯＳのフォルダ）へのドロップ操作が行われると、ステップＳ３０において、マウスイベント制御部３１３は、ＯＳ（エクスプローラ）からの通知に基づきマウスのドロップ操作を検知する。ドロップされたコンテンツがフォルダである場合は、マウスイベント制御部３１３は、文書管理サーバＰＣ１０にドロップされたフォルダのコンテンツ情報を送信し、コンテンツリスト（該フォルダに含まれるファイルのリスト）を受信する。その後、マウスイベント制御部３１３は、文書管理サーバＰＣ１０にコンテンツリストに含まれるファイルを送信するように指示することによりダウンロード処理を実行する。なお、ドロップされたコンテンツがファイルの場合は、該ファイルのコンテンツ情報を送信して、該ファイルのダウンロード処理を指示する。これら一連の処理の間、マウスイベント制御部３１３は、ブリッジデータ保持部３１４を介してコンテンツ表示部３１３に進捗通知（ファイルリスト取得通知、ダウンロードの進捗通知、ダウンロード完了通知）を行う。コンテンツ表示部３１３は、受信した進捗通知の情報を基に進捗状況をメイン画面５００上に表示する。
【００３８】
上記Ｓ１０〜Ｓ３０の各処理の詳細について、下記のフローチャートを用いて説明する。
【００３９】
＜文書管理サーバＰＣ１０で管理されているコンテンツを表示する処理（Ｓ１０）＞
図７は、コンテンツ表示部３１２が、文書管理サーバＰＣ１０からフォルダ情報およびファイル情報を含むコンテンツ情報を取得し、当該取得したコンテンツ情報を、ウェブブラウザ４００上のメイン画面５００に表示する処理（Ｓ１０）の詳細を示すフローチャートである。
【００４０】
ステップＳ７００において、コンテンツ表示部３１２は、コンテンツ情報を取得するためのリクエストを作成し、当該作成したコンテンツ情報取得のリクエストを文書管理サーバＰＣ１０へ送信する。
【００４１】
ステップＳ７０１において、文書管理サーバＰＣ１０のコンテンツ制御部３０２は、コンテンツ情報取得のリクエストを受信すると、コンテンツ情報を取得し、当該取得したコンテンツ情報をレスポンスとしてコンテンツ表示部３１２へ送信する。
【００４２】
ステップＳ７０２はループ端の開始記号であり、コンテンツ表示部３１２は、文書管理サーバＰＣ１０から取得したコンテンツ情報の数分だけ、Ｓ７０３〜Ｓ７０７の処理を繰り返し行う。
【００４３】
ステップＳ７０３において、コンテンツ表示部３１２は、当該取得したコンテンツ情報がフォルダの情報であるか否か判断を行う。当該取得したコンテンツ情報がフォルダの情報である場合はステップＳ７０４に遷移し、ツリー表示領域５０２に当該取得したフォルダ情報に基づいてフォルダアイコンの表示を行う。一方、当該取得したコンテンツ情報がファイルの情報である場合はステップＳ７０５に遷移する。
【００４４】
ステップＳ７０５において、コンテンツ表示部３１２は、コンテンツ表示領域５０３に対して設定されている表示形式の判断を行う。表示形式がアイコン形式であると判断した場合は、ステップＳ７０６に遷移し、コンテンツ制御部３１２は、当該取得したコンテンツ情報に対応するコンテンツをアイコン形式でコンテンツ表示領域５０３に表示する。一方、表示形式がリスト形式と判断した場合は、ステップＳ７０７に遷移し、コンテンツ制御部３１２は、当該取得したコンテンツ情報に対応するコンテンツをリスト形式でコンテンツ表示領域５０３に表示する。
【００４５】
ステップＳ７０８はループ端の終了記号であり、コンテンツ表示部３１２は、文書管理サーバＰＣ１０から取得したコンテンツ情報全てに対してＳ７０３〜Ｓ７０７の処理を行えばループを抜けて、図７のフローチャートの処理を終了する。
【００４６】
＜ＲＩＡにより表示されているコンテンツがドラッグされたときの処理（Ｓ２０）＞
図８は、ウェブブラウザ４００上で実行されるＲＩＡによってメイン画面５００内に表示されているコンテンツがドラッグされた場合の処理（Ｓ２０）の詳細を示すフローチャートである。特に、コンテンツがウェブブラウザのメイン画面５００外へドラッグアウトされた場合、ドロップ処理の監視を開始するまでの処理を示す。
【００４７】
ステップＳ８００において、コンテンツ表示部３１２は、ウェブブラウザ内において発生したマウスイベントに基づき、メイン画面５００に関わるマウスイベント情報を取得する。ステップＳ８０１において、コンテンツ表示部３１２は、当該取得したマウスイベント情報に含まれるマウスイベント種類を取得する。
【００４８】
ステップＳ８０２において、マウスイベント制御部３１３は、マウスイベント種類がドラッグアウト以外である（メイン画面５００内でのドラッグなどのマウス操作）と判断した場合、ステップＳ８０３に遷移する。一方、マウスイベント種類が、コンテンツをメイン画面５００外にドラッグするドラッグアウトであると判断した場合、ステップＳ８０４に遷移する。
【００４９】
ステップＳ８０３において、コンテンツ表示部３１２は、当該為されたマウスイベント（メイン画面５００内でのドラッグなど）に応じて、コンテンツを再描画して、処理を終了し、次のマウスイベントの発生を待機する。
【００５０】
ステップＳ８０４において、コンテンツ表示部３１２は、当該ドラッグアウトされたコンテンツに関する情報（ドラッグ元コンテンツ情報）を取得し、ブリッジデータ保持部３１４に送信する。ここで、ドラッグ元コンテンツ情報とは、該ドラッグアウトされたコンテンツを特定するためのＵＲＩ情報（例えば文書管理サーバに保存されているコンテンツを特定するためのＵＲＬ情報）、およびコンテンツの種類を示す情報を含むものとする。ステップＳ８０５において、ブリッジデータ保持部３１４は、コンテンツ表示部３１２から受信したドラッグ元コンテンツ情報を、ドラッグ開始通知としてマウスイベント制御部３１３に送信する。
【００５１】
マウスイベント制御部３１３は、ブリッジデータ保持部３１４からドラッグ開始通知としてドラッグ元コンテンツ情報を受信すると、ドラッグオブジェクトを生成して（Ｓ８０６）、更に、ドラッグ元コンテンツ情報をドラッグオブジェクトに保存する（Ｓ８０７）。ステップＳ８０８において、マウスイベント制御部３１３は、ドラッグ元コンテンツ情報が設定されたドラッグオブジェクトを、クライアントＰＣ２０のＯＳに登録することにより、ウェブブラウザ外でドロップ操作が行われたかの監視を開始する。
【００５２】
＜コンテンツをフォルダにダウンロードする処理（Ｓ３０）＞
図９は、ウェブブラウザ外でコンテンツのドロップ操作が為された場合に、コンテンツをダウンロードする処理の流れを示すフローチャートである。
【００５３】
ステップＳ９００において、マウスイベント制御部３１３は、ドラッグオブジェクトをドロップするドロップ操作のマウスイベントをＯＳから受信する。
【００５４】
ステップＳ９０１において、マウスイベント制御部３１３は、ドラッグオブジェクトに保存されているドラッグ元コンテンツ情報の種類がフォルダであるかファイルであるか判断する。ドラッグ元コンテンツ情報の種類がフォルダである場合、マウスイベント制御部３１３は、文書管理サーバＰＣ１０にドラッグ元コンテンツ情報を送信して、当該フォルダ内に含まれるダウンロード対象のコンテンツのリスト（コンテンツリスト）の取得リクエストを行い、ステップＳ９０２に遷移する。一方、ドラッグ元コンテンツ情報の種類がファイルである場合、ステップＳ９０３に遷移する。
【００５５】
ステップＳ９０２において、文書管理サーバＰＣ１０は、マウスイベント制御部３１３から受信したドラッグ元コンテンツ情報により特定されるフォルダの配下に含まれる全てのコンテンツの情報（コンテンツ情報）を取得する。コンテンツ情報には、該コンテンツを特定するためのＵＲＩ情報が含まれる。そして、該フォルダと該フォルダに含まれる全てのコンテンツとに関するコンテンツ情報のリスト（コンテンツリスト）を、マウスイベント制御部３１３に返却する。
【００５６】
ステップＳ９０３において、マウスイベント制御部３１３は、コンテンツ種類がファイルであった場合は、そのファイルのコンテンツ情報を、処理対象のコンテンツリストとして設定する。また、マウスイベント制御部３１３は、コンテンツ種類がフォルダであった場合は、ステップＳ９０２で文書管理サーバＰＣ１０から送信されたコンテンツ情報のリストを、処理対象のコンテンツリストとして設定する。
【００５７】
ステップＳ９０４において、マウスイベント制御部３１３は、コンテンツリスト取得完了をブリッジデータ保持部３１４に通知する。ステップＳ９０５において、ブリッジデータ保持部３１４は、マウスイベント制御部３１３からコンテンツリスト取得完了通知を受信すると、更に、コンテンツ表示部３１２にコンテンツリスト取得完了通知を送信する。ステップＳ９０６において、コンテンツ表示部３１２は、ブリッジデータ保持部３１４から受信したコンテンツリスト取得完了通知に基づいて、進捗状況をメイン画面５００上に表示する。
【００５８】
ステップＳ９０７はループ端の開始記号であり、コンテンツリストに設定されているコンテンツ情報を順に処理対象として、Ｓ９０８〜Ｓ９１３の処理を繰り返し行う。
【００５９】
ステップＳ９０８において、マウスイベント制御部３１３は、処理対象のコンテンツ情報の種類を確認する。コンテンツ情報の種類がフォルダである場合、ステップＳ９０９に遷移する。一方、コンテンツ情報の種類がファイルである場合、マウスイベント制御部３１３は、コンテンツ情報を文書管理サーバＰＣ１０に送信して、ファイルのダウンロード指示を行い、ステップＳ９１０に遷移する。
【００６０】
ステップＳ９０９において、マウスイベント制御部３１３は、ダウンロード先のフォルダ内に、コンテンツ情報に対応するフォルダを作成する。
【００６１】
ステップＳ９１０において、文書管理サーバＰＣ１０は、マウスイベント制御部３１３から受信したコンテンツ情報に基づいてダウンロード対象のコンテンツ（ファイル）を特定し、クライアントＰＣ２０に当該特定したファイルの送信を開始する。
【００６２】
ステップＳ９１１において、マウスイベント制御部３１３は、ダウンロード進捗通知をブリッジデータ保持部３１４に送信する。ダウンロード進捗の情報の一例としては、ダウンロード済みのファイルの件数や、コンテンツリスト中のダウンロード済みファイルのパーセンテージなどがあるが、それ以外の情報であっても構わない。
【００６３】
ステップＳ９１２において、ブリッジデータ保持部３１４は、マウスイベント制御部３１３からダウンロード進捗の情報を受信すると、当該受信したダウンロード進捗の情報をコンテンツ表示部３１２に送信する。ステップＳ９１３において、コンテンツ表示部３１２は、ブリッジデータ保持部３１４から受信したダウンロード進捗の情報に基づいて、進捗状況をメイン画面５００上に表示するように制御する。
【００６４】
ステップＳ９１４はループ端の終了記号であり、コンテンツリストに設定されている全てのコンテンツ情報を処理対象としてＳ９０８〜Ｓ９１３の処理の実行が行われれば、ループを抜けてＳ９１５の処理に遷移する。
【００６５】
ステップＳ９１５において、ダウンロード対象のコンテンツ（ファイル）全てのダウンロードが終了すれば、マウスイベント制御部３１３は、ブリッジデータ保持部３１４にダウンロード完了通知を送信する。ステップＳ９１６において、ブリッジデータ保持部３１４は、マウスイベント制御部３１３からダウンロード完了通知を受信すると、コンテンツ表示部３１２にダウンロード完了通知を送信する。ステップＳ９１７において、コンテンツ表示部３１２は、ブリッジデータ保持部３１４からダウンロード完了通知を受信すると、ダウンロード完了メッセージをメイン画面５００上に表示する。
【００６６】
上述したように構成することにより、ＲＩＡにより表示されたコンテンツのダウンロードを、Ｄ＆Ｄ操作で実行することができる。
【００６７】
＜コンテンツのダウンロード処理とアップロード処理の切り替え＞
Ｄ＆Ｄによるファイルのダウンロード処理とアップロード処理の切り替えは、以下のようにして行われる。すなわち、ドラッグが開始されたときのマウスイベントが、ウェブブラウザ上のＲＩＡにより表示されているメイン画面５００内のコンテンツに対するドラッグであると判断した場合は、上述した図６〜９の処理によりダウンロード処理が実行される。一方、ドラッグが開始されたときのマウスイベントが、ＯＳ等のファイルシステムで管理されているファイルに対するドラッグであり、更に、ウェブブラウザ上のＲＩＡにより表示されているメイン画面５００内のフォルダに対するドロップであると判断した場合は、後述する図１０〜１４の処理によりアップロード処理が実行される。アップロード処理は、特許文献２におけるアップロード処理と同様である。
【００６８】
＜ファイルのアップロード処理の詳細＞
図１０は、ウェブブラウザ上でＲＩＡを用いてフォルダを表示した後、クライアントＰＣ２０のＯＳなどで管理されているファイルをＤ＆Ｄすることにより、文書管理サーバＰＣ１０上の対応するフォルダにアップロードするまで一連の流れを示すシーケンスである。
【００６９】
シーケンスは大きく分けて以下の５つの処理に分かれている。すなわち、フォルダを表示するフロー（Ｓ４０）、マウスイベント情報を取得するフロー（Ｓ５０）、マウス座標からフォルダに重なっているかを検知するフロー（Ｓ６０）、ファイルをフォルダにアップロードするフロー（Ｓ７０）、エラーメッセージを表示するフロー（Ｓ８０）である。各処理の詳細について以下に記す。なお、ステップＳ４０の処理については、図６のＳ１０と同様のため、詳細な説明を省略する。
【００７０】
ステップＳ５０において、マウスイベント制御部３１３は、クライアントＰＣのＯＳで発生したマウスイベントを取得し、当該取得したマウスイベントに基づきマウスの位置がメイン画面５００内にあれば、マウスイベント情報としてブリッジデータ保持部３１４に設定する。マウスイベント情報は、イベント種類、座標位置、ドラッグされている選択ファイル（または選択フォルダ）の情報を含んでいる。ここで、イベント種類は、マウスがメイン画面５００に入った事を示すドラッグエンター、マウスがメイン画面５００上でドラッグ中を示すドラッグオーバー、マウスがメイン画面５００から出たことを示すドラッグアウト、メイン画面５００上にドラッグされた選択ファイル（フォルダ）がドロップされたことを示すドロップがある。マウスイベント制御部３１３は、マウスイベント情報をブリッジデータ保持部３１４に保存した旨を、ウェブブラウザ４００に通知する。
【００７１】
ステップＳ６０において、ウェブブラウザ４００は、ブリッジデータ保持部３１４に保持されているマウスイベント情報を取得し、当該取得したマウスイベント情報をコンテンツ表示部３１２に設定（通知）する。コンテンツ表示部３１２は、設定されたマウスイベント情報に含まれている座標位置を取得し、メイン画面５００に表示しているフォルダの座標位置と比較することにより、表示中のフォルダにマウスが重なっているかを検知する。フォルダとの重なりを検知した場合、コンテンツ表示部３１２は、当該重なっていると判定したフォルダに関するフォルダ情報をウェブブラウザ４００に設定する。ウェブブラウザ４００は、当該設定されたフォルダ情報をアップロード先のフォルダ情報としてブリッジデータ保持部３１４に保存し、更に、該フォルダ情報をブリッジデータ保持部３１４に保存した旨を、マウスイベント制御部３１３に通知する。なお、フォルダ情報に関しては、マウス座標位置とフォルダとが重なっていると判定した後に設定するのではなく、コンテンツ表示部３１２が、アップロードを行うかどうかを促す画面を表示して、ユーザからのアップロード指示を受けた時に設定しても良い。また、ユーザからのアップロードをキャンセルする指示を受けた時には、設定しないようにしても良い。
【００７２】
ステップＳ７０において、マウスイベント制御部３１３は、ブリッジデータ保持部３１４からアップロード先のフォルダ情報とアップロード対象の選択ファイル（選択フォルダ）の情報とを取得する。マウスイベント制御部３１３は、文書管理サーバＰＣ１０のアップロード先のフォルダへ、当該選択対象のファイル（またはフォルダ）をアップロードする。文書管理サーバＰＣ１０は、指示を受けたアップロード先のフォルダに、当該受信したファイル（フォルダ）を登録する。そして、文書管理サーバＰＣ１０は、登録結果をマウスイベント制御部３１３へ返す。登録結果は、正常に登録が行われたのか、エラーが発生したのかを示す一意の処理結果番号を含んでいる。マウスイベント制御部３１３は、処理結果番号がエラーと判断した場合、エラー情報としてエラーコード（処理結果番号）をブリッジデータ保持部３１４へ設定保存し、更に、ウェブブラウザ４００にエラー情報設定の通知を行う。
【００７３】
ステップＳ８０において、ウェブブラウザ４００は、エラー情報設定の通知を受けると、エラー情報をブリッジデータ保持部３１４から取得し、当該取得したエラー情報をコンテンツ表示部３１２に設定する。コンテンツ表示部３１２は、当該設定されたエラー情報に基づいてエラーコードに対応するエラーメッセージを表示する。
【００７４】
次に、上述したＳ５０〜Ｓ８０の各処理の詳細について、フローチャートを用いて説明する。
【００７５】
＜マウスイベント情報を取得する処理（Ｓ５０）の詳細＞
図１１は、マウスイベント制御部３１３がＯＳからのマウスイベントに基づきマウスイベント情報を取得し、ブリッジデータ保持部３１４へ当該マウスイベント情報を保存する処理の流れを示すフローチャートである。
【００７６】
ステップＳ１０００において、マウスイベント制御部３１３は、ＯＳからのマウスイベントに基づき、メイン画面５００に関わるマウスイベント情報を取得する。ステップＳ１００１において、マウスイベント制御部３１３は、当該マウスイベント情報に含まれるマウスイベント種類を求める。
【００７７】
ステップＳ１００２において、マウスイベント制御部３１３は、マウスイベント種類がドラッグエンターと判断した場合、Ｓ１００３に進む。Ｓ１００３において、マウスイベント制御部３１３は、マウスイベント情報に含まれるドラッグ元のファイル情報（ドラッグされているファイルの情報）を、ブリッジデータ保持部３１４に保存する。
【００７８】
一方、Ｓ１００２において、マウスイベント種類がドラッグエンター以外と判断した場合、Ｓ１００４に進み、マウスイベント制御部３１３は、マウスイベント種類がドラッグオーバー、ドラッグアウト、ドロップのいずれかであるか否かを判断する。そして、マウスイベント種類がドラッグオーバー、ドラッグアウト、ドロップのいずれかであると判断した場合はＳ１００５に進む一方、それ以外と判断した場合は処理を終了する。
【００７９】
ステップＳ１００５において、マウスイベント制御部３１３は、マウスイベント情報に含まれるマウスイベント種類を、ブリッジデータ保持部３１４に保存する。ステップＳ１００６において、マウスイベント制御部３１３は、マウスイベント情報に含まれているマウス座標位置を取得し、当該マウス座標位置をメイン画面５００の左上を起点とした相対座標に変換した後、ブリッジデータ保持部３１４に保存する。ステップＳ１００７において、マウスイベント制御部３１３は、ブリッジデータ保持部３１４にマウスイベント情報を保存した旨を、ウェブブラウザ４００に通知する。
【００８０】
＜マウスが表示フォルダに重なっているかを検知する処理（Ｓ６０）の詳細＞
図１２は、マウスイベント情報に含まれているマウス座標位置に基づいて、マウスと重なるフォルダを検知する処理の流れを示すフローチャートである。
【００８１】
ステップＳ１１００において、ウェブブラウザ４００は、Ｓ１００７で為されたマウスイベント情報保存の通知を受けると、ブリッジデータ保持部３１４に保存されているマウスイベント情報を取得して、コンテンツ表示部３１２に設定する。
【００８２】
ステップＳ１１０１において、コンテンツ表示部３１２は、当該設定されたマウスイベント情報に含まれているマウス座標位置を取得する。
【００８３】
ステップＳ１１０２はループ端を示しており、コンテンツ表示部３１２は、ツリー表示領域５０２およびコンテンツ表示領域５０３に表示しているフォルダそれぞれを順に判定対象として、Ｓ１１０３〜Ｓ１１０５の処理を繰り返し行う。
【００８４】
ステップＳ１１０３において、コンテンツ表示部３１２は、判定対象のフォルダに関するフォルダ表示領域５１０の座標位置（図５の５２０〜５４０）を取得する。
【００８５】
ステップＳ１１０４において、コンテンツ表示部３１２は、マウス座標のＸ座標値と当該判定対象フォルダのフォルダ表示領域のＸ座標範囲とを比較し、マウス座標が範囲内にあると判断した場合は、ステップＳ１１０５に進む。ステップＳ１１０５では、コンテンツ表示部３１２は、更に、マウス座標のＹ座標値とフォルダ表示領域のＹ座標範囲とを比較し、マウス座標が範囲内にあると判断した場合は、ループ処理を終了してステップＳ１１０７に進む。
【００８６】
ステップＳ１１０６はループの終了を示すループ端であり、Ｓ１１０４またはＳ１１０５でマウス座標が当該判定対象のフォルダのフォルダ表示範囲外であると判定した場合、判定対象フォルダを次のフォルダに変更してＳ１１０３〜Ｓ１１０５の処理を行う。なお、表示しているフォルダ全てとの判定が終わった場合は、マウス座標に重なっているフォルダが無いと判断して、ループ処理を終了する。
【００８７】
ステップＳ１１０７において、コンテンツ表示部３１２は、マウス座標がフォルダと重なっていると検知した場合、ステップＳ１１０８に進み、コンテンツ表示部３１２は、マウスイベント情報に含まれているマウスイベント種類を取得する。
【００８８】
ステップＳ１１０９において、コンテンツ表示部３１２は、当該取得したマウスイベント種類がドラッグオーバーであるかドロップであるか判断する。コンテンツ表示部３１２は、ドラッグオーバーであると判断した場合、Ｓ１１１０に進み、メイン画面５００に表示されているフォルダのうち、当該マウス座標と重なっていると判断したフォルダをフォーカス表示（強調表示）する。
【００８９】
一方、Ｓ１１０９でドロップであると判断した場合は、ステップＳ１１１１に進み、コンテンツ表示部３１２は、当該マウス座標と重なっていると判断したフォルダに関するフォルダ情報を作成してウェブブラウザ４００へ返す。なお、ここで作成されるフォルダ情報は、名称やフォルダを示す一意のＩＤをひとまとめにした情報（すなわち、アップロード先となるフォルダを識別するための情報）である。
【００９０】
ステップＳ１１１２において、ウェブブラウザ４００は、ファイルがドロップされたフォルダに関するフォルダ情報が返ってきた（すなわちフォルダ情報が設定された）と判断した場合、ステップＳ１１１３に進んで、当該フォルダ情報をブリッジデータ保持部３１４へ保存する。
【００９１】
ステップＳ１１１４において、ウェブブラウザ４００は、フォルダ情報をブリッジデータ保持部３１４に保存した旨を、マウスイベント制御部３１３へ通知する。
【００９２】
＜ファイルをアップロードする処理（Ｓ７０）の詳細＞
図１３は、マウスイベント制御部３１３が、ブリッジデータ保持部３１４に保存されているフォルダ情報を取得して、ドラッグされていたファイルを、文書管理サーバＰＣ１０の対象フォルダにアップロードする処理の流れを示すフローチャートである。
【００９３】
ステップＳ１２００において、マウスイベント制御部３１３は、Ｓ１１１３でブリッジデータ保持部３１４に保存されたフォルダ情報（アップロード先となるフォルダの情報）を取得する。
【００９４】
ステップＳ１２０１において、マウスイベント制御部３１３は、Ｓ１００３でブリッジデータ保持部３１４に保存されたドラッグ元ファイル情報（ドラッグ対象のファイルに関する情報）を取得する。
【００９５】
ステップＳ１２０２において、マウスイベント制御部３１３は、ドラッグ元ファイル情報に含まれているファイルパスを取得し、当該取得したファイルパスに基づいて特定される当該対象ファイルの読み込みを行う。
【００９６】
ステップＳ１２０３において、マウスイベント制御部３１３は、当該読み込んだ対象ファイルを、Ｓ１２００で取得したフォルダ情報に基づいて特定されるフォルダにアップロードを試みる。
【００９７】
ステップＳ１２０４において、文書管理サーバＰＣ１０のコンテンツ制御部３０２は、当該指定されたフォルダにアップロードする権限があるかどうか判断し、権限が無いと判断した場合は、ステップＳ１２０９に進む。
【００９８】
一方、ステップＳ１２０４でアップロード権限があると判断した場合は、ステップＳ１２０５に進み、コンテンツ制御部３０２は、当該対象ファイルに不正なファイル名が指定されているか否か判断を行う。なお、不正なファイル名の定義については、内部リソースとして定義しても良いし、外部ファイルに定義しても良い。Ｓ１２０５で正しいファイル名が指定されていない（不正なファイル名である）と判断した場合はステップＳ１２０９に進む。
【００９９】
コンテンツ制御部３０２は、ステップＳ１２０５で正しいファイル名が指定されている（不正なファイル名ではない）と判断した場合、ステップＳ１２０６に進み、アップロード先のフォルダ内に同名のファイルが存在するか否かを判断する。コンテンツ制御部３０２は、ステップＳ１２０６で同名ファイルが無いと判断した場合は、ステップＳ１２０８に進む一方、ステップＳ１２０６で同名ファイルがあると判断した場合は、ステップＳ１２０７に進む。
【０１００】
ステップＳ１２０７において、コンテンツ制御部３０２は、当該対象ファイルでアップロード先にある同名ファイルを上書きするか否か判断する。Ｓ１２０７で上書きする（例えば上書きモードである）と判断した場合はステップＳ１２０８に進み、上書きしないと判断した場合はステップＳ１２０９に進む。
【０１０１】
ステップＳ１２０８において、コンテンツ制御部３０２は、当該対象ファイルをアップロード先のフォルダに登録する登録処理を行い、登録が正常終了した旨をマウスイベント制御部３１３へ返す。
【０１０２】
ステップＳ１２０９において、コンテンツ制御部３０２は、どのようなエラーが生じたのかを識別するためのエラーコードを含むエラー情報を作成し、マウスイベント制御部３１３へ返す。
【０１０３】
ステップＳ１２１０において、マウスイベント制御部３１３は、エラー情報が返されたか否かを判断し、エラー情報が返されてきたと判断した場合は、ステップＳ１２１１に進み、当該エラー情報をブリッジデータ保持部３１４へ保存する。
【０１０４】
ステップＳ１２１２において、マウスイベント制御部３１３は、ブリッジデータ保持部３１４にエラー情報を保存した旨を、ウェブブラウザ４００へ通知する。
【０１０５】
＜エラーメッセージを表示するフロー（Ｓ８０）＞
図１４は、ウェブブラウザ４００が、ブリッジデータ保持部３１４からエラー情報を取得して、コンテンツ表示部３１２に設定し、コンテンツ表示部３１２がエラーメッセージを表示する処理を示すフローチャートである。
【０１０６】
ウェブブラウザ４００は、マウスイベント制御部３１３からＳ１２１２におけるエラー情報保存の通知を受けると、ステップＳ１３００において、ブリッジデータ保持部３１４からエラー情報を取得し、当該取得したエラー情報をコンテンツ表示部３１２に設定する。
【０１０７】
ステップＳ１３０１において、コンテンツ表示部３１２は、当該設定されたエラー情報に含まれているエラーコードを取得する。
【０１０８】
ステップＳ１３０２において、コンテンツ表示部３１２は、当該取得したエラーコードに対応するエラーメッセージを取得する。なお、各エラーコードに対応するエラーメッセージは、内部リソースとして予め定義されていても良いし、外部ファイルに定義されていても良い。
【０１０９】
ステップＳ１３０３において、コンテンツ表示部３１２は、エラーコードとエラーメッセージを画面に表示する。
【０１１０】
上述したように、コンテンツのダウンロード処理とアップロード処理とを、Ｄ＆Ｄ操作で容易に切り替えることができる。
【０１１１】
［実施例２］
本発明の実施例２に係るシステムの処理の流れについて、図１５を用いて概要を説明する。
【０１１２】
文書管理サーバには、各ファイルの過去バージョンを保存するバージョン管理機能を有するものがある。実施例１においては、図７のフローにおいて表示しているファイルは、各フォルダの配下にあるファイルの最新版であるため、過去バージョンのダウンロードについては考慮されていなかった。実施例２では、ファイルの過去バージョンのダウンロードについて記載する。なお、実施例２は、図７のフローについて拡張を行うものであり、それ以外の部分については、実施例１と同じである。以下、異なる部分についてフローチャートを用いて説明する。
【０１１３】
＜過去バージョンのコンテンツを表示する（Ｓ１４００）＞
図１５は、図７のフローにより表示されたファイルに対して、ユーザにより過去バージョンを表示するように指示された場合の処理の流れを示すフローチャートである。ウェブブラウザ４００上のメイン画面５００に、文書管理サーバＰＣ１０から特定のファイルの過去バージョンのファイル情報を取得して、各バージョンのファイルを表示する。
【０１１４】
ステップＳ１４００において、コンテンツ表示部３１２は、ユーザにより指定されたファイルの過去バージョンに関する情報を取得するためのリクエスト情報を作成し、文書管理サーバＰＣ１０に該ファイルの過去バージョン取得リクエストを送信する。
【０１１５】
ステップＳ１４０１において、文書管理サーバＰＣ１０のコンテンツ制御部３０２は、過去バージョン取得リクエストを受信すると、当該指定されたファイルの過去バージョンのファイル情報をコンテンツ制御部３０２から取得する。そして、コンテンツ制御部３０２は、当該取得した過去バージョンのファイル情報を、レスポンスとしてコンテンツ表示部３１２へ送信する。
【０１１６】
ステップＳ１４０２はループ端の開始記号であり、当該受信したファイルの過去バージョンそれぞれを順に処理対象として、Ｓ１４０３の処理を繰り返し行う。ステップＳ１４０３において、コンテンツ制御部３１２は、処理対象の過去バージョンのファイルの情報をコンテンツ表示領域５０２にリスト形式で表示する。ステップＳ１４０４はループ端の終了記号であり、全ての過去バージョンに対してＳ１４０３の処理を行ったら、ループを抜けて処理を終了する。
【０１１７】
図１５の処理により表示された過去バージョンのファイルのアイコンに対してＤ＆Ｄ操作が行われた場合は、実施例１の図６のＳ２０〜Ｓ３０で説明した処理と同様の処理を行うことにより、ＲＩＡにより表示されている過去バージョンのファイルをＤ＆Ｄ操作でダウンロードすることができる。
【０１１８】
［実施例３］
上述した実施例１〜２の図９の処理によりダウンロードしたファイルのＯＳのファイルシステムにおける更新日時は、ダウンロードを実行した日時となるので、文書管理サーバＰＣ１０上で管理している更新日時とは差異が発生する。これに対し、実施例３では、図９のフローについて拡張を行うものであり、それ以外の部分については、実施例１〜２と同様である。以下、本発明の実施例３に係るシステムの処理の流れについて、図１６を用いて概要を説明する。
【０１１９】
図１６は、図９のフローのＳ９１０〜Ｓ９１１の間の処理を拡張するものであり、ダウンロードしたファイルの更新日時を、文書管理サーバＰＣ１０で管理している更新日時に合わせる処理を示すフローチャートである。すなわち、図９のフローに対して追加するステップ（Ｓ１５００〜Ｓ１５０２）は、ステップＳ９１０およびＳ９１１の間に挿入される。
【０１２０】
ステップＳ１５００において、マウスイベント制御部３１３は、文書管理サーバＰＣ１０に対して、Ｓ９０２で取得したダウンロード済みファイルのＵＲＬを指定して、文書管理サーバＰＣ１０上における該ファイルの更新日時の取得リクエストを送信する。
【０１２１】
ステップＳ１５０１において、文書管理サーバＰＣ１０は、受信したＵＲＬにより特定されるファイルの文書管理サーバＰＣ１０上で管理している更新日時を取得し、マウスイベント制御部３１３に返却する。
【０１２２】
ステップＳ１５０２において、マウスイベント制御部３１３は、受信したファイルの更新日時をダウンロード済みのファイルに適用する。
【０１２３】
［実施例４］
実施例１においては、ドロップ先がクライアントＰＣ２０上のＯＳのファイルシステムにおけるフォルダであり、そのフォルダへのダウンロードを実現するものであった。本実施例４では、ドロップ先が、クライアントＰＣ２０のデスクトップ上に配置された、ファイルのドロップを受け入れるウィジェットのようなプログラムに関して記載する。ウィジェットの機能としては、ウィジェット上にドロップしたファイルを印刷するなどが考えられるが、それ以外の機能を持つものでも構わない。以下、実施例４に係るシステムの処理の流れについて、図１７を用いて概要を説明する。
【０１２４】
図１７は、図９のフローを拡張するものであり、クライアントＰＣ２０のデスクトップ上に配置されたウィジェットにコンテンツがドロップされた場合に、コンテンツがウィジェットプログラムにダウンロードされる処理の流れを示すフローチャートである。以下、図９と異なる部分について説明する。
【０１２５】
図１７は、図９に対してステップＳ９００の前にステップＳ１６００を追加し、ステップＳ９１７の後にステップＳ１６０１〜Ｓ１６０２を追加している。
【０１２６】
ステップＳ１６００において、ウィジェットプログラムは、マウスのドロップイベントを受信すると、該ドロップ操作がなされたことを示すドロップイベントをマウスイベント制御部３１３に送信する。ステップＳ９００〜ステップＳ９１５の処理は、図９と同様のため、説明を割愛する。
【０１２７】
ステップＳ１６０１において、マウスイベント制御部３１３は、クライアントＰＣ２０にダウンロードしたファイルのファイルパスをウィジェットプログラムに返却する。
【０１２８】
ステップＳ１６０２において、ウィジェットプログラムは、受信したファイルパスを保存し、更に、当該保存したファイルパスを利用することにより、当該クライアントＰＣ２０にダウンロードしたファイルを操作することが可能となる。例えば、ウィジェットプログラムがファイル印刷機能を有するものであれば、ファイルパスに基づいて該ファイルを特定して印刷することが可能となる。
【０１２９】
［その他の実施例］
また、本発明は、以下の処理を実行することによっても実現される。その処理は、上述した実施例の機能を実現させるソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
2015032002.tif 000003
【図２】
2015032002.tif 000004
【図３】
2015032002.tif 000005
【図４】
2015032002.tif 000006
【図５】
2015032002.tif 000007
【図６】
2015032002.tif 000008
【図７】
2015032002.tif 000009
【図８】
2015032002.tif 000010
【図９】
2015032002.tif 000011
【図１０】
2015032002.tif 000012
【図１１】
2015032002.tif 000013
【図１２】
2015032002.tif 000014
【図１３】
2015032002.tif 000015
【図１４】
2015032002.tif 000016
【図１５】
2015032002.tif 000017
【図１６】
2015032002.tif 000018
【図１７】
2015032002.tif 000019