図1は、本発明を実施するシステムの一例の構成図である。図1に示されるシステムは、Webサーバ1と、リポジトリサーバ2と、SPSサーバ3と、プリントサーバ4と、プリンタ6と、PDA(Personal Digital Assistant)7とから構成されている。
なお、図1においては、リポジトリサーバ2にリポジトリサービス(RS)12が実装されており、SPSサーバ3に印刷環境共用サービス(SPS)13が実装されており、プリントサーバ4には、ドキュメントプリントサービス(PS)14が実装されている。
各サービスは、Webサービスとして相互にSOAP(Simple Object Access Protocol)に基づくメッセージを交換し、それぞれの機能を利用することができる。
Webサーバ1と、リポジトリサーバ2と、SPSサーバ3と、プリントサーバ4と、プリンタ6と、PDA7とはネットワーク及び/又はインターネットを介して接続されている。
なお、図1のシステム構成を、例えば社内の組織構成を表しているとすると、R−0が会社のトップを表し、その下にそれぞれ整った印刷環境が整備されているA事業所と、B事業所と、が存在していることを表している。但し、以下では説明の簡略化のため、特に言及しない限りSPSサーバ3(又は印刷環境共用サービス13)を指して、A−1や、B−1などと記述する。なお、図1に示した例においては、例えばA−1の配下、B−1の配下、B−2の配下が、それぞれ整った印刷環境を有している。
初めに、ユーザはPDA7を用いてユーザ名やパスワードなどを入力し、Webサーバ1にログインし、印刷環境共用サービス13が提供するサービスを利用し、印刷場所(例えば、SPSサーバ3(B−2)の印刷環境共用サービス13)や印刷するプリンタ(例えば、プリンタ6(P−3−1))の情報、印刷条件(例えば、A4、カラーで10枚)及び印刷予約する文書などを指定し、印刷の予約を要求する。
なお、後述する図30に示すように、ユーザが印刷場所を指定する際に、印刷環境共用サービス13は、ユーザが指定した印刷場所(例えば、SPSサーバ3(B−2)の印刷環境共用サービス13)までの通信経路情報(以下、経路情報という)を取得する。ここで、ユーザは、印刷場所を選択する場合、SPSサーバ3又は印刷環境共用サービス13を直接選択するのではなく、SPSサーバ3又は印刷環境共用サービス13と対応付けられたユーザにとってわかりやすい例えば県名や、都市名、事業所名、部署名等を選択するようにしてもよい。以下においても同様である。
例えば、SPSサーバ3(A−1)の印刷環境共用サービス13は、(A−1)→(A−0)→(B−0)→(B−2)などと、SPSサーバ3(A−1)の印刷環境共用サービス13からユーザが指定した印刷場所であるSPSサーバ3(B−2)の印刷環境共用サービス13までの経路情報を取得し、Webサーバ1に提供する。
なお、これらの経路情報は、後述するサービスリストを用いることによって取得することができる。
SPSサーバ3(A−1)の印刷環境共用サービス13は、Webサーバ1を介してユーザより印刷の予約要求を受け取ると、リポジトリサービス12に対してユーザより指定された文書の取得を要求し、リポジトリサービス12を介してリポジトリサーバ2に蓄積されている文書を取得する。
SPSサーバ3(A−1)の印刷環境共用サービス13は、前記経路情報を基に、該経路情報や前記印刷条件、前記印刷するプリンタの情報などの予約情報と共に前記取得した文書のデータ(文書データ)をSPSサーバ3(A−0)の印刷環境共用サービス13に転送する。
SPSサーバ3(A−0)の印刷環境共用サービス13は、SPSサーバ3(A−1)より前記予約情報や前記文書データを受け取ると、該予約情報に含まれる経路情報を基に、前記予約情報や前記文書データをSPSサーバ3(B−0)の印刷環境共用サービス13に転送する。同様にして、SPSサーバ3(B−0)の印刷環境共用サービス13は、前記予約情報や前記文書データをSPSサーバ3(B−2)の印刷環境共用サービス13に転送する。
転送されてきた前記予約情報や前記文書データを取得したSPSサーバ3(B−2)の印刷環境共用サービス13は、前記予約情報や前記文書データをSPSサーバ3(B−2)内に格納する。
一方、例えば、ユーザは印刷場所などへ赴き、Webサーバ1を介してSPSサーバ3(A−1)の印刷環境共用サービス13に、前記印刷の予約を行った文書の印刷を要求する。
上述したのと同様に、印刷環境共用サービス13は、前記文書の印刷要求を印刷環境共用サービス13間で転送し、印刷場所であるSPSサーバ3(B−2)の印刷環境共用サービス13まで転送する。
印刷要求を受けた印刷場所であるSPSサーバ3(B−2)の印刷環境共用サービス13は、前記格納した予約情報に含まれるプリンタの情報や印刷条件に基づいて、前記格納した文書データの印刷を、プリントサーバ4(PS−3)のドキュメントプリントサービス14に要求する。
プリントサーバ4(PS−3)のドキュメントプリントサービス14は、SPSサーバ3(B−2)の印刷環境共用サービス13の要求に基づいて、指定された文書の内容を指定されたプリンタ6(P−3−1)において、指定された印刷条件で印刷する。
上述したように、印刷の予約を行い、印刷環境共用サービス13間で予約情報や文書データを転送し、印刷の要求に基づいて文書を印刷することによって、ユーザは、例えば、違う部署や違う事業所の、共用が許された、整った印刷環境を利用することができるので、新たに印刷環境を構築する手間無しに、異なる印刷環境においても速やかに文書を印刷することができる。
また、図1に示されるようなシステム構成において、例えば、A事業所及びB事業所内はそれぞれ独立してセキュリティが管理されているとすると、A事業所からB事業所内のプリンタ6を利用する場合も、A事業所とB事業所の間にファイウォールなどを設ければ、1つのサーバにネットワークを介して複数のプリンタが接続されている従来のシステムに比べてセキュリティを確保することができる。何故なら、従来のシステムでは、プリンタ毎にサーバ毎の通信路が出来てしまい、該通信路毎にセキュリティを確保する必要があるからである。
なお、後述するサービスリストを利用することによって、各印刷環境共用サービス13は、例えば図1に示すような、ツリー構造をしたシステムを構築することができる。
また、後述するサービスリストは、各印刷環境共用サービス13が実装されているSPSサーバ3に格納するような構成としてもよいし、他の装置にまとめて、各印刷環境共用サービス13に対応するサービスリストを格納するような構成としてもよい。
なお、説明の簡略化のため、以下においては、サービスリストは各印刷環境共用サービス13が実装されているSPSサーバ3に格納されているものとして説明を行う。なお、このことは本発明の実施を制限するものではない。
なお、ユーザが使用するユーザ端末はPDA7に限らず、携帯電話など他の携帯端末であってもよい。
以下、SPSサーバ3のソフトウェア構成図を、図2を用いて説明する。
図2は、SPSサーバの一例のソフトウェア構成図である。
図2に示すように、SPSサーバ3は、OS(Operating System)21と、アプリケーション29とから構成されている。
OS21は、UNIX(登録商標)やWindows(登録商標)などのオペレーティング・システムであり、例えばアプリケーション29の各ソフトウェアをそれぞれプロセスとして並列実行する。
アプリケーション29は、印刷の予約及び/又は印刷アプリケーションである印刷環境共用アプリ24を有する。図1に示した印刷環境共用サービス13は、印刷環境共用アプリ24に含まれる。
また、アプリケーション29は、印刷環境共用アプリ24を管理する管理アプリ25を含むように構成してもよい。該管理アプリ25は後述するように、他のSPSサーバ3に含まれる印刷環境共用サービス13に対して、接続を要求したり、後述する図29に示す画面を表示したりするなどのユーザI/Fを提供する。
なお、該管理アプリ25はSPSサーバ3以外の装置に実装されていてもよいが、以下では説明の簡略化のためSPSサーバ3に実装されているものとして説明を行う。なお、このことは本発明の実施を制限するものではない。
また、図1では、SPSサーバ3は、印刷環境共用アプリ24に含まれる印刷環境共用サービス13のみを有する構成として説明を行ったが、図2に示すように、アプリケーション29は、プリンタ用のアプリケーションであるプリンタアプリ26や、文書管理アプリケーションである文書管理アプリ27を含むように構成してもよい。
図1に示したドキュメントプリントサービス14は、プリンタアプリ26に含まれる。また、図1に示したリポジトリサービス12は、文書管理アプリ27に含まれる。
但し、第一実施例では説明の簡略化のため、図1に示したように、ドキュメントプリントサービス14は、プリントサーバ4に実装され、リポジトリサービス12はリポジトリサーバ2に実装されているものとして説明を行う。なお、このことは本発明の実施を制限するものではない。
以下では、SPSサーバ3は、印刷環境共用アプリ24と管理アプリ25とを含むものとして説明を行う。
以下、SPSサーバ3のハードウェア構成を、図3を用いて説明する。図3は、SPSサーバ3の一例のハードウェア構成図である。
図3に示されるSPSサーバ3のハードウェア構成は、それぞれバスBで相互に接続されている入力装置31と、表示装置32と、ドライブ装置33と、ROM(Read Only Memory)35と、RAM(Random Access Memory)36と、CPU(Central Processing Unit)37と、インターフェース装置38と、HDD(Hard Disk Drive)39とから構成されている。
入力装置31は、SPSサーバ3の利用者が操作するキーボード及びマウスなどで構成され、SPSサーバ3に各種操作信号を入力するのに用いられる。
表示装置32は、SPSサーバ3の利用者が利用するディスプレイなどで構成され、後述する各種画面を表示する。
インターフェース装置38は、SPSサーバ3をネットワークに接続するインターフェースである。
図2のアプリケーション29に含まれる印刷環境共用アプリ24や管理アプリ25などの各アプリに対応するアプリケーションプログラムや、SPSサーバ3の全体の処理を制御するメインプログラムは、例えば、CD−ROMなどの記録媒体34によってSPSサーバ3に提供されるか、ネットワークを通じてダウンロードされる。記録媒体34は、ドライブ装置33にセットされ、前記アプリケーションプログラムや前記メインプログラムなどが記録媒体34からドライブ装置33を介してHDD39にインストールされる。
ROM35は、データなどを格納する。RAM36は、SPSサーバ3の起動時にHDD39から前記アプリケーションプログラムや前記メインプログラムなどを読み出して格納する。CPU37は、RAM36に読み出され格納された前記アプリケーションプログラムや前記メインプログラムなどに従って処理を実行する。
以下、SPSサーバ3(A−1−2)からSPSサーバ3(A−1)への接続要求を、図4を用いて説明する。
図4は、接続要求を説明するための概念図(その1)である。
図4に示すように、例えば、接続を要求する要求元であるSPSサーバ3(A−1−2)は、接続を要求する要求先であるSPSサーバ3(A−1)に対して、SPSサーバ3(A−1)の下位に接続するよう要求する。
以下、図4に示した接続によって、それぞれのSPSサーバ3に格納されているサービスリストに追加されたデータの例を、図5を用いて説明する。
図5は、サービスリストへのデータの追加を説明するための図(その1)である。
図5に示されるように、サービスリストには、SPSサーバ3に実装されている当該印刷環境共用サービス13が参照可能な、他の印刷環境共用サービス13にアクセスするためのアクセス情報、例えばIPアドレスやホスト名が含まれる。
例えば、図5に示すサービスリストには、当該印刷環境共用サービス13が参照可能な、当該印刷環境共用サービス13に対して上位の印刷環境共用サービス13のアクセス情報と、同位の印刷環境共用サービス13のアクセス情報と、下位の印刷環境共用サービス13のアクセス情報とが含まれている。
なお、説明の簡略化のため、以下において、当該印刷環境共用サービス13に対して上位や同位や下位の印刷環境共用サービス13が存在しない場合は「なし」と記述する。
また、説明の簡略化のため、以下サービスリストの説明においては、当該印刷環境共用サービス13が参照可能な他の印刷環境共用サービス13のアクセス情報を図5に示されるようなSPSサーバ3を表すA−0やA−1やA−1−1などと記述する。
図5(A)は、SPSサーバ3(A−1−2)に格納されているサービスリストの接続前と接続後のデータの一例である。
図5(A)に示されるように、SPSサーバ3(A−1)の下位にSPSサーバ3(A−1−2)が接続されると、SPSサーバ3(A−1−2)に格納されているサービスリストには、上位にA−1が、同位にA−1−1が新たに追加される。
図5(B)は、SPSサーバ3(A−1)に格納されているサービスリストの接続前と接続後のデータの一例である。
図5(B)に示されるようにSPSサーバ3(A−1)の下位にSPSサーバ3(A−1−2)が接続されると、SPSサーバ3(A−1)に格納されているサービスリストには、下位にA−1−2が新たに追加される。
図5(C)は、SPSサーバ3(A−1−1)に格納されているサービスリストの接続前と接続後のデータの一例である。
図5(C)に示されるようにSPSサーバ3(A−1)の下位にSPSサーバ3(A−1−2)が接続されると、SPSサーバ3(A−1−1)に格納されているサービスリストには、同位にA−1−2が新たに追加される。
なお、SPSサーバ3(A−1−2)の同位であるSPSサーバ3(A−1−1)には、SPSサーバ3(A−1−1)の上位であるSPSサーバ3(A−1)からSPSサーバ3(A−1−2)と同位として接続するよう要求する構成であってもよいし、図4では説明を省略したが、SPSサーバ3(A−1−2)からSPSサーバ3(A−1−1)に対して同位として接続するよう要求を行う構成であってもよい。
また、図4及び図5では、下位のSPSサーバ3から上位のSPSサーバ3に対して接続の要求を送信する例を用いて説明を行ったが、上位のSPSサーバ3から下位のSPSサーバ3に対して接続の要求を送信するようにしてもよい。
図5に示すようなサービスリストを用いることによって、SPSサーバ3は、図4に示すような階層構造を有するシステムを構築することができる。
以下、SPSサーバ3(A−1−2)からSPSサーバ3(A−1)への切断要求を、図6を用いて説明する。
図6は、切断要求を説明するための概念図(その1)である。
図6に示すように、切断を要求する要求元であるSPSサーバ3(A−1−2)は、切断を要求する要求先であるSPSサーバ3(A−1)に対して切断の要求を送信する。
以下、図6に示した切断によって、それぞれのSPSサーバ3に格納されているサービスリストから削除されたデータの例を、図7を用いて説明する。
図7は、サービスリストからのデータの削除を説明するための図(その1)である。
図7(A)は、SPSサーバ3(A−1−2)に格納されているサービスリストの切断前と切断後のデータの一例である。
図7(A)に示されるようにSPSサーバ3(A−1)の下位からSPSサーバ3(A−1−2)が切断されると、SPSサーバ3(A−1−2)に格納されているサービスリストからは、上位のA−1と、同位のA−1−1とが削除される。
図7(B)は、SPSサーバ3(A−1)に格納されているサービスリストの切断前と切断後のデータの一例である。
図7(B)に示されるようにSPSサーバ3(A−1)の下位からSPSサーバ3(A−1−2)が切断されると、SPSサーバ3(A−1)に格納されているサービスリストからは、下位のA−1−2が削除される。
図7(C)は、SPSサーバ3(A−1−1)に格納されているサービスリストの切断前と切断後のデータの一例である。
図7(C)に示されるようにSPSサーバ3(A−1)の下位からSPSサーバ3(A−1−2)が切断されると、SPSサーバ3(A−1−1)に格納されているサービスリストからは、同位のA−1−2が削除される。
なお、SPSサーバ3(A−1−2)の同位であるSPSサーバ3(A−1−1)には、SPSサーバ3(A−1−1)の上位であるSPSサーバ3(A−1)からSPSサーバ3(A−1−2)を切断するよう要求する構成であってもよいし、図6では説明を省略したが、SPSサーバ3(A−1−2)からSPSサーバ3(A−1−1)に対して切断するよう要求を行う構成であってもよい。
また、図6及び図7では、下位のSPSサーバ3から上位のSPSサーバ3に対して切断の要求を送信する例を用いて説明を行ったが、上位のSPSサーバ3から下位のSPSサーバ3に対して切断の要求を送信するようにしてもよい。
以下、SPSサーバ3(E−1)から他のSPSサーバ3への接続要求を、図8を用いて説明する。
図8は、接続要求を説明するための概念図(その2)である。
図8に示すように、接続を要求する要求元であるSPSサーバ3(E−1)は、接続を要求する要求先である他のSPSサーバ3に対して接続の要求を送信する。
以下、図8に示した接続によって、それぞれのSPSサーバ3に格納されているサービスリストに追加されたデータの例を、図9を用いて説明する。
図9は、サービスリストへのデータの追加を説明するための図(その2)である。
図9(A)は、SPSサーバ3(A−1〜D−1)に格納されているサービスリストの接続前と接続後のデータの一例である。
図9(A)に示されるようにSPSサーバ3(A−1〜D−1)の同位にSPSサーバ3(E−1)が接続されると、SPSサーバ3(A−1〜D−1)に格納されているサービスリストには、同位にE−1が新たに追加される。
なお、図9(A)においては説明の簡略化のため、当該自身の印刷環境共用サービス13のアクセス情報も同位に格納されているが、該アクセス情報は格納されていてもよいし、格納されていなくてもよい。以下の図9(B)においても同様である。
図9(B)は、SPSサーバ3(E−1)に格納されているサービスリストの接続前と接続後のデータの一例である。
図9(B)に示されるようにSPSサーバ3(A−1〜D−1)の同位にSPSサーバ3(E−1)が接続されると、SPSサーバ3(E−1)に格納されているサービスリストには、同位にA−1〜E−1が新たに追加される。
図9に示すようなサービスリストを用いることによって、SPSサーバ3は、図8に示すような並列構造を有するシステムを構築することができる。
なお、図8及び図9においては、SPSサーバ3(E−1)からSPSサーバ3(A−1〜D−1)に対して接続の要求を送信する例を用いて説明を行ったが、SPSサーバ3(A−1〜D−1)の中の何れかのSPSサーバ3からSPSサーバ3(E−1)に対して接続の要求を送信するようにしてもよい。
以下、SPSサーバ3(E−1)から他のSPSサーバ3への切断要求を、図10を用いて説明する。
図10は、切断要求を説明するための概念図(その2)である。
図10に示すように、切断を要求する要求元であるSPSサーバ3(E−1)は、切断を要求する要求先である他のSPSサーバ3に対して切断の要求を送信する。
以下、図10に示した切断によって、それぞれのSPSサーバ3に格納されているサービスリストから削除されたデータの例を、図11を用いて説明する。
図11は、サービスリストからのデータの削除を説明するための図(その2)である。
図11(A)は、SPSサーバ3(A−1〜D−1)に格納されているサービスリストの切断前と切断後のデータの一例である。
図11(A)に示されるようにSPSサーバ3(A−1〜D−1)の同位からSPSサーバ3(E−1)が切断されると、SPSサーバ3(A−1〜D−1)に格納されているサービスリストからは、同位のE−1が削除される。
なお、図11(A)においては説明の簡略化のため、当該自身の印刷環境共用サービス13のアクセス情報も同位に格納されているが、該アクセス情報は格納されていてもよいし、格納されていなくてもよい。以下の図11(B)においても同様である。
図11(B)は、SPSサーバ3(E−1)に格納されているサービスリストの接続前と接続後のデータの一例である。
図11(B)に示されるようにSPSサーバ3(A−1〜D−1)の同位からSPSサーバ3(E−1)が切断されると、SPSサーバ3(E−1)に格納されているサービスリストからは、同位のA−1〜E−1が削除される。
なお、図10及び図11においては、SPSサーバ3(E−1)からSPSサーバ3(A−1〜D−1)に対して切断の要求を送信する例を用いて説明を行ったが、SPSサーバ3(A−1〜D−1)の中の何れかのSPSサーバ3からSPSサーバ3(E−1)に対して切断の要求を送信するようにしてもよい。
以下、SPSサーバ3(E−1)からSPSサーバ3(R−0)への接続要求を、図12を用いて説明する。
図12は、接続要求を説明するための概念図(その3)である。
図12に示すように、接続を要求する要求元であるSPSサーバ3(E−1)は、接続を要求する要求先であるSPSサーバ3(R−0)に対して接続の要求を送信する。
以下、図12に示した接続によって、それぞれのSPSサーバ3に格納されているサービスリストに追加されたデータの例を、図13を用いて説明する。
図13は、サービスリストへのデータの追加を説明するための図(その3)である。
図13(A)は、SPSサーバ3(R−0)に格納されているサービスリストの接続前と接続後のデータの一例である。
図13(A)に示されるようにSPSサーバ3(R−0)の下位にSPSサーバ3(E−1)が接続されると、SPSサーバ3(R−0)に格納されているサービスリストには、下位にE−1が新たに追加される。
図13(B)は、SPSサーバ3(E−1)に格納されているサービスリストの接続前と接続後のデータの一例である。
図13(B)に示されるようにSPSサーバ3(R−0)の下位にSPSサーバ3(E−1)が接続されると、SPSサーバ3(E−1)に格納されているサービスリストには、上位にR−0が新たに追加される。
図13に示すようなサービスリストを用いることによって、SPSサーバ3は、図12に示すような構造を有するシステムを構築することができる。
なお、図12及び図13においては、下位のSPSサーバ3(E−1)から上位のSPSサーバ3(R−0)に対して接続の要求を送信する例を用いて説明を行ったが、上位のSPSサーバ3(R−0)から下位のSPSサーバ3(E−1)に対して接続の要求を送信するようにしてもよい。
以下、SPSサーバ3(E−1)からSPSサーバ3(R−0)への切断要求を、図14を用いて説明する。
図14は、切断要求を説明するための概念図(その3)である。
図14に示すように、切断を要求する要求元であるSPSサーバ3(E−1)は、切断を要求する要求先であるSPSサーバ3(R−0)に対して切断の要求を送信する。
以下、図14に示した切断によって、それぞれのSPSサーバ3に格納されているサービスリストから削除されたデータの例を、図15を用いて説明する。
図15は、サービスリストからのデータの削除を説明するための図(その3)である。
図15(A)は、SPSサーバ3(R−0)に格納されているサービスリストの切断前と切断後のデータの一例である。
図15(A)に示されるようにSPSサーバ3(R−0)の下位からSPSサーバ3(E−1)が切断されると、SPSサーバ3(R−0)に格納されているサービスリストからは、下位のE−1が削除される。
図15(B)は、SPSサーバ3(E−1)に格納されているサービスリストの接続前と接続後のデータの一例である。
図15(B)に示されるようにSPSサーバ3(R−0)の下位からSPSサーバ3(E−1)が切断されると、SPSサーバ3(E−1)に格納されているサービスリストからは、上位のR−0が削除される。
なお、図14及び図15においては、下位のSPSサーバ3(E−1)から上位のSPSサーバ3(R−0)に対して切断の要求を送信する例を用いて説明を行ったが、上位のSPSサーバ3(R−0)から下位のSPSサーバ3(E−1)に対して切断の要求を送信するようにしてもよい。
以下、上述したような接続や切断の処理を行うSPSサーバ3の機能を以下に示す図16を用いて説明する。
図16は、SPSサーバの一例の機能を説明するための図である。
図16においてSPSサーバ3は、HTTPに従った通信制御を行うHTTP処理部63と、後述するサービスリストなどを格納するHDD39と、印刷環境共用アプリ24と、管理アプリ25とを有する。
また、XML(eXtensible Markup Language)で記述されたメッセージを処理するXML処理部61と、SOAPに従ってメッセージ交換を行うSOAP処理部62とは、印刷環境共用アプリ24及び管理アプリ25とで共用される。
印刷環境共用アプリ24に含まれる印刷環境共用サービス13は、接続・切断管理部41や、整合性検査部42、文書取得部43、転送部44、サービスリスト取得部45などを有する。
接続・切断管理部41は、当該印刷環境共用サービス13と他の印刷環境共用サービス13との接続及び/又は切断を管理する。
整合性検査部42は、当該印刷環境共用サービス13と他の印刷環境共用サービス13とを接続した場合及び/又は切断した場合のシステムの整合性を検査する。
以下、整合性の検査について、図17を用いて説明する。図17は、整合性の検査について説明するための概念図である。
図17に示すように、例えば、SPSサーバ3(A−1−2)が既にSPSサーバ3(A−1)の下位に接続されている場合、SPSサーバ3(A−1−2)の下位に位置するSPSサーバ3(A−1−2−1)がSPSサーバ3(A−1)に接続要求を送信し、接続を行うと、A−1、A−1−2、A−1−2−1の間で経路がループしてしまい、システムとしての整合性が保たれない。
図16の整合性検査部42は、当該印刷環境共用サービス13に他の印刷環境共用サービス13を接続した場合及び/又は当該印刷環境共用サービス13から他の印刷環境共用サービス13を切断した場合、例えば、図17に示すようなループが起こらないか否か、整合性を検査する。
文書取得部43は、図1に示したWebサーバ1などからの要求に基づいて、指定された文書を、リポジトリサービス12を介してリポジトリサーバ2より取得する。
転送部44は、Webサーバ1を介してユーザより指定された印刷条件や、印刷場所の情報、印刷場所の印刷環境共用サービス13までの経路情報、印刷を行うプリンタ情報などの予約情報及び/又は文書取得部43において取得した文書の文書データなどを他の印刷環境共用サービス13に転送する。
サービスリスト取得部45は、他のSPSサーバ3に格納されているサービスリストを、前記他のSPSサーバ3に実装されている印刷環境共用サービス13を介して、前記他のSPSサーバ3より取得する。
一方、管理アプリ25は、接続・切断管理部51と、整合性検査部52とを有する。
接続・切断管理部51は、接続・切断管理部41と同様、当該SPSサーバ3に実装されている印刷環境共用サービス13と他の印刷環境共用サービス13との接続及び/又は切断を管理する。但し、接続・切断管理部51は、後述する図29に示すような画面をユーザに提供するなどのユーザI/Fを提供する。
整合性検査部52は、整合性検査部42と同様、当該SPSサーバ3に実装されている印刷環境共用サービス13と他の印刷環境共用サービス13とを接続した場合及び/又は切断した場合のシステムの整合性を検査する。
以下、SPSサーバ3における接続処理の一例を、図18を用いて説明する。図18は、SPSサーバにおける接続処理を説明するための処理フロー図(その1)である。
なお、図18においては、図4のようにSPSサーバ3(A−1−2)からSPSサーバ3(A−1)への接続要求を想定している。
SPSサーバ3(A−1−2)の管理者は、後述する図29に示すような管理アプリ25の接続・切断管理部51が提供するサービス接続/切断画面などを用いて接続要求先のSPSサーバ3を指定し、接続の要求を送信するよう指示する。
SPSサーバ3(A−1−2)の管理者によって、上述したような接続の要求を送信するよう指示されると、管理アプリ25は以下の処理を実行する。
ステップS10において接続要求元であるSPSサーバ3(A−1−2)の管理アプリ25の接続・切断管理部51は、接続要求先であるSPSサーバ3(A−1)の印刷環境共用サービス13に対して、接続を要求するメソッド(addServiceList)を含むメッセージを発行して送信する。なお、addServiceListメソッドのI/Fの一例を、後述する図21に示す。
ステップS10に続いてステップS11に進み、SPSサーバ3(A−1−2)の管理アプリ25の接続・切断管理部51は、接続要求先のSPSサーバ3の情報(例えばURLや場所や住所)や、要求した日時の情報などを要求中の情報を含む要求中リストに追加する。
一方、ステップS30において接続の要求先であるSPSサーバ3(A−1)の印刷環境共用サービス13の接続・切断管理部41は、ステップS10において、SPSサーバ3(A−1−2)より送信されたメッセージを受信する。
ステップS30に続いてステップS31に進み、SPSサーバ3(A−1)の印刷環境共用サービス13の接続・切断管理部41は、接続要求元のSPSサーバ3の情報(例えばURLや場所や住所)や、要求した日時の情報などを要求受け付け中の情報を含む要求受け付け中リストに追加する。
ステップS31に続いてステップS32に進み、SPSサーバ3(A−1)の印刷環境共用サービス13の接続・切断管理部41は、接続の要求を受信した旨の情報を、メールなどを用いてSPSサーバ3(A−1)の管理者に通知する。
接続の要求を受信した旨のメールを取得したSPSサーバ3(A−1)の管理者は、SPSサーバ3(A−1)の管理アプリ25を起動し、SPSサーバ3(A−1)の管理アプリ25の接続・切断管理部51が提供する後述する図29に示されるサービス接続/切断画面の、要求受け付け中リストに表示されている受け付け中の要求を選択して、接続を承認するか承認しないかを決定し、承認ボタン88又は非承認ボタン89をクリックする。
ステップS40において、SPSサーバ3(A−1)の管理アプリ25の接続・切断管理部51は、SPSサーバ3(A−1)の管理者によって接続が承認されたと判定すると(ステップS40においてYES)、ステップS41に進み、SPSサーバ3(A−1)の管理者によって接続が承認されなかったと判定すると(ステップS40においてNO)、ステップS42に進む。
例えば、SPSサーバ3(A−1)の管理アプリ25の接続・切断管理部51は、後述する図29に示されるサービス接続/切断画面において、承認ボタン88がクリックされた旨の情報を取得すると、SPSサーバ3(A−1)の管理者によって接続が承認されたと判定し、非承認ボタン89がクリックされた旨の情報を取得すると、SPSサーバ3(A−1)の管理者によって接続が承認されなかったと判定する。
ステップS41では、SPSサーバ3(A−1)の管理アプリ25の整合性検査部52が、接続要求元のSPSサーバ3(A−1−2)の要求に基づいて、例えば、SPSサーバ3(A−1)の下位にSPSサーバ3(A−1−2)を接続した場合、つまり図4に示すような接続を行って、図5(B)に示すように、当該SPSサーバ3(A−1)のサービスリストに新たなデータを追加した場合、システムとして整合性を保つことができるか否かを検査する。なお、整合性の検査のより具体的な説明は、後述する図26から図28を用いて説明する。以下の整合性検査においても同様である。
また、ステップS41では、SPSサーバ3(A−1)の管理アプリ25の整合性検査部52が、接続の要求元であるSPSサーバ3(A−1−2)の印刷環境共用サービス13の整合性検査部42に対して、SPSサーバ3(A−1−2)に格納されているサービスリストの整合性を検査する旨を要求するメソッド(checkList)を含むメッセージを発行して送信する。なお、checkListメソッドのI/Fの一例を、後述する図22に示す。
ステップS20において該メッセージを受信したSPSサーバ3(A−1−2)の印刷環境共用サービス13の整合性検査部42は、当該SPSサーバ3(A−1−2)の要求に基づいて、例えば、SPSサーバ3(A−1−2)の上位にSPSサーバ3(A−1)を接続した場合、つまり図4に示すような接続を行って、図5(A)に示すように、当該SPSサーバ3(A−1−2)のサービスリストに新たなデータを追加した場合、システムとして整合性を保つことができるか否かを検査する。
また、ステップS41では、SPSサーバ3(A−1)の管理アプリ25の整合性検査部52が、SPSサーバ3(A−1−2)を接続した場合、該SPSサーバ3(A−1−2)と同位となるSPSサーバ3(A−1−1)の印刷環境共用サービス13の整合性検査部42に対して、SPSサーバ3(A−1−1)に格納されているサービスリストの整合性を検査する旨を要求するメソッド(checkList)を含むメッセージを発行して送信する。
ステップS50において該メッセージを受信したSPSサーバ3(A−1−1)の印刷環境共用サービス13の整合性検査部42は、例えば、図4に示すような接続を行って、図5(C)に示すように、当該SPSサーバ3(A−1−1)のサービスリストに新たなデータを追加した場合、システムとして整合性を保つことができるか否かを検査する。
ステップS42では、SPSサーバ3(A−1)の管理アプリ25の接続・切断管理部51が、ステップS40における判定結果と、ステップS41における検査結果と、ステップS20における検査結果と、ステップS50における検査結果とを、メールを用いてSPSサーバ3(A−1−2)の管理者及びSPSサーバ3(A−1−1)の管理者に通知する。
ステップS42に続いてステップS43に進み、SPSサーバ3(A−1)の管理アプリ25の接続・切断管理部51は、ステップS40における判定結果と、ステップS41における検査結果と、ステップS20における検査結果と、ステップS50における検査結果とに基づいて、接続しても良いか否かを判定する。
ステップS43においてSPSサーバ3(A−1)の管理アプリ25の接続・切断管理部51は、接続してもよいと判定すると(ステップS43においてYES)、ステップS44に進み、接続してはいけないと判定すると(ステップS43においてNO)、ステップS45に進む。
ステップS44では、SPSサーバ3(A−1)の管理アプリ25の接続・切断管理部51が、SPSサーバ3(A−1)に格納されているサービスリストに、接続要求元の印刷環境共用サービス13(A−1−2)のアクセス情報などのデータを追加する。
ステップS45では、SPSサーバ3(A−1)の管理アプリ25の接続・切断管理部51が、ステップS31において、追加されていた情報を、要求受け付け中リストから削除する。
なお、ステップS44からステップS45の間に、もう一度整合性を検査する処理を行ってもよい。
一方、SPSサーバ3(A−1)の管理アプリ25の接続・切断管理部51は、上記ステップS42からステップS43に処理を進めると同時に、その間に、SPSサーバ3(A−1−2)の印刷環境共用サービス13及びSPSサーバ3(A−1−1)の印刷環境共用サービス13に対して、ステップS40における判定結果と、ステップS41における検査結果と、ステップS20における検査結果と、ステップS50における検査結果とを引数として含む接続の判定を要求するメソッド(sendInfo)を含むメッセージを発行して送信する。なお、sendInfoメソッドのI/Fの一例は、後述する図23に示す。
ステップS21ではSPSサーバ3(A−1−2)の印刷環境共用サービス13が、前記メソッドに含まれるステップS40における判定結果と、ステップS41における検査結果と、ステップS20における検査結果と、ステップS50における検査結果とに基づいて、接続しても良いか否かを判定する。
SPSサーバ3(A−1−2)の印刷環境共用サービス13は、接続してもよいと判定すると(ステップS21においてYES)、ステップS22に進み、接続してはいけないと判定すると(ステップS21においてNO)、ステップS23に進む。
ステップS22では、SPSサーバ3(A−1−2)の印刷環境共用サービス13の接続・切断管理部41が、SPSサーバ3(A−1−2)に格納されているサービスリストに、接続要求先の印刷環境共用サービス13(A−1)と、同位となる印刷環境共用サービス13(A−1−1)と、のアクセス情報などのデータを追加する。
ステップS23では、SPSサーバ3(A−1−2)の印刷環境共用サービス13の接続・切断管理部41が、ステップS11において追加されていた情報を、要求中リストから削除するなどして、要求中リストを更新する。
なお、ステップS22からステップS23の間に、もう一度整合性を検査する処理を行ってもよい。
一方ステップS51ではSPSサーバ3(A−1−1)の印刷環境共用サービス13が、前記メソッドに含まれるステップS40における判定結果と、ステップS41における検査結果と、ステップS20における検査結果と、ステップS50における検査結果とに基づいて、接続しても良いか否かを判定する。
SPSサーバ3(A−1−1)の印刷環境共用サービス13は、接続してもよいと判定すると(ステップS51においてYES)、ステップS52に進み、接続してはいけないと判定すると(ステップS51においてNO)、処理を終了する。
ステップS52では、SPSサーバ3(A−1−1)の印刷環境共用サービス13の接続・切断管理部41が、SPSサーバ3(A−1−1)に格納されているサービスリストに、接続要求元の印刷環境共用サービス13(A−1−2)のアクセス情報などのデータを追加する。
なお、ステップS52の後に、もう一度整合性を検査する処理を行ってもよい。
図18に示した処理を行うことによって、図4や図5を用いて説明したような接続及びサービスリストへのデータの追加を行うことができる。但し、図18においては、接続要求元のSPSサーバ3(A−1−2)と同位となるSPSサーバ3(A−1−1)の接続の許可・不許可の権限は、SPSサーバ3(A−1)と、SPSサーバ3(A−1−1)と、は既に接続済みであるので、接続要求元の上位となるSPSサーバ3(A−1)に移譲しているものとして説明を行っているために、SPSサーバ3(A−1−1)の管理者の判断を仰いでいない。
なお、切断の処理は、図18において説明した「接続」を「切断」に、「データの追加」を「データの削除」などに変えるだけなので説明を省略する。但し、切断の場合は、必ずしも整合性の検査は行わなくてもよい。
以下、SPSサーバ3における接続処理の他の例を、図19を用いて説明する。
図19は、SPSサーバにおける接続処理を説明するための処理フロー図(その2)である。
なお、図19においては、図18と同様、図4のようにSPSサーバ3(A−1−2)からSPSサーバ3(A−1)への接続要求を想定している。
SPSサーバ3(A−1−2)の管理者は、後述する図29に示すような管理アプリ25の接続・切断管理部51が提供するサービス接続/切断画面などを用いて接続要求先のSPSサーバ3を指定し、接続の要求を送信するよう指示する。
SPSサーバ3(A−1−2)の管理者によって、上述したような接続の要求を送信するよう指示されると、管理アプリ25は以下の処理を実行する。
ステップS60において接続要求元であるSPSサーバ3(A−1−2)の管理アプリ25の接続・切断管理部51は、接続要求先であるSPSサーバ3(A−1)の印刷環境共用サービス13に対して、接続を要求するメソッド(addServiceList)を含むメッセージを発行して送信する。
ステップS60に続いてステップS61に進み、SPSサーバ3(A−1−2)の管理アプリ25の接続・切断管理部51は、接続要求先のSPSサーバ3の情報(例えばURLや場所や住所)や、要求した日時の情報などを要求中の情報を含む要求中リストに追加する。
一方、ステップS80において接続の要求先であるSPSサーバ3(A−1)の印刷環境共用サービス13の接続・切断管理部41は、ステップS60において、SPSサーバ3(A−1−2)より送信されたメッセージを受信する。
ステップS80に続いてステップS81に進み、SPSサーバ3(A−1)の印刷環境共用サービス13の接続・切断管理部41は、接続要求元のSPSサーバ3の情報(例えばURLや場所や住所)や、要求された日時の情報などを要求受け付け中の情報を含む要求受け付け中リストに追加する。
ステップS81に続いてステップS82に進み、SPSサーバ3(A−1)の印刷環境共用サービス13の接続・切断管理部41は、接続の要求を受信した旨の情報を、メールなどを用いてSPSサーバ3(A−1)の管理者に通知する。
接続の要求を受信した旨のメールを取得したSPSサーバ3(A−1)の管理者は、SPSサーバ3(A−1)の管理アプリ25を起動し、SPSサーバ3(A−1)の管理アプリ25の接続・切断管理部51が提供する後述する図29に示されるサービス接続/切断画面の、要求受け付け中リスト表示エリア85に表示されている受け付け中の要求を選択して、接続を承認するか承認しないかを決定し、承認ボタン88又は非承認ボタン89をクリックする。
ステップS90において、SPSサーバ3(A−1)の管理アプリ25の接続・切断管理部51は、SPSサーバ3(A−1)の管理者によって接続が承認されたと判定すると(ステップS90においてYES)、ステップS91に進み、SPSサーバ3(A−1)の管理者によって接続が承認されなかったと判定すると(ステップS90においてNO)、ステップS92に進む。
例えば、SPSサーバ3(A−1)の管理アプリ25の接続・切断管理部51は、後述する図29に示されるサービス接続/切断画面において、承認ボタン88がクリックされた旨の情報を取得すると、SPSサーバ3(A−1)の管理者によって接続が承認されたと判定し、非承認ボタン89がクリックされた旨の情報を取得すると、SPSサーバ3(A−1)の管理者によって接続が承認されなかったと判定する。
ステップS91では、SPSサーバ3(A−1)の管理アプリ25の整合性検査部52が、接続要求元のSPSサーバ3(A−1−2)の要求に基づいて、例えば、SPSサーバ3(A−1)の下位にSPSサーバ3(A−1−2)を接続した場合、つまり図4に示すような接続を行って、図5(B)に示すように、当該SPSサーバ3(A−1)のサービスリストに新たなデータを追加した場合、システムとして整合性を保つことができるか否かを検査する。
また、ステップS91では、SPSサーバ3(A−1)の管理アプリ25の整合性検査部52が、接続の要求元であるSPSサーバ3(A−1−2)の印刷環境共用サービス13の整合性検査部42に対して、SPSサーバ3(A−1−2)に格納されているサービスリストの整合性を検査する旨を要求するメソッド(checkList)を含むメッセージを発行して送信する。
ステップS70において該メッセージを受信したSPSサーバ3(A−1−2)の印刷環境共用サービス13の整合性検査部42は、当該SPSサーバ3(A−1−2)の要求に基づいて、例えば、SPSサーバ3(A−1−2)の上位にSPSサーバ3(A−1)を接続した場合、つまり図4に示すような接続を行って、図5(A)に示すように、当該SPSサーバ3(A−1−2)のサービスリストに新たなデータを追加した場合、システムとして整合性を保つことができるか否かを検査する。
また、ステップS91では、SPSサーバ3(A−1)の管理アプリ25の整合性検査部52が、SPSサーバ3(A−1−2)を接続した場合、該SPSサーバ3(A−1−2)と同位となるSPSサーバ3(A−1−1)の印刷環境共用サービス13の整合性検査部42に対して、SPSサーバ3(A−1−1)に格納されているサービスリストの整合性を検査する旨を要求するメソッド(checkList)を含むメッセージを発行して送信する。
ステップS100において該メッセージを受信したSPSサーバ3(A−1−1)の印刷環境共用サービス13の整合性検査部42は、例えば、図4に示すような接続を行って、図5(C)に示すように、当該SPSサーバ3(A−1−1)のサービスリストに新たなデータを追加した場合、システムとして整合性を保つことができるか否かを検査する。
ステップS92では、SPSサーバ3(A−1)の管理アプリ25の接続・切断管理部51が、ステップS90における判定結果と、ステップS91における検査結果と、ステップS70における検査結果と、ステップS100における検査結果とを、メールを用いてSPSサーバ3(A−1−2)の管理者及びSPSサーバ3(A−1−1)の管理者に通知する。
ステップS92に続いてステップS93に進み、SPSサーバ3(A−1)の管理アプリ25の接続・切断管理部51は、ステップS90における判定結果と、ステップS91における検査結果と、ステップS70における検査結果と、ステップS100における検査結果とに基づいて、接続しても良いか否かを判定する。
ステップS93においてSPSサーバ3(A−1)の管理アプリ25の接続・切断管理部51は、接続してもよいと判定すると(ステップS93においてYES)、ステップS95に進み、接続してはいけないと判定すると(ステップS93においてNO)、ステップS94に進む。
ステップS94では、SPSサーバ3(A−1)の管理アプリ25の接続・切断管理部51が、要求中リストの更新を依頼する旨のメソッド(changeLog)を含むメッセージを発行してSPSサーバ3(A−1−2)の印刷環境共用サービス13に送信する。なお、changeLogメソッドのI/Fの一例は、後述する図25に示す。
一方、ステップS95では、SPSサーバ3(A−1)の管理アプリ25の接続・切断管理部51が、接続要求元の印刷環境共用サービス13のアクセス情報などのデータをサービスリストに追加する旨を要求するメソッド(changeServiceList)を含むメッセージを発行してSPSサーバ3(A−1−2)の印刷環境共用サービス13及びSPSサーバ3(A−1−1)の印刷環境共用サービス13に送信する。なお、changeServiceListメソッドのI/Fの一例は、後述する図24に示す。
ステップS71において該メッセージを受信したSPSサーバ3(A−1−2)の印刷環境共用サービス13の接続・切断管理部41は、SPSサーバ3(A−1−2)に格納されているサービスリストに、接続要求先の印刷環境共用サービス13(A−1)と、同位となる印刷環境共用サービス13(A−1−1)と、のアクセス情報などのデータを追加する。
ステップS72では、SPSサーバ3(A−1−2)の印刷環境共用サービス13の接続・切断管理部41が、ステップS61において追加されていた情報を、要求中リストから削除するなどして、要求中リストを更新する。
なお、ステップS71とステップS72との間に、もう一度整合性を検査する処理を行ってもよい。
また、ステップS101において前記メッセージを受信したSPSサーバ3(A−1−1)の印刷環境共用サービス13の接続・切断管理部41は、SPSサーバ3(A−1−1)に格納されているサービスリストに、接続要求元の印刷環境共用サービス13(A−1−2)のアクセス情報などのデータを追加する。
なお、ステップS101の後に、もう一度整合性を検査する処理を行っても良い。
ステップS95に続いてステップS96に進み、SPSサーバ3(A−1)の管理アプリ25の接続・切断管理部51は、SPSサーバ3(A−1)に格納されているサービスリストに、接続要求元の印刷環境共用サービス13(A−1−2)のアクセス情報などのデータを追加する。
ステップS97では、SPSサーバ3(A−1)の管理アプリ25の接続・切断管理部51が、ステップS81において、追加されていた情報を、要求受け付け中リストから削除する。
なお、ステップS96からステップS97の間に、もう一度整合性を検査する処理を行ってもよい。
図19に示した処理は、図18に示した処理に比べて、接続しても良いか否かの判定を、一箇所(SPSサーバ3(A−1)の管理アプリ25)で行っている。
図19に示した処理を行うことによっても、図4や図5を用いて説明したような接続及びサービスリストへのデータの追加を行うことができる。
なお、切断の処理は、図19において説明した「接続」を「切断」に、「データの追加」を「データの削除」などに変えるだけなので説明を省略する。但し、切断の場合は、必ずしも整合性の検査は行わなくてもよい。
以下、SPSサーバ3における接続処理の他の例を、図20を用いて説明する。図20は、SPSサーバにおける接続処理を説明するための処理フロー図(その3)である。
図20の処理では、図18の要求先のSPSサーバ3(A−1)の管理アプリ25が行っていた処理を、要求先のSPSサーバ3(A−1)の印刷環境共用サービス13が行っている。
例えば自動承認などの設定を印刷環境共用サービス13に行うことによって、図18において要求先のSPSサーバ3(A−1)の管理アプリ25が行っていた処理を要求先のSPSサーバ3(A−1)の印刷環境共用サービス13が行うことができる。
なお、自動承認が設定されているか否かの確認処理を図20のステップS132の後で行い、自動承認が設定されていれば(例えば、あるファイルにフラグがセットされていれば)、図20に示されるステップS133からステップS137までの処理を行い、自動承認が設定されていなければ(例えば、あるファイルにフラグがセットされていなかったら)、図18に示されるステップS40からステップS45の処理を行うようにしてもよい。
図20に示される処理を行うことによって、要求先のSPSサーバ3の管理者は、自動的に接続を許可し、システムの整合性さえ取れていれば、当該SPSサーバ3のサービスリストに相手先を追加することができる。
なお、切断の処理は、図18と同様、図20において説明した「接続」を「切断」に、「データの追加」を「データの削除」などに変えるだけなので説明を省略する。但し、切断の場合は、必ずしも整合性の検査は行わなくてもよい。
以下、addServiceListメソッドのI/Fの一例を図21に示す。図21は、addServiceListメソッドのI/Fを示す図である。
例えば管理アプリ25の接続・切断管理部51は、図21(A)に示されるような引数を与えて、addServiceListメソッドを呼び出して、図21(B)に示されるような戻り値を取得する。
以下、checkListメソッドのI/Fの一例を図22に示す。図22は、checkListメソッドのI/Fを示す図である。
例えば管理アプリ25の整合性検査部52は、図22(A)に示されるような引数を与えてcheckListメソッドを呼び出して、図22(B)に示されるような戻り値を取得する。
以下、sendInfoメソッドのI/Fの一例を図23に示す。図23は、sendInfoメソッドのI/Fを示す図である。
例えば管理アプリ25の接続・切断管理部51は、図23(A)に示されるような引数を与えてsendInfoメソッドを呼び出して、図23(B)に示されるような戻り値を取得する。
以下、changeServiceListメソッドのI/Fの一例を図24に示す。図24は、changeServiceListメソッドのI/Fを示す図である。
例えば管理アプリ25の接続・切断管理部51は、図24(A)に示されるような引数を与えてchangeServiceListメソッドを呼び出して、図24(B)に示されるような戻り値を取得する。
以下、changeLogメソッドのI/Fの一例を図25に示す。図25は、changeLogメソッドのI/Fを示す図である。
例えば管理アプリ25の接続・切断管理部51は、図25(A)に示されるような引数を与えてchangeLogメソッドを呼び出して、図25(B)に示されるような戻り値を取得する。
以下、整合性検査のより具体的な例を、図26から図28を用いて説明する。図26は、整合性の検査について説明するための図(その1)である。
図26(A)に示されるように、例えば既にSPSサーバ3(A)の下位として接続されているSPSサーバ3(C)が、当該SPSサーバ3(C)をSPSサーバ3(A)の下位として接続して欲しい旨の要求をSPSサーバ3(A)に対して送信した場合、SPSサーバ3(A)の整合性検査部42又は52は、整合性検査において、当該SPSサーバ3(A)が保持するサービスリストを参照し、既に当該SPSサーバ3(A)の下位としてSPSサーバ3(C)が存在しているか否かをチェックする。
SPSサーバ3(A)の整合性検査部42又は52は、当該SPSサーバ3(A)が保持するサービスリストに既に当該SPSサーバ3(A)の下位としてSPSサーバ3(C)が存在していると判定すると、整合性が保たれないとして、例えば接続を拒絶する。
なお、同様に、SPSサーバ3(C)の整合性検査部42又は52は、整合性検査において、当該SPSサーバ3(C)が保持するサービスリストを参照し、既に当該SPSサーバ3(C)の上位としてSPSサーバ3(A)が存在しているか否かをチェックする。
SPSサーバ3(C)の整合性検査部42又は52は、当該SPSサーバ3(C)が保持するサービスリストに既に当該SPSサーバ3(C)の上位としてSPSサーバ3(A)が存在していると判定すると、整合性が保たれないとして、例えば接続を中断する。
また、SPSサーバ3(B)の整合性検査部42又は52も、整合性検査において、当該SPSサーバ3(B)が保持するサービスリストを参照し、既に当該SPSサーバ3(B)の同位としてSPSサーバ3(C)が存在しているか否かをチェックする。
SPSサーバ3(B)の整合性検査部42又は52は、当該SPSサーバ3(B)が保持するサービスリストに既に当該SPSサーバ3(B)の同位としてSPSサーバ3(C)が存在していると判定すると、整合性が保たれないとして、例えば接続に係る処理を拒絶する。
なお、図26(A)では、既に接続されているSPSサーバ3(C)からSPSサーバ3(A)への下位への接続要求を用いて接合性の検査の説明を行ったが、図26(B)に示されるような、既に接続されているSPSサーバ3(A)からSPSサーバ3(C)への上位への接続要求の場合も同様である。
なお、本実施例においては、例えば図26(A)において、SPSサーバ3(A)と、SPSサーバ3(C)とが接続されていなかった場合、SPSサーバ3(C)が、SPSサーバ3(A)に対して、当該SPSサーバ3(C)をSPSサーバ3(A)の下位として接続して欲しい旨の要求を送って、整合性の検査を行った結果問題なかったとしたら、SPSサーバ3(A)は、要求に応じてSPSサーバ3(C)を当該SPSサーバ3(A)の下位としてサービスリストに登録し、一方SPSサーバ3(C)も、要求に応じてSPSサーバ3(A)を、当該SPSサーバ3(C)の上位としてサービスリストに登録することを前提としている。つまり、下位として接続して欲しい要求を送信しておきながら、要求先のSPSサーバ3を、当該SPSサーバ3の下位のサービスリストに登録するようなことは発生しないことを前提としている。また、上位として接続して欲しい要求を送信しておきながら、要求先のSPSサーバ3を、当該SPSサーバ3の上位のサービスリストに登録するようなことも発生しないことを前提としている。
以下、整合性の検査の他の例を、図27を用いて説明する。図27は、整合性の検査について説明するための図(その2)である。
図27(A)に示されるように、例えば既にSPSサーバ3(C)の下位として接続されているSPSサーバ3(D)が、当該SPSサーバ3(D)をSPSサーバ3(B)の下位として接続して欲しい旨の要求をSPSサーバ3(B)に対して送信した場合、SPSサーバ3(D)の整合性検査部42又は52は、整合性検査において、当該SPSサーバ3(D)が保持するサービスリストを参照し、既に当該SPSサーバ3(D)の上位として他のSPSサーバ3が存在するか否かをチェックする。
SPSサーバ3(D)の整合性検査部42又は52は、図27(A)に示されるように、当該SPSサーバ3(D)が保持するサービスリストに既に当該SPSサーバ3(D)の上位としてSPSサーバ3(C)が存在していると判定すると、整合性が保たれないとして例えば接続を中断する。
同様に、図27(B)に示されるように、例えばSPSサーバ3(B)が、当該SPSサーバ3(B)をSPSサーバ3(D)の上位として接続して欲しい旨の要求をSPSサーバ3(D)に対して送信した場合、SPSサーバ3(D)の整合性検査部42又は52は、整合性検査において、当該SPSサーバ3(D)が保持するサービスリストを参照し、既に当該SPSサーバ3(D)の上位として他のSPSサーバ3が存在するか否かをチェックする。
SPSサーバ3(D)の整合性検査部42又は52は、図27(B)に示されるように、当該SPSサーバ3(D)が保持するサービスリストに既に当該SPSサーバ3(D)の上位としてSPSサーバ3(C)が存在していると判定すると、整合性が保たれないとして例えば接続を拒絶する。
以下、整合性の検査の他の例を、図28を用いて説明する。図28は、整合性の検査について説明するための図(その3)である。
図28(A)に示されるように、例えば既にSPSサーバ3(C)の下位として接続されているSPSサーバ3(D)が、当該SPSサーバ3(D)をSPSサーバ3(B)の上位として接続して欲しい旨の要求をSPSサーバ3(B)に対して送信した場合、SPSサーバ3(B)の整合性検査部42又は52は、整合性検査において、当該SPSサーバ3(B)が保持するサービスリストを参照し、既に当該SPSサーバ3(B)の上位として他のSPSサーバ3が存在するか否かをチェックする。
SPSサーバ3(B)の整合性検査部42又は52は、図28(A)に示されるように、当該SPSサーバ3(B)が保持するサービスリストに既に当該SPSサーバ3(B)の上位としてSPSサーバ3(A)が存在していると判定すると、整合性が保たれないとして例えば接続を拒絶する。
同様に、図28(B)に示されるように、例えばSPSサーバ3(B)が、当該SPSサーバ3(B)をSPSサーバ3(D)の下位として接続して欲しい旨の要求をSPSサーバ3(D)に対して送信した場合、SPSサーバ3(B)の整合性検査部42又は52は、整合性検査において、当該SPSサーバ3(B)が保持するサービスリストを参照し、既に当該SPSサーバ3(B)の上位として他のSPSサーバ3が存在するか否かをチェックする。
SPSサーバ3(B)の整合性検査部42又は52は、図28(B)に示されるように、当該SPSサーバ3(B)が保持するサービスリストに既に当該SPSサーバ3(B)の上位としてSPSサーバ3(A)が存在していると判定すると、整合性が保たれないとして例えば接続を中断する。
以下、管理アプリ25の接続・切断管理部51が提供するサービス接続/切断画面の一例を、図29を用いて説明する。
図29は、サービス接続/切断画面の一例を説明するための図である。
SPSサーバ3の管理者は、管理アプリ25を起動し、図29に示すような画面を表示させ、例えば、サービス表示エリア80に表示されている印刷環境共用サービス13の内、接続要求先の印刷環境共用サービス13を選択し、上位又は同位又は下位のラジオボタンの1つを選択し、接続要求ボタン83をクリックすることによって、接続を要求する。
例えば、図18のステップS10や、図19のステップS60、図20のステップS110は、接続要求元のSPSサーバ3の管理者によって、上述したように、印刷環境共用サービス13が選択され、接続要求ボタン83がクリックされることによって、処理を開始する。
また、管理アプリ25の接続・切断管理部51は、図18のステップS11や、図19のステップS61、図20のステップS111において要求中リストに追加された情報を、要求中リスト表示エリア90に表示する。
また、印刷環境共用サービス13の接続・切断管理部41は、図18のステップS22や、図19のステップS71、図20のステップS122においてサービスリストに接続要求先の印刷環境共用サービス13のアクセス情報などのデータを追加すると、接続済みのサービスとして接続済みサービス表示エリア81に接続要求先の印刷環境共用サービス13を表示する。
また、印刷環境共用サービス13の接続・切断管理部41は、図18のステップS23や、図19のステップS72、図20のステップS123において更新された要求中リストを、要求中リスト表示エリア90に表示する。
一方、接続要求を受け取った印刷環境共用サービス13の接続・切断管理部41は、図18のステップS31や、図19のステップS81、図20のステップS131において要求受け付け中リストに追加された情報を、要求受け付け中リスト表示エリア85に表示する。
SPSサーバ3の印刷環境共用サービス13の接続・切断管理部41よりメールなどで接続の要求があった旨を通知された接続要求先のSPSサーバ3の管理者は、管理アプリ25を起動し、要求受け付け中リスト表示エリア85に表示されている要求項目を選択し、承認ボタン88や非承認ボタン89をクリックすることによって、承認したり、非承認したりすることができる。
また、接続要求先の印刷環境共用サービス13の接続・切断管理部41は、図18のステップS44や、図19のステップS96、図20のステップS136においてサービスリストに接続要求元の印刷環境共用サービス13のアクセス情報などのデータを追加すると、接続済みのサービスとして接続済みサービス表示エリア81に接続要求元の印刷環境共用サービス13を表示する。
また、接続要求先の印刷環境共用サービス13の接続・切断管理部41は、図18のステップS45や、図19のステップS97、図20のステップS137において情報が削除された要求受け付け中リストを、要求受け付け中リスト表示エリア85から削除する。
図29に示される画面を用いることによって、SPSサーバ3の管理者は、接続又は切断を要求したり、接続又は切断の要求に対して承認又は非承認したりすることができる。
以下、上述したサービスリストを用いて、印刷場所の印刷環境共用サービス13を選択する一例を、図30を用いて説明する。
図30は、印刷場所の選択の一例を説明するための図である。
例えば、図1に示すようなシステムの場合、Webサーバ1は、ユーザからの要求に基づき、SPSサーバ3(A−1)の印刷環境共用サービス13に対して、サービスリストの取得を要求し、SPSサーバ3(A−1)に格納されているサービスリストを取得する。
Webサーバ1は、取得したSPSサーバ3(A−1)のサービスリストに基づいて、図30(A)に示すような画面を作成し、ユーザに提供する。
図30(A)には、SPSサーバ3(A−1)の印刷環境共用サービス13が参照可能な印刷環境共用サービス13が表示されている。
例えば、ユーザがA−0を選択し、次へボタン91をクリックすると、Webサーバ1は、SPSサーバ3(A−1)の印刷環境共用サービス13に対して、SPSサーバ3(A−0)に格納されているサービスリストの取得を要求する。
前記要求を受け取ったSPSサーバ3(A−1)の印刷環境共用サービス13のサービスリスト取得部45は、SPSサーバ3(A−0)の印刷環境共用サービス13より、SPSサーバ3(A−0)に格納されているサービスリストを取得して、Webサーバ1に提供する。
Webサーバ1は、取得したSPSサーバ3(A−0)のサービスリストに基づいて、図30(B)に示すような画面を作成し、ユーザに提供する。
例えば、ユーザがB−0を選択し、次へボタン92をクリックすると、Webサーバ1は、SPSサーバ3(A−1)の印刷環境共用サービス13に対して、SPSサーバ3(B−0)に格納されているサービスリストの取得を要求する。
前記要求を受け取ったSPSサーバ3(A−1)の印刷環境共用サービス13のサービスリスト取得部45は、SPSサーバ3(A−0)の印刷環境共用サービス13に対して、SPSサーバ3(B−0)に格納されているサービスリストの取得を要求する。
前記要求を受け取ったSPSサーバ3(A−0)の印刷環境共用サービス13のサービスリスト取得部45は、SPSサーバ3(B−0)の印刷環境共用サービス13より、SPSサーバ3(B−0)に格納されているサービスリストを取得して、SPSサーバ3(A−1)の印刷環境共用サービス13のサービスリスト取得部45に提供する。
また、SPSサーバ3(B−0)に格納されているサービスリストを取得したSPSサーバ3(A−1)の印刷環境共用サービス13のサービスリスト取得部45は、該サービスリストをWebサーバ1に提供する。
Webサーバ1は、取得したSPSサーバ3(B−0)のサービスリストに基づいて、図30(C)に示すような画面を作成し、ユーザに提供する。
例えば、ユーザがB−2を選択し、選択ボタン93をクリックすると、印刷場所としてSPSサーバ3(B−2)の印刷環境共用サービス13が選択される。
図30を用いて説明したように、サービスリストを用いることによって、印刷場所のSPSサーバ3の印刷環境共用サービス13を選択することが出来る。なお、上述したように、ユーザは、印刷場所を選択する場合、SPSサーバ3又は印刷環境共用サービス13を直接選択するのではなく、SPSサーバ3又は印刷環境共用サービス13と対応付けられたユーザにとってわかりやすい例えば県名や、都市名、事業所名、部署名等を選択するようにしてもよい。
また、印刷場所のSPSサーバ3の印刷環境共用サービス13までの経路情報も取得することができる。
以下、印刷予約された文書の文書データや予約情報などを選択された印刷場所のSPSサーバ3まで転送する一例を、図31を用いて説明する。図31は、転送の一例を説明するための図である。
ステップS1においてWebサーバ1は、図1において説明したように、印刷場所(SPSサーバ3(B−2)の印刷環境共用サービス13)や印刷するプリンタや印刷条件及び印刷場所までの経路情報などの予約情報と共に、印刷の予約対象である文書が格納されているリポジトリサーバ2のアクセス情報や前記文書の文書ID及び前記文書の利用を許可する文書チケットなどを用いてSPSサーバ3(A−1)の印刷環境共用サービス13に対して、印刷の予約を行う。
ステップS1に続いてステップS2に進み、SPSサーバ3(A−1)の印刷環境共用サービス13の文書取得部43は、前記文書チケットを用いて、前記指定されたリポジトリサーバ2に対して前記文書の取得を要求する。
ステップS2に続いてステップS3に進み、リポジトリサーバ2は、前記要求に基づき前記文書チケットの有効性などを判定し、前記文書をSPSサーバ3(A−1)の印刷環境共用サービス13に提供する。
ステップS3に続いてステップS4に進み、SPSサーバ3(A−1)の印刷環境共用サービス13の転送部44は、前記予約情報と前記取得した文書の文書データを前記予約情報に含まれる経路情報を基に、SPSサーバ3(A−0)の印刷環境共用サービス13に転送する。
ステップS4に続いてステップS5に進み、SPSサーバ3(A−0)の印刷環境共用サービス13の転送部44は、取得した前記予約情報と前記文書データを前記予約情報に含まれる経路情報を基に、SPSサーバ3(B−0)の印刷環境共用サービス13に転送する。
ステップS5に続いてステップS6に進み、SPSサーバ3(B−0)の印刷環境共用サービス13の転送部44は、取得した前記予約情報と前記文書データを前記予約情報に含まれる経路情報を基に、SPSサーバ3(B−2)の印刷環境共用サービス13に転送する。
図31に示すように、経路情報を用いて、印刷環境共用サービス13は印刷の予約情報及び/又はリポジトリサーバ2などより取得した文書の文書データを印刷場所の印刷環境共用サービス13まで転送することができる。
なお、第一実施例においては、SPSサーバ3(A−1)にリポジトリサーバ2が接続されているシステム構成を用いて説明を行ったが、必ずしもリポジトリサーバ2がSPSサーバ3(A−1)に接続されていなくてもよい。
以下、図31に示した予約情報の転送に係るメソッドのI/Fの一例を、図32に示す。図32は、予約情報転送メソッドのI/Fを示す図である。
印刷環境共用サービス13は、例えば、図32に示されるような引数を与えて他の印刷環境共用サービス13の予約情報転送メソッドを呼び出して、予約情報及び文書を印刷場所の印刷環境共用サービス13まで転送する。