(57)【特許請求の範囲】
【請求項１】
外部装置とネットワークを介して通信する情報処理装置であって、
ＨＴＴＰリクエストを前記外部装置に送信するとともに、前記ＨＴＴＰリクエストに応じて、前記外部装置から、Ｗｅｂサービスを利用するための手順が記述された第１スクリプトと、前記Ｗｅｂサービスの結果を前記外部装置へ送信するため手順が定義された第２スクリプトとを含むＨＴＴＰレスポンスを受信するＷｅｂブラウザ手段と、
前記ＨＴＴＰレスポンスに含まれる前記第１スクリプトが前記Ｗｅｂブラウザ手段により実行されたことに従って、前記情報処理装置が提供するＷｅｂサービスとしての処理を行うとともに、前記Ｗｅｂサービスの結果を前記外部装置に送信するために、前記ＨＴＴＰレスポンスに含まれる前記第２スクリプトを呼び出すＨＴＴＰサーバ手段とを有し、
前記Ｗｅｂブラウザ手段は、前記第２スクリプトが前記ＨＴＴＰサーバ手段により呼び出されたことに従って、前記Ｗｅｂサービスの結果を前記外部装置に送信するように制御し、
前記第１のスクリプトは、前記外部装置で生成された、前記Ｗｅｂサービスを実行するためのＳＯＡＰリクエストに関するデータを含むことを特徴とする情報処理装置。
【請求項２】
前記第２のスクリプトは、前記外部装置で生成された、前記Ｗｅｂサービスの結果を前記外部装置へ送信するためのＳＯＡＰレスポンスに関するデータを含むことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記第１スクリプトには、前記外部装置で生成された、前記Ｗｅｂサービスを実行するためのＳＯＡＰリクエストから生成された分割データが含まれており、
前記ＨＴＴＰサーバ手段は、前記第１スクリプトに含まれる分割データから前記外部装置で生成されたＳＯＡＰリクエストを復元し、復元したＳＯＡＰリクエストに従って前記Ｗｅｂサービスとしての処理を行うことを特徴とする請求項１に記載の情報処理装置。
【請求項４】
前記第１スクリプトには、前記外部装置で生成された、前記Ｗｅｂサービスを実行するためのＳＯＡＰリクエストを取得する手順と、前記ＳＯＡＰリクエストから複数の分割データに変換する手順と、前記分割データを前記ＨＴＴＰサーバ手段に転送する手順とが記述されており、
前記Ｗｅｂブラウザ手段は、前記第１スクリプトを実行することにより、前記ＳＯＡＰリクエストを取得し、前記ＳＯＡＰリクエストを複数の分割データに変換し、当該変換した複数の分割データを前記ＨＴＴＰサーバ手段に送信し、
前記ＨＴＴＰサーバ手段は、前記Ｗｅｂブラウザ手段によって送信された分割データから前記ＳＯＡＰリクエストを復元し、当該復元したＳＯＡＰリクエストに従って前記Ｗｅｂサービスとしての処理を行うことを特徴とする請求項１に記載の情報処理装置。
【請求項５】
外部装置とネットワークを介して通信する情報処理装置の制御方法であって、
ＨＴＴＰリクエストを前記外部装置に送信するステップと、
前記ＨＴＴＰリクエストに応じて、前記外部装置から、Ｗｅｂサービスを利用するための手順が記述された第１スクリプトと、前記Ｗｅｂサービスの結果を前記外部装置へ送信するため手順が定義された第２スクリプトとを含むＨＴＴＰレスポンスを受信するステップと、
前記ＨＴＴＰレスポンスに含まれる前記第１スクリプトが実行されたことに従って、前記情報処理装置が提供するＷｅｂサービスとしての処理を行うステップと、
前記Ｗｅｂサービスの結果を前記外部装置に送信するために、前記ＨＴＴＰレスポンスに含まれる前記第２スクリプトを呼び出すステップと、
前記第２スクリプトが呼び出されたことに従って、前記Ｗｅｂサービスの結果を前記外部装置に送信するステップと、
を有し、
前記第１のスクリプトは、前記外部装置で生成された、前記Ｗｅｂサービスを実行するためのＳＯＡＰリクエストに関するデータを含むことを特徴とする制御方法。
【請求項６】
前記第２のスクリプトは、前記外部装置で生成された、前記Ｗｅｂサービスの結果を前記外部装置へ送信するためのＳＯＡＰレスポンスに関するデータを含むことを特徴とする請求項５に記載の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、外部装置とネットワークを介して接続され、外部装置により受信されるスクリプトを含むデータを表示するブラウザを備えた情報処理装置に関するものである。
【背景技術】
【０００２】
従来、コピー機能やプリント機能等の画像処理機能を利用可能な複合機が一般的に知られている。また、このような複合機がＷｅｂブラウザを備えている形態も一般的に知られている。
ところで、複合機のＷｅｂブラウザを用いて上述のコピー機能を利用する方法として特許文献１のような方法が知られている。
特許文献１は、Ｗｅｂブラウザを備える複合機が、ネットワーク上のサーバ装置から受信したＪａｖａＳｃｒｉｐｔ（登録商標）付きのＨＴＭＬデータを受信し、そのＪａｖａＳｃｒｉｐｔ（登録商標）に従ってコピー画面の遷移を制御するものである。更に特許文献１によると、ＪａｖａＳｃｒｉｐｔ（登録商標）には複合機が公開しているＷｅｂサービスを呼び出すための情報が記述されている。そして、複合機のＷｅｂブラウザが、ＪａｖａＳｃｒｉｐｔ（登録商標）から取得した情報を基にＷｅｂサービスを呼び出すためのＳＯＡＰメッセージを作成するように構成されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−００３８３３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１では、サーバ装置からのＪａｖａＳｃｒｉｐｔ（登録商標）の記述をもとに、複合機内のＷｅｂブラウザがＳＯＡＰリクエストを生成し、複合機内のＷｅｂサービスを呼び出している。すなわち、複合機内のＷｅｂサービスを呼び出すためのＳＯＡＰリクエストを生成するのは、サーバ装置ではなく複合機のＷｅｂブラウザであった。
そのため、特許文献１では、以下のような処理を行うことが困難であった。すなわち特許文献１では、ＪａｖａＳｃｒｉｐｔ（登録商標）の記述を元に生成したＳＯＡＰリクエストの応答であるＳＯＡＰレスポンスを複合機からサーバ装置へ送信し、サーバ装置がそのＳＯＡＰレスポンスに応じて新たなＳＯＡＰリクエストを複合機へ送信するといったサーバ装置―複合機間の対話的な処理を行うことが困難であった。
本発明は、このような課題に鑑みて、情報処理装置内のＷｅｂブラウザがスクリプトを実行して装置内のＷｅｂサービスを呼び出すとともに、外部装置で生成したＳＯＡＰメッセージに従って当該Ｗｅｂサービスを利用可能とする手段を提供することを目的とする。
【課題を解決するための手段】
【０００５】
上記目的を達成するために、本発明の情報処理装置は、外部装置とネットワークを介して通信する情報処理装置であって、ＨＴＴＰリクエストを前記外部装置に送信するとともに、前記ＨＴＴＰリクエストに応じて、前記外部装置から、Ｗｅｂサービスを利用するための手順が記述された第１スクリプトと、前記Ｗｅｂサービスの結果を前記外部装置へ送信するため手順が定義された第２スクリプトとを含むＨＴＴＰレスポンスを受信するＷｅｂブラウザ手段と、前記ＨＴＴＰレスポンスに含まれる前記第１スクリプトが前記Ｗｅｂブラウザ手段により実行されたことに従って、前記情報処理装置が提供するＷｅｂサービスとしての処理を行うとともに、前記Ｗｅｂサービスの結果を前記外部装置に送信するために、前記ＨＴＴＰレスポンスに含まれる前記第２スクリプトを呼び出すＨＴＴＰサーバ手段とを有し、前記Ｗｅｂブラウザ手段は、前記第２スクリプトが前記ＨＴＴＰサーバ手段により呼び出されたことに従って、前記Ｗｅｂサービスの結果を前記外部装置に送信するように制御し、前記第１のスクリプトは、前記外部装置で生成された、前記Ｗｅｂサービスを実行するためのＳＯＡＰリクエストに関するデータを含むことを特徴とする情報処理装置。
【発明の効果】
【０００６】
本発明によれば、情報処理装置内のＷｅｂブラウザがスクリプトを実行して装置内のＷｅｂサービスを呼び出すとともに、外部装置で生成したＳＯＡＰメッセージに従って当該Ｗｅｂサービスを利用することが可能となる。
【図面の簡単な説明】
【０００７】
【図１】ＭＦＰ１０１とサーバ１０２とから構成される情報処理システムの全体図である。
【図２】ＭＦＰ１０１のハードウェア構成を示すブロック図である。
【図３】サーバ１０２のハードウェア構成を示すブロック図である。
【図４】ＭＦＰ１０１のソフトウェア構成を示す図である。
【図５】サーバ１０２のソフトウェア構成を示す図である。
【図６】ＭＦＰ１０１の操作部２１９に表示される画面の遷移を示す図である。
【図７】情報処理システムで実行される処理のシーケンスを示す図である。
【図８】サーバ１０２のＳＯＡＰプロキシ５１１により生成されるＳＯＡＰリクエスト（ＸＭＬデータ）の一例を示す図である。
【図９】サーバ１０２のＸＳＬＴプロセッサ５１２により生成される、スキャン要求画面６０１を表示するためのＨＴＭＬデータの一例を示す図である。
【図１０】ＭＦＰ１０１のＳＯＡＰサービス４１２からＷｅｂブラウザ４００へ出力されるＳＯＡＰレスポンスの一例を示す図である。
【図１１】ＭＦＰ１０１のＷｅｂブラウザ４００がＳＯＡＰレスポンスをコールバックするためのＨＴＴＰレスポンスの一例を示す図である。
【図１２】ＭＦＰ１０１のプロキシサービス４１１において実行されるＨＴＴＰリクエストの処理を表すフローチャートである。
【図１３】第２の実施形態におけるサーバ１０２のソフトウェア構成を示す図である。
【図１４】第２の実施形態における情報処理システムで実行される処理のシーケンスを示す図である。
【図１５】第２の実施形態におけるスキャン指示画面６００を表示するためのＨＴＭＬデータの一例を示す図である。
【発明を実施するための形態】
【０００８】
以下、図面を参照して本発明の実施の形態を詳しく説明する。なお、以下の実施の形態は特許請求の範囲に係る発明を限定するものでなく、また実施の形態で説明されている特徴の組み合わせの全てが発明の解決手段に必須のものとは限らない。
【０００９】
＜情報処理システムの構成＞
図１は、本実施形態における情報処理システムの構成を示す図である。ＬＡＮ１１０にはＭＦＰ１０１が接続されており、ＭＦＰ１０１はインターネットを介してサーバ１０２と通信可能に接続されている。そしてＬＡＮ１１０とインターネットの間には、ブロードバンドルーター１０３が接続されている。ブロードバンドルーター１０３は、ＭＦＰ１０１からサーバ１０２へのリクエストは許可するが、サーバ１０２からＭＦＰ１０１へのリクエストは拒否するよう構成されている。ただし、ＭＦＰ１０１からサーバ１０２へのリクエストは許可されるため、そのリクエストに対するレスポンスの中にサーバ１０２からのメッセージを含めることで、サーバ１０２からＭＦＰ１０１に情報を伝達することを実現している。
【００１０】
図２は、ＭＦＰ１０１のハードウェア構成を示すブロック図である。ＣＰＵ２１１を含む制御部２１０は、ＭＦＰ１０１全体の動作を制御する。ＣＰＵ２１１は、ＲＯＭ２１２に記憶された制御プログラムを読み出して読取制御や送信制御などの各種制御を行う。ＲＡＭ２１３は、ＣＰＵ２１１の主メモリ、ワークエリア等の一時記憶領域として用いられる。
【００１１】
ＨＤＤ２１４は、画像データや各種プログラム記憶する。操作部Ｉ／Ｆ２１５は、操作部２１９と制御部２１０とを接続する。操作部２１９は、タッチパネル機能を有する液晶表示部やキーボードなどを備えている。また、ＭＦＰ１０１には後述するＷｅｂブラウザ機能が備えられており、Ｗｅｂブラウザはサーバ１０２から受信したＨＴＭＬデータを解析し、受信したＨＴＭＬデータの記述に基づく操作画面を操作部２１９の液晶表示部に表示する。
【００１２】
プリンタＩ／Ｆ２１６は、プリンタ２２０と制御部２１０とを接続する。制御部２１０は、印刷すべき画像データをプリンタＩ／Ｆ２１６を介してプリンタ２２０へ転送し、プリンタ２２０に記録媒体上に印刷させる。
【００１３】
スキャナＩ／Ｆ２１７は、スキャナ２２１と制御部２１０とを接続する。スキャナ２２１は、原稿上の画像を読み取って画像データを生成し、スキャナＩ／Ｆ２１７を介して制御部２１０に入力する。
【００１４】
ネットワークＩ／Ｆ２１８は、ＭＦＰ１０１の制御  部２１０をＬＡＮ１１０に接続する。ネットワークＩ／Ｆ２１８は、ＬＡＮ１１０上の外部装置（例えば、サーバ１０２）に画像データや情報を送信したり、ＬＡＮ１１０上の外部装置から各種情報を受信したりする。
【００１５】
図３は、サーバ１０２のハードウェア構成を示すブロック図である。ＣＰＵ３１１を含む制御部３１０は、サーバ１０２全体の動作を制御する。ＣＰＵ３１１は、ＲＯＭ３１２に記憶された制御プログラムを読み出して各種制御処理を実行する。ＲＡＭ３１３は、ＣＰＵ３１１の主メモリ、ワークエリア等の一時記憶領域として用いられる。ＨＤＤ３１４は、画像データや各種プログラムを記憶する。
【００１６】
ネットワークＩ／Ｆ３１５は、制御部３１０（サーバ１０２）をＬＡＮ１１０に接続する。ネットワークＩ／Ｆ３１５は、ＬＡＮ１１０上の他の装置との間で各種情報を送受信する。
【００１７】
図４は、ＭＦＰ１０１のソフトウェア構成を説明するための図である。図４に示す各機能部は、ＭＦＰ１０１が有するＣＰＵ２１１がＲＯＭ２１２に記憶された制御プログラムを実行することにより実現される。
【００１８】
ＭＦＰ１０１は、Ｗｅｂブラウザ４００、ＨＴＴＰサーバ４１０、及びジョブ制御部４２０を備えている。
【００１９】
Ｗｅｂブラウザ４００は、ＨＴＴＰのプロトコルにしたがってリクエスト（以下、ＨＴＴＰリクエストという）を送信するとともに、そのリクエストに対するレスポンス（以下、ＨＴＴＰレスポンスという）を受信する。そして、受信したＨＴＴＰレスポンスを解析して操作画面を表示したり、受信したＨＴＴＰレスポンスにＪａｖａＳｃｒｉｐｔ（登録商標）が含まれる場合にはそのＪａｖａＳｃｒｉｐｔ（登録商標）を処理したりする。すなわち、Ｗｅｂブラウザ４００は、ＪａｖａＳｃｒｉｐｔ（登録商標）を処理することにより、操作画面を動的に書き換えたり、新たなＨＴＴＰリクエストを送信したりすることができる。
【００２０】
ＨＴＴＰサーバ４１０は、Ｗｅｂブラウザ４００からのＨＴＴＰリクエストを受信して、指定されたＷｅｂサービス（本実施形態では、プロキシサービス４１１）へリクエストを割り当てる。
【００２１】
ＨＴＴＰサーバ４１０が公開するＷｅｂサービスには、プロキシサービス４１１、およびＳＯＡＰサービス４１２がある。
【００２２】
プロキシサービス４１１は、Ｗｅｂブラウザ４００がＪａｖａＳｃｒｉｐｔ（登録商標）を処理した結果として送信するＨＴＴＰリクエストを受信する。そして、Ｗｅｂブラウザ４００から受信したＨＴＴＰリクエストを解析し、この解析結果に従って、サーバ１０２が生成したＳＯＡＰサービス４１２へ送信するためのリクエスト（以下、ＳＯＡＰリクエストという）を復元する。このサーバ１０２がＳＯＡＰリクエストを生成する方法や、そのＳＯＡＰリクエストを復元する方法は、本実施形態の特徴の１つであり、詳細な説明については後述する（図７を参照）。
【００２３】
プロキシサービス４１１はＳＯＡＰサービス４１２へ送信するＳＯＡＰリクエストの復元が完了すると、ＳＯＡＰサービス４１２へＳＯＡＰリクエストを送信する。また、プロキシサービス４１１は、ＳＯＡＰサービス４１２からレスポンス（以下、ＳＯＡＰレスポンスという）を受信すると、受信したＳＯＡＰレスポンスをＷｅｂブラウザ４００へコールバックするためのＪａｖａＳｃｒｉｐｔ（登録商標）を生成する。そして、生成したＪａｖａＳｃｒｉｐｔ（登録商標）を含むＨＴＴＰレスポンスをＷｅｂブラウザ４００に送信する。
【００２４】
ＳＯＡＰサービス４１２は、受信したＳＯＡＰリクエストを解析して、ＭＦＰ１０１のスキャナ２２１やネットワークＩ／Ｆ２１８を制御してジョブを実行するためのジョブ制御命令を生成する。そしてＳＯＡＰサービス４１２は、このジョブ制御命令をジョブ制御部４２０に渡すことによりジョブ制御部４２０にジョブ制御（すなわち、ジョブＩＤ等の生成）を指示する。
【００２５】
ＳＯＡＰサービス４１２は、ジョブ制御部４２０よりジョブ制御指示の結果（すなわち、ジョブが生成されたか否か等）を受け付けると、ＳＯＡＰレスポンスをプロキシサービス４１１へ応答する。
【００２６】
ジョブ制御部４２０は、ＳＯＡＰサービスから指示されるジョブ制御命令を処理することによって、スキャナ２２１による読取処理（スキャンジョブ）、プリンタ２３０による印刷処理（プリントジョブ）、ネットワークＩ／Ｆ２１８を介した送信処理（送信ジョブ）などを実行する。
【００２７】
なお本実施形態では、ＭＦＰ１０１で実行されるジョブの一例として、原稿を読み取ってファイルを生成し、サーバ１０２にファイルを送信するジョブについて説明する。しかし、他にもプリンタ２２０による印刷処理などを実行するジョブにも適用することができるのはいうまでもない。
【００２８】
図５は、サーバ１０２のソフトウェア構成を説明するための図である。図５に示す各機能部は、サーバ１０２が有しているＣＰＵ３１１がＲＯＭ３１２に記憶された制御プログラムを実行することにより実現される。
【００２９】
サーバ１０２は、ＨＴＴＰサーバ５００およびデータベース５０１を備えている。ＨＴＴＰサーバ５００は、Ｗｅｂブラウザ４００からのＨＴＴＰリクエストを受信して、ＵＲＬで指定されたＷｅｂアプリケーション５１０へそのＨＴＴＰリクエストを割り当てる。
【００３０】
Ｗｅｂアプリケーション５１０は、Ｗｅｂブラウザ４００からのＨＴＴＰリクエストに応じて、Ｗｅｂブラウザ４００で表示すべきＨＴＭＬデータを生成する。またＷｅｂアプリケーション５１０は、ＭＦＰ１０１のＷｅｂブラウザ４００を介してプロキシサービス４１１へＨＴＴＰリクエストを送信するためのＪａｖａＳｃｒｉｐｔ（登録商標）を含むＨＴＭＬデータを生成することもできる。
【００３１】
またＷｅｂアプリケーション５１０は、生成したＨＴＭＬデータをＨＴＴＰレスポンスとしてＷｅｂブラウザ４００へ送信する。またＷｅｂアプリケーション５１０は、ジョブ制御部４２０から送信されるファイルアップロード要求を処理して、要求されたデータをデータベース５０１に登録する。
【００３２】
Ｗｅｂアプリケーション５１０は、プロキシサービス４１１へ送信するデータを生成するために、ＳＯＡＰプロキシ５１１およびＸＳＬＴ（ＸＳＬ  Ｔｒａｎｓｆｏｒｍａｔｉｏｎｓ）プロセッサ５１２を備えている。
【００３３】
ＳＯＡＰプロキシ５１１は、ＳＯＡＰサービス４１２のインタフェースを定義するＷＳＤＬ（Ｗｅｂ  Ｓｅｒｖｉｃｅｓ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ）ファイルに基づいて、ＳＯＡＰサービス４１２へ送信するＳＯＡＰリクエストを生成する。また、ＳＯＡＰプロキシ５１１は、ＳＯＡＰリクエストボディをＸＭＬデータとして生成する。
【００３４】
ＸＳＬＴプロセッサ５１２は、ＳＯＡＰプロキシ５１１が生成したＸＭＬデータを、ＢＡＳＥ６４エンコード、ＵＲＬエンコード（パーセントエンコーディングともいう）の順にエンコードして所定のサイズに分割する。そして、ＸＳＬ（ｅＸｔｅｎｓｉｂｌｅ  Ｓｔｙｌｅｓｈｅｅｔ  Ｌａｎｇｕａｇｅ）データに従ってＪａｖａＳｃｒｉｐｔ（登録商標）を含むＨＴＭＬデータへ変換する。このＸＭＬデータからＨＴＭＬデータへの変換方法は本実施形態の特徴の１つであるので、詳細な説明については後述する（図７を参照）。
【００３５】
データベース５０１は、ＳＯＡＰサービス４１２からＷｅｂアプリケーション５１０へアップロードされたデータを管理する。
【００３６】
ここまでで本実施形態におけるシステム構成の概要を説明した。引き続き、本実施形態におけるシステムで実行される処理の概要を説明する。
【００３７】
＜情報処理システムで実行される処理＞
図６は、図１の情報処理システムにおいて、ＭＦＰ１０１スキャン処理を開始する際の、Ｗｅｂブラウザ４００による画面遷移の一例を示す図である。図６の各画面は、Ｗｅｂアプリケーション５１０が応答するＨＴＭＬデータをＷｅｂブラウザ４００が処理することで表示される画面である。以下、各画面について順番に説明する。
【００３８】
スキャン指示画面６００は、スキャン開始を指示するための画面である。スキャン指示画面６００はファイル名入力フィールドおよびスタートボタンを含む。ファイル名入力フィールドには、原稿をスキャンして生成するファイルの名称（ファイル名）が入力される。スタートボタンは、原稿のスキャンを開始するようにＷｅｂアプリケーション５１０へ指示するためのボタンである。Ｗｅｂブラウザ４００は、スタートボタンが押下されると、スキャン指示画面６００からスキャン要求画面６０１へ遷移する。
【００３９】
スキャン要求画面６０１は、スキャン指示画面６００でスキャンの開始を指示してから実際にジョブが生成されるまでに表示されている画面である。そして、Ｗｅｂブラウザ４００は、スキャン要求に基づいてジョブが生成されると、スキャン中画面６０２を表示する。スキャン中画面６０２は、スキャンを開始したことを表す画面である。
【００４０】
続いて図７を用いて、図１の情報処理システムにより実行される処理のシーケンスを説明する。図７に示す処理シーケンスは、Ｗｅｂブラウザ４００にスキャン指示画面６００のＵＲＬが入力されてページを開くよう指示されると、ステップＳ７０１の処理を開始する。
【００４１】
ステップＳ７０１では、Ｗｅｂブラウザ４００がスキャン指示画面６００を表示するためのデータの取得要求としてのＨＴＴＰリクエストを、Ｗｅｂアプリケーション５１０へ送信する。
【００４２】
ステップＳ７０２では、Ｗｅｂアプリケーション５１０は、Ｓ７０１での要求に応じて、スキャン指示画面６００のＨＴＭＬデータを含むＨＴＴＰレスポンスをＷｅｂブラウザ４００へ送信する。Ｗｅｂブラウザ４００は受信したＨＴＴＰレスポンスを処理し、図６に示したスキャン指示画面６００を表示する。
【００４３】
次に、スキャン指示画面６００のスタートボタンがユーザにより押下されると、ステップＳ７０３の処理を開始する。ステップＳ７０３では、Ｗｅｂブラウザ４００がスキャン開始を指示するＨＴＴＰリクエストをＷｅｂアプリケーション５１０へ送信する。このとき、スキャン指示画面内のファイル名入力フィールドに入力された値（ファイル名）もＷｅｂアプリケーション５１０へ送信する。
【００４４】
ステップＳ７０４では、Ｗｅｂアプリケーション５１０は、ＳＯＡＰプロキシ５１１のパラメータに、スキャン設定、文書設定、および送信設定を設定する。図６に示したスキャン指示画面６００の例では、入力されたファイル名が送信設定としてＳＯＡＰプロキシ５１１のパラメータに設定される。ただし、スキャン指示画面６００において、その他のスキャン設定、文書設定、または送信設定の入力を受け付けるようにしてもよい。
【００４５】
次に、Ｗｅｂアプリケーション５１０は、ＳＯＡＰプロキシ５１１に対してＸＭＬデータの生成を要求する。その結果、ＳＯＡＰプロキシ５１１は、図８に示すようなＳＯＡＰリクエストのエンティティボディを表すＸＭＬデータを生成し、Ｗｅｂアプリケーション５１０に応答する。
【００４６】
図８は、サーバ１０２のＳＯＡＰプロキシ５１１により出力されるＳＯＡＰリクエスト（ＸＭＬデータ）の一例を示す図である。このＸＭＬデータは、原稿をスキャンしＰＤＦファイルにした後、Ｗｅｂアプリケーション５１０へ送信することを指示する制御命令である。
【００４７】
スキャン設定には解像度３００×３００及びフルカラーを指定し、文書設定にはＰＤＦフォーマットを指定し、送信設定には送信先ＵＲＩ“ｈｔｔｐｓ：／／ｄｏｃｓ．ｘｘｘ．ｙｙｙ／ｆｉｌｅｓ”及びファイル名“ｔｅｓｔ．ｐｄｆ”を指定している。
【００４８】
次にステップＳ７０６では、Ｗｅｂアプリケーション５１０は、ＸＳＬＴプロセッサ５１２に対してＳ７０４で応答されたＸＭＬデータからＨＴＭＬデータへの変換を要求する。そうすると、ＸＳＬＴプロセッサ５１２は、ＸＭＬデータをＢＡＳＥ６４エンコード、ＵＲＬエンコードの順にエンコードし、所定のサイズに分割する。なお、分割されるサイズは、Ｗｅｂブラウザ４００が処理可能なＵＲＬ上限を考慮して決定され、本実施形態においては２５６文字以内におさまるようにデータを分割する。
【００４９】
そして、ＸＳＬＴプロセッサ５１２は、ＸＳＬに従ってＪａｖａＳｃｒｉｐｔ（登録商標）を含むＨＴＭＬデータ（図９）を生成し、Ｗｅｂアプリケーション５１０に応答する。
【００５０】
図９は、サーバ１０２のＸＳＬＴプロセッサ５１２により生成される、スキャン要求画面６０１を表示するためのＨＴＭＬデータの一例を示す図である。ＨＴＭＬデータは複数のパートから構成されており、具体的には、画面表示パート９０１、ＳＯＡＰリクエストパート９０２、ＳＯＡＰレスポンスパート９０３から構成されている。以下、それぞれのパートについて詳細に説明する。
【００５１】
画面表示パート９０１には、図６に示したスキャン要求画面６０１を表示するための画面データが記述されている。Ｗｅｂブラウザ４００は、この画面表示パート９０１に記述されたデータを解析してスキャン要求画面６０１を操作部２１９に表示する。
【００５２】
ＳＯＡＰリクエストパート９０２（第１スクリプト）には、下記で示すデータ構造のｓｃｒｉｐｔタグが複数記述されており、図８に示したＸＭＬデータから作られた分割データをＳＯＡＰサービス４１２へ送信し、Ｗｅｂサービスを呼び出すための手順が記述されている。
【００５３】
より具体的に説明すると、これら複数のｓｃｒｉｐｔタグのそれぞれは、ＵＲＩ“ｈｔｔｐ：／／ｘｘｘ．０．０．１：８０８０／Ｐｒｏｘｙ／ＳｃａｎＴｏＳｅｎｄ”（すなわちプロキシサービス４１１のパス）に対して、以下の３つのデータを転送することを示している。すなわち、Ｓｃｒｉｐｔタグは、“ｓｅｓｓ”で指定されるセッションＩＤを示すデータ、“ｉｄ”で指定されるデータ、および“ｄａｔ”で指定される分割データを転送することを示している。この“ｄａｔ”で指定されているデータは、上述した、ＢＡＳＥ６４エンコードされ、ＵＲＬエンコードされ、所定サイズに分割されたデータである。
【００５４】
なお、分割データのデータサイズは、Ｗｅｂブラウザ４００が処理可能なＵＲＬ上限を考慮して決定される。具体的には、ｓｃｒｉｐｔタグのｓｒｃ属性に指定するＵＲＬの文字列長が２５６文字以下となるように分割データのサイズを決定する。
【００５５】
ＳＯＡＰリクエストパート９０２は、複数のｓｃｒｉｐｔタグを用い、分割した複数のデータ全てをプロキシサービス４１１へ送信可能なように記述されている。
【００５６】
クエリ“ｓｅｓｓ”で指定されるデータは、プロキシサービス４１１が一連の分割データを識別するためのセッションＩＤである。
【００５７】
クエリ“ｉｄで指定されるデータは、前述のセッションＩＤで識別される一連の分割データのうち、その分割データが何番目の分割データであるかを表している。
【００５８】
なお、Ｗｅｂブラウザ４００がこのＳＯＡＰリクエストパート９０２を処理してプロキシサービス４１１へＨＴＴＰリクエストを送信する処理はステップＳ７０８（Ｓ７１０）で後述する。
【００５９】
ＳＯＡＰレスポンスパート９０３（第２スクリプト）には、プロキシサービス４１１から送信されるＳＯＡＰレスポンスを引数として呼び出されるコールバック関数“ｇｅｔＲｅｓｐｏｎｓｅ“が記述されている。このコールバック関数”ｇｅｔＲｅｓｐｏｎｓｅ“は、本実施形態では、Ｗｅｂサービスの結果としてのＳＯＡＰレスポンスをサーバ１０２にアップロードするためにプロキシサービス４１１によって呼び出される。
【００６０】
コールバック関数“ｇｅｔＲｅｓｐｏｎｓｅ”は、ＳＯＡＰリクエストパート９０２に記述されたｓｃｒｉｐｔタグをＷｅｂブラウザ４００が処理した結果、プロキシサービス４１１へ送信するＨＴＴＰリクエストの応答として呼び出される。このようにｓｃｒｉｐｔタグを使用してＨＴＴＰリクエストを送信し、定義済みのコールバック関数を呼び出すことによってその応答を受ける仕組みはＪＳＯＮＰ（ＪＳＯＮ  ｗｉｔｈ  Ｐａｄｄｉｎｇ）と呼ばれている。Ｗｅｂブラウザ４００が、ＳＯＡＰレスポンスパート９０３を処理してプロキシサービス４１１からの応答を受ける処理はステップＳ７１７で後述する。
【００６１】
次にステップＳ７０７では、Ｗｅｂアプリケーション５１０は、ステップＳ７０６においてＸＳＬＴプロセッサ５１２が出力したＨＴＭＬデータを含むＨＴＴＰレスポンスをＷｅｂブラウザ４００へ送信する。ステップＳ７０７の処理が完了すると、ステップＳ７０８の処理へ進み、ＭＦＰ１０１で実行される処理に移る。
【００６２】
ステップＳ７０８では、ＭＦＰ１０１のＷｅｂブラウザ４００が、画面表示パート９０１を処理してスキャン要求画面６０１を表示する。そして、Ｗｅｂブラウザ４００は、ＳＯＡＰリクエストパート９０２内のスクリプトを実行し、プロキシサービス４１１へ、図８のクエリ“ｄａｔ”で指定された分割データを含むＨＴＴＰリクエストを送信する。Ｗｅｂブラウザ４００によるプロキシサービス４１１へのＨＴＴＰリクエストの送信はＳＯＡＰリクエストパート９０２に含まれるｓｃｒｉｐｔタグの数だけ繰り返される。図９の例では、Ｓｃｒｉｐｔタグが４つあるので、Ｓ７０８の処理が４回繰り返されることになる。
【００６３】
次にステップＳ７０９では、プロキシサービス４１１が、Ｗｅｂブラウザ４００から受信したＨＴＴＰリクエストに含まれる分割データをセッション毎に結合する。そして、ある１セッションの分割データの結合が完了すると、ステップＳ７１０の処理へ進む。
【００６４】
ステップＳ７１０では、プロキシサービス４１１は、Ｓ７０９で結合されたデータをＵＲＬデコード、ＢＡＳＥ６４デコードの順にデコードする。ステップＳ７０６で説明したように、ＸＳＬＴプロセッサ５１２は、ＳＯＡＰリクエストのエンティティボディを表すＸＭＬデータを、ＢＡＳＥ６４エンコード、ＵＲＬエンコードの順にエンコードして所定のサイズに分割する。そのため、分割データを結合してＵＲＬデコード、ＢＡＳＥ６４デコードすると、ＳＯＡＰリクエストのエンティティボディが復元される。プロキシサービス４１１が、受信した分割データをセッション毎に結合して指定されたＳＯＡＰサービス４１２へ転送するまでの処理の詳細については図１２を用いて後述する。ステップＳ７１０の処理が完了すると、ステップＳ７１１の処理へ進む。
【００６５】
ステップＳ７１１では、プロキシサービス４１１は、ステップＳ７１０で生成したＳＯＡＰリクエストのエンティティボディを基に、ＳＯＡＰサービス４１２へＳＯＡＰリクエストを送信する。ＳＯＡＰサービス４１２がＳＯＡＰリクエストを受信するとステップＳ７１２の処理へ進む。
【００６６】
ステップＳ７１２では、ＳＯＡＰサービス４１２は、プロキシサービス４１１から送信されたＳＯＡＰリクエストを解釈して、ジョブ制御部４２０へジョブ生成を指示する。ＳＯＡＰサービス４１２がジョブの生成を指示すると、ジョブ制御部４２０によるジョブの生成が行われ、ジョブの生成が成功してジョブＩＤが付与されると、ステップＳ７１３の処理へ進む。
【００６７】
ステップＳ７１３では、ＳＯＡＰサービス４１２は、ジョブ生成結果を応答するための、図１０に示すようなＳＯＡＰレスポンスをプロキシサービス４１１へ送信する。
【００６８】
図１０は、ＭＦＰ１０１のＳＯＡＰサービス４１２からプロキシサービス４１１へ出力されるＳＯＡＰレスポンスの一例を示す図である。図１０に示す例では、ジョブ制御部４２０に対するジョブ生成の指示の結果は“成功（ｊｏｂＣｒｅａｔｅｄ）”であり、生成されたジョブのジョブＩＤは“０００１”であるということを表している。ステップＳ７１３の処理が完了すると、ステップＳ７１４の処理へ進む。
【００６９】
ステップＳ７１４では、プロキシサービス４１１は、ステップＳ７１３で受信したＳＯＡＰレスポンスをコールバックするためのＨＴＴＰレスポンスをＷｅｂブラウザ４００へ送信する。
【００７０】
図１１にプロキシサービス４１１からＷｅｂブラウザ４００に送信される、ＳＯＡＰレスポンスをコールバックするＨＴＴＰレスポンスの一例を示す。具体的には、図１０に示したＳＯＡＰレスポンスを引数としたコールバック関数“ｇｅｔＲｅｓｐｏｎｓｅ”を呼び出す処理がＪａｖａＳｃｒｉｐｔ（登録商標）で記述されている。
【００７１】
ステップＳ７１５では、Ｗｅｂブラウザ４００は、ステップＳ７１４で受信したＪａｖａＳｃｒｉｐｔ（登録商標）で記述されたＨＴＴＰレスポンスを処理して、Ｗｅｂアプリケーション５１０へＳＯＡＰレスポンスを送信する。図９に示したＳＯＡＰレスポンスパート９０３の場合、Ｗｅｂブラウザ４００は、まずコールバック関数“ｇｅｔＲｅｓｐｏｎｓｅ”を呼び出す。次に、Ｗｅｂブラウザ４００は、画面表示パート９０１に定義されたｈｉｄｄｅｎ  ｆｏｒｍを用いて指定されたＳＯＡＰレスポンスをＷｅｂアプリケーション５１０へｓｕｂｍｉｔする。すなわち、Ｗｅｂブラウザ４００は、Ｓ７０７で受信したＨＴＴＰレスポンスに含まれるＪａｖａＳｃｒｉｐｔ（登録商標）を実行することにより、Ｓ７１４で指定されたＳＯＡＰレスポンスをサーバ１０２へ送信するように制御する。
【００７２】
ステップＳ７１５の処理が完了すると、ステップＳ７１６の処理へ進みサーバ１０２で実行される処理に移る。
【００７３】
ステップＳ７１６では、サーバ１０２のＷｅｂアプリケーション５１０は、ＳＯＡＰプロキシ５１１に対して、ステップＳ７１７において受信したＳＯＡＰレスポンスのＸＭＬデータの解析を要求する。そして、Ｗｅｂアプリケーション５１０は、ＳＯＡＰレスポンスのＸＭＬパースの結果より、ジョブ生成結果を判断する。図１０で示した例では、上述のようにＳＯＡＰサービス４１２によるジョブ生成の指示の結果は“成功（ｊｏｂＣｒｅａｔｅｄ）”である。そのため、次に表示すべきスキャン中画面６０２（図６）を表示するためのＨＴＭＬデータを含むＨＴＴＰレスポンスをＷｅｂブラウザ４００に送信する（Ｓ７１７）。
【００７４】
次に、図１２に示すフローチャートを用いて、プロキシサービス４１１がＳＯＡＰサービス４１２へＳＯＡＰリクエストを送信する処理の流れを説明する。
【００７５】
なお、図１２のフローチャートで示す処理を実行するための制御プログラムはＲＯＭ２１２に記憶されており、ＣＰＵ２１１により実行されるものである。またこのフローチャートは、Ｓ７０８においてプロキシサービス４１１がＷｅｂブラウザ４００から分割データを含むＨＴＴＰリクエストを受信するたびに処理が開始される。
【００７６】
まずステップＳ１２０１では、受信した分割データを含むＨＴＴＰリクエストを解析し、プロキシサービス４１１は新たなセッションを開始するか否かを判断する。
【００７７】
具体的には、図９のＳＯＡＰリクエストパート９０２に示したＨＴＴＰリクエストのクエリ“ｓｅｓｓ”が示すセッションＩＤが、プロキシサービス４１１が確保するバッファに格納されているかどうかを判断する。セッションＩＤがバッファに格納されていない場合は新しいセッションを開始する。
【００７８】
新しいセッションを開始する場合（Ｓ１２０１でＹＥＳ）は、ステップＳ１２０２〜Ｓ１２０４の処理を実行する。セッションＩＤがバッファに格納されている場合（Ｓ１２０１でＮＯ）は、Ｓ７０８で受信したＨＴＴＰリクエストに含まれる分割データが既存のセッションについての分割データであると判断して、ステップＳ１２０５の処理へ進む。
【００７９】
ステップＳ１２０２では、プロキシサービス４１１は新しいセッションに係る情報を格納するためのバッファを確保する。
【００８０】
次にステップＳ１２０３では、プロキシサービス４１１はＳＯＡＰサービス４１２のエンドポイントＵＲＩをステップＳ１２０２で確保したバッファに格納する。より具体的には、図９に示したＳＯＡＰリクエストパート９０２の場合、プロキシサービス４１１に対するリクエストＵＲＩは“ｈｔｔｐ：／／ｘｘｘ．０．０．１：８０８０／Ｐｒｏｘｙ／ＳｃａｎＴｏＳｅｎｄ”である。プロキシサービス４１１は、リクエストＵＲＩに含まれる、プロトコル名“ｈｔｔｐ”、ホスト名“ｘｘｘ．０．０．１”、ポート番号“８０８０”、およびパス名の一部“ＳｃａｎｔＴｏＳｅｎｄ”よりＳＯＡＰサービスのエンドポイントＵＲＩ“ｈｔｔｐ：／／ｘｘｘ．０．０．１：８０８０／ＳｃａｎＴｏＳｅｎｄ”を生成し、これをバッファに格納する。
【００８１】
次にステップＳ１２０４では、プロキシサービス４１１はクエリ“ｓｅｓｓ”が示すセッションＩＤをバッファに格納する。図９に示したＳＯＡＰリクエストパート９０２の１番目の分割データの場合、クエリ“ｓｅｓｓ”が示すセッションＩＤは“００００”であるので、００００の値がバッファに格納される。
【００８２】
次にステップＳ１２０５では、プロキシサービス４１１は分割データをバッファに格納する。図９に示したＳＯＡＰリクエストパート９０２の場合、クエリ“ｉｄ”が示すＩＤ“１”、“２”、“３”または“４”に紐づけてクエリ“ｄａｔ”が示す分割データをバッファに格納する。
【００８３】
次にステップＳ１２０６では、プロキシサービス４１１はセッションを終了するか否かを判断する。セッション終了か否かは、同一セッションの分割データを全て受信したか否かで判断する。図９に示したＳＯＡＰリクエストパート９０２の場合、最後の分割データをリクエストする場合に、クエリ“ｃａｌｌｂａｃｋ”が指定される。したがってＩＤ“４”が最後の分割データとあると判断し、ＩＤ“１”、“２”、“３”、“４”が指定された分割データを全て受信した場合にセッション終了であると判断する。セッションを終了すると判断した場合（Ｓ１２０６でＹＥＳ）は、プロキシサービス４１１はステップＳ１２０７〜Ｓ１２０９の処理を実行する。一方でセッションを終了しないと判断した場合（Ｓ１２０６でＮＯ）は、本フローチャートの処理を終了する。
【００８４】
次にステップＳ１２０７では、プロキシサービス４１１はバッファに格納された全ての分割データを結合してデコードする。そしてステップＳ１２０８では、プロキシサービス４１１はバッファに格納されたＳＯＡＰサービス４１２のエンドポイントＵＲＩへデコードしたデータを送信する。すなわちＳＯＡＰサービス４１２へ分割データに基づき復元されたＳＯＡＰリクエストが送信される。ＳＯＡＰリクエストの送信が完了するとステップＳ１２０８の処理へ進む。ステップＳ１２０８では、送信完了したセッションのバッファを解放する。
【００８５】
以上より、第１の実施形態について説明した。本実施形態によれば、ＷｅｂブラウザがＭＦＰ内のＷｅｂサービスを呼び出すために独自に機能拡張することがなく、ＭＦＰの公開するＷｅｂサービスを利用することが可能となる。
【００８６】
（第２の実施形態）
本発明に係る第２の実施形態について説明する。第１の実施形態との差異は、以下の点である。すなわち、ＳＯＡＰリクエストを表すＸＭＬデータ８００を分割データへ変換する処理を、サーバ１０２ではなく、Ｗｅｂブラウザ４００がスキャン指示画面６００に記述されたＪａｖａＳｃｒｉｐｔ（登録商標）を処理することによって実現する点である。
【００８７】
第１の実施形態との差異について、図１３乃至１５を用いて以下に説明する。
【００８８】
図１３は、第２の実施形態におけるサーバ１０２のソフトウェア構成を示す図である。第１の実施形態における図５のサーバ１０２のソフトウェア構成との差異は、Ｗｅｂアプリケーション５００がＸＳＬＴプロセッサ５１２を備えていない点であり、それ以外の構成は図５と同様である。
【００８９】
図１４は、第２の実施形態における情報処理システムにより実行される処理シーケンスを示す図である。図１４において、第１の実施形態で説明した図７の処理シーケンスと同一の処理を行うものについては同一の符号を付しており、説明は省略する。
【００９０】
Ｓ１４００では、サーバ１０２のＷｅｂアプリケーション５１０は、図１５に示すようなＪａｖａＳｃｒｉｐｔ（登録商標）付きのＨＴＭＬデータを、Ｓ７０１での応答として、ＭＦＰ１０１のＷｅｂブラウザ４００へ送信する。Ｓ１４０１では、ＭＦＰ１０１のＷｅｂブラウザ４００は、Ｓ１４００で受信したＨＴＭＬデータを解析し、図６のスキャン指示画面６００を表示する。
【００９１】
図１５は、第２の実施形態におけるスキャン指示画面６００を表すＨＴＭＬデータの一例を示す図である。第１の実施形態では、Ｗｅｂブラウザ４００はスキャン要求画面６０１に記述されたＪａｖａＳｃｒｉｐｔ（登録商標）を処理することによって分割データをプロキシサービス４１１へ転送した。一方第２の実施形態では、Ｗｅｂブラウザ４００はスキャン指示画面６００を表示するためのＨＴＭＬデータに記述されたＪａｖａＳｃｒｉｐｔ（登録商標）を処理することによってプロキシサービス４１１へ分割データを転送する。
【００９２】
なお、第２の実施形態においては、Ｗｅｂアプリケーション５１０よりスキャン要求画面６０１は応答されないため、Ｗｅｂブラウザ４００が表示する画面は、スキャン指示画面６００からスキャン中画面６０２へ遷移する。
【００９３】
続いてスキャン指示画面６００を表すＨＴＭＬデータに記述されるＪａｖａＳｃｒｉｐｔ（登録商標）の処理内容（Ｓ１４０１）について説明する。
【００９４】
スキャン指示画面６００を表すＨＴＭＬデータは、図１５に示したように複数のパートから構成されており、具体的には、画面表示パート１５０１、ＳＯＡＰリクエストパート１５０２、およびＳＯＡＰレスポンスパート１５０３から構成される。
【００９５】
画面表示パート１５０１には、図６に示したスキャン指示画面６００を表示するためのデータが記述されている。Ｗｅｂブラウザ４００は、この画面表示パート１５０１に記述されたデータを解析してスキャン指示画面６００を操作部２１９に表示する。画面表示パート１５０１には、原稿のスキャンを開始するようにＷｅｂアプリケーション５１０へ指示するためのフォーム部品を含む。図６の例では、ファイル名を入力するフォーム部品と、入力されたファイル名をサブミットするフォーム部品を含む。
【００９６】
またスキャン指示画面６００を表すＨＴＭＬデータは、第１の実施形態におけるスキャン要求画面６０１のＳＯＡＰリクエストパート９０２と同様に、ＳＯＡＰレスポンスをＷｅｂアプリケーション５１０へサブミットするためのｈｉｄｄｅｎ  ｆｏｒｍを含む。
【００９７】
ＳＯＡＰリクエストパート１５０２にはさまざま関数が定義されている。本実施形態では、ｇｅｔＲｅｑｕｅｓｔ関数とｐｏｓｔＲｅｑｕｅｓｔ関数が含まれており、これら関数が適宜実行されることにより、サーバ１０２から受信したＸＭＬデータを分割データに変換し、ＭＦＰ１０１内のＷｅｂサービスを呼び出すための制御命令を転送する。
【００９８】
ｇｅｔＲｅｑｕｅｓｔ関数は、Ｗｅｂアプリケーション５１０よりＳＯＡＰリクエストを表すＸＭＬデータ８００（図８参照）を取得する関数である。ｇｅｔＲｅｑｕｅｓｔ関数は、画面表示パート１５０１に含まれるｆｏｒｍをｓｕｂｍｉｔすると呼び出され、ＸＭＬＨｔｔｐＲｅｑｕｅｓｔを用いてＷｅｂアプリケーション５１０へＨＴＴＰリクエストを送信する（Ｓ１４０２）。そしてＷｅｂアプリケーション５１０からＳＯＡＰリクエストを表すＸＭＬデータをＨＴＴＰレスポンスを受信する（Ｓ１４０５）。
【００９９】
Ｓ１４０６では、Ｗｅｂブラウザ４００は、Ｓ１４０５で受信したＨＴＴＰレスポンスに含まれるＳＯＡＰリクエストを表すＸＭＬデータ８００をパラメータとして“ｐｏｓｔＲｅｑｕｅｓｔ”関数を呼び出す。
【０１００】
ｐｏｓｔＲｅｑｕｅｓｔ関数は、引数として渡されたＸＭＬデータ８００を、ＢＡＳＥ６４エンコード、ＵＲＬエンコードを順に行い、複数の分割データへ変換する。そして複数の分割データのそれぞれについて、ＳｃｒｉｐｔタグのソースＵＲＩを生成する。最後に、Ｗｅｂブラウザ４００は、Ｓｃｒｉｐｔタグを動的に生成し、Ｓ７０８で分割データをプロキシサービス４１１へ送信する。Ｓ７０８で送信されるデータは、本実施形態１で送信されるデータと同等のもの（ＧＥＴメソッドによるＨＴＴＰリクエスト）である。
【０１０１】
このようにＷｅｂブラウザ４００は、第１の実施形態におけるＳＯＡＰリクエストパート９０２を処理した場合と同等のＨＴＴＰリクエストをプロキシサービス４１１へ送信する。
【０１０２】
ＳＯＡＰレスポンスパート１５０３は、第１の実施形態におけるスキャン要求画面６０１のＳＯＡＰレスポンスパート９０３と同じであるため、説明を省略する。
【０１０３】
第２の実施形態においても、Ｗｅｂブラウザを独自に機能拡張することなく、情報処理装置の公開するＷｅｂサービスを利用することが可能となる。
【０１０４】
（他の実施形態）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【符号の説明】
【０１０５】
１０１  ＭＦＰ
１０２  サーバ
４００  Ｗｅｂブラウザ
４１１  プロキシサービス
４１２  ＳＯＡＰサービス
４２０  ジョブ制御部
５１０  Ｗｅｂアプリケーション
５１１  ＳＯＡＰプロキシ
５１２  ＸＳＬＴプロセッサ
【図１】
0005868138.tif 000002
【図２】
0005868138.tif 000003
【図３】
0005868138.tif 000004
【図４】
0005868138.tif 000005
【図５】
0005868138.tif 000006
【図６】
0005868138.tif 000007
【図７】
0005868138.tif 000008
【図８】
0005868138.tif 000009
【図９】
0005868138.tif 000010
【図１０】
0005868138.tif 000011
【図１１】
0005868138.tif 000012
【図１２】
0005868138.tif 000013
【図１３】
0005868138.tif 000014
【図１４】
0005868138.tif 000015
【図１５】
0005868138.tif 000016