(57)【特許請求の範囲】
【請求項１】
アップロードされた印刷対象のデータを保存するストレージサーバーと通信可能な、前記ストレージサーバーに保存されたデータを取得し印刷データへ変換するデータ変換サーバーであって、
ユーザーからの印刷指示に伴い前記データの変換リクエストを送信するクライアントから前記変換リクエストを受信したことに応じて、前記データのアップロード先を示すアドレスを前記クライアントへ送信する送信手段と、
複数の前記ストレージサーバーの内何れか１つのストレージサーバーに対し前記変換リクエストが関連付くよう、前記変換リクエストを識別する識別子とストレージサーバーに関する情報とを関連付けて記憶させる記憶手段と、
前記アドレスに基づきストレージサーバーへ前記データのアップロードが完了し、再び前記データ変換サーバーへアクセスしてきた前記クライアントから前記識別子を受信した際、受信した前記識別子に関連付くストレージサーバーに関する情報を前記記憶手段から取得し、取得した情報を基にストレージサーバーから前記データを取得し印刷データへ変換する変換手段と、を有するデータ変換サーバー。
【請求項２】
請求項１に記載の前記データ変換サーバーと前記ストレージサーバーとを含む印刷システムであって、印刷システム内には請求項１に記載のデータ変換サーバーが複数存在しており、前記変換リクエストを受信し、前記変換リクエストを識別する識別子とストレージサーバーに関する情報とを関連付けて記憶させたデータ変換サーバーと、再びアクセスしてきた前記クライアントから前記識別子を受信したデータ変換サーバーとは異なるデータ変換サーバーであることを特徴とする印刷システム。
【請求項３】
前記データ変換サーバーとセキュリティドメインが異なる前記ストレージサーバーに保存される前記データのアップロード先を示すアドレスおよび前記印刷データの保存先を示すアドレスを、前記データ変換サーバーからのリクエストに基づき生成する生成手段を有するトークン交換サーバーを含む請求項２に記載の印刷システム。
【請求項４】
前記生成手段は、前記データ変換サーバーが認可サーバーの認可を受けていることを確認したことに応じて前記アドレスを生成することを特徴とする請求項３に記載の印刷システム。
【請求項５】
前記印刷システムに含まれるＤＮＳサーバーは、前記データ変換サーバーのドメイン名と複数のデータ変換サーバーの内何れか１つのデータ変換サーバーとを関連付け、前記データ変換サーバーの名前解決を行い、前記データ変換サーバーの切り替え時には、前記ドメイン名と関連付くデータ変換サーバーを変更することにより切り替えが行われることを特徴とする請求項２乃至４の何れか１項に記載の印刷システム。
【請求項６】
アップロードされた印刷対象のデータを保存するストレージサーバーと、前記ストレージサーバーに保存されたデータを取得し印刷データへ変換するデータ変換サーバーとを含む印刷システムにて実行される制御方法であって
送信手段は、ユーザーからの印刷指示に伴い前記データの変換リクエストを送信するクライアントから前記変換リクエストを受信したことに応じて、前記データのアップロード先を示すアドレスを前記クライアントへ送信し、
記憶手段は、複数の前記ストレージサーバーの内何れか１つのストレージサーバーに対し前記変換リクエストが関連付くよう、前記変換リクエストを識別する識別子とストレージサーバーに関する情報とを関連付けて記憶させ、
変換手段は、前記アドレスに基づきストレージサーバーへ前記データのアップロードが完了し、再び前記データ変換サーバーへアクセスしてきた前記クライアントから前記識別子を受信した際、受信した前記識別子に関連付くストレージサーバーに関する情報を前記記憶手段から取得し、取得した情報を基にストレージサーバーから前記データを取得し印刷データへ変換することを特徴とする。
【請求項７】
前記印刷システム内には請求項６に記載のデータ変換サーバーが複数存在しており、前記送信手段および前記記憶手段による処理を実行するデータ変換サーバーと、前記変換手段による処理を実行するデータ変換サーバーとは異なるデータ変換サーバーであることを特徴とする請求項６に記載の制御方法。
【請求項８】
生成手段は、前記データ変換サーバーとセキュリティドメインが異なる前記ストレージサーバーに保存される前記データのアップロード先を示すアドレスおよび前記印刷データの保存先を示すアドレスを、前記データ変換サーバーからのリクエストに基づき生成することを特徴とする請求項６または７に記載の制御方法。
【請求項９】
前記生成手段は、前記データ変換サーバーが認可サーバーの認可を受けていることを確認したことに応じて前記アドレスを生成することを特徴とする請求項８に記載の制御方法。
【請求項１０】
前記印刷システムに含まれるＤＮＳサーバーは、前記データ変換サーバーのドメイン名と複数のデータ変換サーバーの内何れか１つのデータ変換サーバーとを関連付け、前記データ変換サーバーの名前解決を行い、前記データ変換サーバーの切り替え時には、前記ドメイン名と関連付くデータ変換サーバーを変更することにより切り替えが行われることを特徴とする請求項６乃至９の何れか１項に記載の制御方法。
【請求項１１】
アップロードされた印刷対象のデータを保存するストレージサーバーと通信可能な、前記ストレージサーバーに保存されたデータを取得し印刷データへ変換するデータ変換サーバーにて実行されるプログラムであって、
ユーザーからの印刷指示に伴い前記データの変換リクエストを送信するクライアントから前記変換リクエストを受信したことに応じて、前記データのアップロード先を示すアドレスを前記クライアントへ送信する送信ステップと、
複数の前記ストレージサーバーの内何れか１つのストレージサーバーに対し前記変換リクエストが関連付くよう、前記変換リクエストを識別する識別子とストレージサーバーに関する情報とを関連付けて記憶させる記憶ステップと、
前記アドレスに基づきストレージサーバーへ前記データのアップロードが完了し、再び前記データ変換サーバーへアクセスしてきた前記クライアントから前記識別子を受信した際、受信した前記識別子に関連付くストレージサーバーに関する情報を取得し、取得した情報を基にストレージサーバーから前記データを取得し印刷データへ変換する変換ステップと、を含むプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
印刷サービスを備えたデータ変換サーバー、制御方法、およびプログラム。
【背景技術】
【０００２】
近年、サーバーがクライアントにサービスを提供するクラウドコンピューティングの形態が注目を集めている。クラウドコンピューティングは、多くのコンピューティング・リソースを用いてデータ変換やデータ処理を分散実行し、多くのクライアントからの要求を分散並列処理により並行して処理することが主な特徴である。現在、このクラウドコンピューティングを実現するクラウドコンピューティング環境上にＷｅｂサービスを実装し、多種多様なサービスを提供するベンダーが乱立しつつある。クラウドサービスの開発において、すでにＷｅｂ上に多く提供されているサービスを有効活用し新しい機能を提供することで、開発スピードや開発コストの面で優位になる。
【０００３】
クラウドサービスを構築し運用していく上で、ソフトウェアのアップデートや提供サービスの機能追加などサーバーをメンテナンスする必要がある。しかしインターネット上に公開されたクラウドサービスを停止してメンテナンスを実施することはサービス利用ユーザーにとって大きなデメリットとなる。そのためサービス無停止でサービス利用ユーザーに影響を与えることなくサーバーメンテナンスを行うことが強く望まれる。
【０００４】
特許文献１にはＮ−Ａｃｔｉｖｅのサーバープール内のサーバーの負荷状況をテーブルに管理し、負荷が大きい場合には新サーバーを追加して上で旧サーバーを停止することでユーザーに影響をあたえることなくサーバーのソフトウェアアップデートを実現している。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１２−２３０６３８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
従来技術に記載のソフトウェアアップデート時にサーバー入れ替えを行う技術を適用した場合、多数のサーバーを管理するサーバー管理システムで各サーバーの負荷状況を管理することになる。この形態によるサーバーの管理を行った場合、負荷状況を見ながら少しずつサーバー入れ替えを行うため、サーバー入れ替え手順が複雑になり、サーバー台数が多い場合には時間もかかるという課題がある。
【０００７】
そこで、サーバーを無停止で入れ替える手法としてＢｌｕｅ−ＧｒｅｅｎＤｅｐｌｏｙｍｅｎｔと呼ばれる手法がある。Ｂｌｕｅ−ＧｒｅｅｎＤｅｐｌｏｙｍｅｎｔはサーバーのドメイン名を変えることなく、ＤＮＳレコードを旧サーバーから新サーバーに変更する手法で、ドメイン名が変わらないためクライアントに影響なくサーバーの入れ替えを簡単に短時間で行うことができる。
【０００８】
ところが、印刷サービスとストレージサービスと言った異なる２つのサービスを連携させ１つのリクエストを処理するシステムにおいてサーバーの入れ替えを行う場合、サーバー入れ替え後も旧サーバーにあるファイルに継続してアクセスする可能性がある。そのため、ＤＮＳレコードを旧サーバーから新サーバーに変更してしまうと、連携元のサーバーが旧サーバーにあるファイルにアクセスすることができなくなってしまうという課題が発生する。
【０００９】
本願発明は、上述した課題を解決するサーバーを提供することを目的とする。
【課題を解決するための手段】
【００１０】
本発明を解決するための一実施形態におけるサーバーは、アップロードされた印刷対象のデータを保存するストレージサーバーと通信可能な、前記ストレージサーバーに保存されたデータを取得し印刷データへ変換するデータ変換サーバーであって、ユーザーからの印刷指示に伴い前記データの変換リクエストを送信するクライアントから前記変換リクエストを受信したことに応じて、前記データのアップロード先を示すアドレスを前記クライアントへ送信する送信手段と、複数の前記ストレージサーバーの内何れか１つのストレージサーバーに対し前記変換リクエストが関連付くよう、前記変換リクエストを識別する識別子とストレージサーバーに関する情報とを関連付けて記憶させる記憶手段と、前記アドレスに基づきストレージサーバーへ前記データのアップロードが完了し、再び前記データ変換サーバーへアクセスしてきた前記クライアントから前記識別子を受信した際、受信した前記識別子に関連付くストレージサーバーに関する情報を前記記憶手段から取得し、取得した情報を基にストレージサーバーから前記データを取得し印刷データへ変換することを特徴とする。
【発明の効果】
【００１１】
アップロードされた印刷対象のデータを保存するストレージサーバーと通信可能な、前記ストレージサーバーに保存されたデータを取得し印刷データへ変換するデータ変換サーバーであって、ユーザーからの印刷指示に伴い前記データの変換リクエストを送信するクライアントから前記変換リクエストを受信したことに応じて、前記データのアップロード先を示すアドレスを前記クライアントへ送信する送信手段と、複数の前記ストレージサーバーの内何れか１つのストレージサーバーに対し前記変換リクエストが関連付くよう、前記変換リクエストを識別する識別子とストレージサーバーに関する情報とを関連付けて記憶させる記憶手段と、前記アドレスに基づきストレージサーバーへ前記データのアップロードが完了し、再び前記データ変換サーバーへアクセスしてきた前記クライアントから前記識別子を受信した際、受信した前記識別子に関連付くストレージサーバーに関する情報を前記記憶手段から取得し、取得した情報を基にストレージサーバーから前記データを取得し印刷データへ変換する。
【図面の簡単な説明】
【００１２】
【図１】システム構成図
【図２】各装置のハードウェア構成図
【図３】各装置のソフトウェアコンポーネント構成図
【図４】ＤＮＳサーバーで管理するテーブル構造
【図５】データ変換サーバーが管理しＤＢサーバーで保持するテーブル構造とインデックスファイル例
【図６】認可サーバーで管理するテーブル構造
【図７】トークン交換サーバーで管理するテーブル構造と一時ＵＲＬ例
【図８】ストレージサーバーで管理するテーブル構造
【図９】印刷アプリケーション画面
【図１０】名前解決フロー
【図１１】印刷アプリケーションからの印刷フロー
【発明を実施するための形態】
【００１３】
以下、本発明を実施するための最良の形態について図面を用いて説明する。
【００１４】
＜実施例１＞
＜システム構成＞
図１は、本発明の実施形態に係るモバイル印刷システムの全体構成を示す図である。
【００１５】
図１において、プリンタ１０２、モバイル端末１０３はローカルネットワーク１０１を介して複数台接続されていることを想定している。プリンタ１０２、モバイル端末１０３は、ローカルネットワーク１０１を介してインターネットワーク１００にアクセスし、１０５〜１１０のサーバーにアクセスすることができる。モバイル端末１０３、プリンタ１０２は有線または無線ＬＡＮを介してネットワークに接続する。
【００１６】
本実施例では、モバイル端末１０３は、無線ＬＡＮターミナル１０４を介してネットワークに接続することを想定しているが、携帯データ通信キャリアが提供する無線ネットワークを介して接続する場合も当然想定される。無線ＬＡＮターミナル１０４は、一般的なネットワーク・ルーター機能を有した無線ＬＡＮの親機であり、家庭内や事務所などの中で無線ＬＡＮを提供している。
【００１７】
ＤＮＳサーバー１０５はドメイン名とＩＰアドレスの対応付けを管理し、名前解決リクエストでドメイン名を受け付け、対応するＩＰアドレスを応答する。データ変換サーバー１０６は、モバイル端末１０３から送信されるコンテンツデータをプリンタ１０２が読み取り可能なデータ形式に変換する。
【００１８】
本実施例では旧データ変換サーバー１０６ａから新データ変換サーバー１０６ｂにデータ変換サーバーのソフトウェアコンポーネントを入れ替える。なお、新旧を区別する必要がない場合はデータ変換サーバー１０６として記載する。ＤＢサーバー１０７はデータ変換サーバー１０６がデータ変換処理に必要な情報を格納するデータベースサーバーである。認可サーバー１０８はＯＡｕｔｈを実現するためのサーバーでありクライアント情報の管理や認可トークンの発行・管理を行う。トークン交換サーバー１０９は認可サーバー１０８で発行した認可トークンをストレージサーバー１１０にアクセス可能なＵＲＬに交換する。
【００１９】
ストレージサーバー１１０はファイル管理を行うサーバーであり、モバイル端末１０３、プリンタ１０２、データ変換サーバー１０６からのファイルアップロード／ダウンロードを受け付ける。本実施例では旧ストレージサーバー１１０ａから新ストレージサーバー１１０ｂにデータ変換サーバーのソフトウェアコンポーネントを入れ替える。なお、新旧を区別する必要がない場合はストレージサーバー１１０として記載する。
【００２０】
ここで、印刷システム内に存在する１０５〜１１０までの各サーバーは、それぞれ複数台のサーバーで冗長化されたクラウドサービスとしてインターネット上に公開されるが、本実施例では説明を簡略化するため、それぞれ１台構成としている。即ち、各サーバーは複数存在することになるが、図１に示す通り１台のサーバーであっても良い。
【００２１】
＜モバイル端末１０３のハードウェア構成＞
図２ａはモバイル端末１０３のハードウェア構成図である。ハードウェアの各構成要素は、システムバス２０２に接続されている。ＲＯＭ２０４にはオペレーティングシステム及び、通話、データ通信を制御するアプリケーションが格納されており、ＣＰＵ２０３で実行される。データ通信を制御するアプリケーションとしては、ＭａｉｌソフトやＷｅｂブラウザなどがある。
【００２２】
ＲＡＭ２０５は、プログラムを実行するためのワークメモリエリアである。また、ＷｅｂブラウザがＷｅｂサーバーから取得してきたＷｅｂページデータやＷｅｂサービスにアクセスするための認証情報などを一時記憶するためのメモリでもある。記憶装置２１０は不揮発性の記憶装置であり、モバイル端末の再起動後も保持しておく必要のある各種動作モード設定や、稼働ログなどが記憶される。
【００２３】
ＮｅｔｗｏｒｋＣｏｎｔｒｏｌｌｅｒ２０６は、無線ＬＡＮ通信部２１２、携帯キャリアの提供するネットワークに参加するための携帯電話データ通信部２１３の通信制御を行う。一般的に無線ＬＡＮのネットワークに参加できるとき、ＮｅｔｗｏｒｋＣｏｎｔｒｏｌｌｅｒ２０６は、無線ＬＡＮの接続を優先する。モバイル端末が無線ＬＡＮのネットワークエリアから外れた場合には、携帯キャリアが提供する無線通信ネットワークへ参加する。音声制御部２０７は、主に通話アプリケーションが起動しユーザーが電話をしているときに利用する。マイク・スピーカ２１４にて音声データの入出力を行い、音声制御部２０７は、その制御プログラムとの仲介を行っている。
【００２４】
表示制御部２０８は、モバイル端末のディスプレイ２１５にて出力する情報の制御を行っている。入力制御部２０９は、モバイル端末のボタンやタッチパネル２１６にてユーザーが指示した情報の制御を行っている。これらの音声制御部２０７、表示制御部２０８、入力制御部２０９を利用して、モバイル端末上でのアプリケーションは、ネットワーク通信情報やモバイル端末のさまざまな情報をユーザーに提供する。位置検出制御部２１１は、ＧＰＳセンサー２１７からモバイル端末の位置情報を取得しＯＳに提供する。これらの制御は、ＣＰＵ２０３で動くＯＳにて制御される。
【００２５】
＜サーバーのハードウェア構成＞
図２ｂは、１０５〜１１０の各サーバーのハードウェア構成の一例を示す図である。特に断らない限り、本発明の機能が実行可能であるならば、単体の機器であっても、複数の機器からなるシステムであっても、本発明が適用できることは言うまでもない。また、特に断らない限り、本発明の機能が実行可能であるならば、ＬＡＮ、ＷＡＮ等のネットワークを介して接続が為され、処理が行われるシステムであっても本発明を適用できることは言うまでもない。本実施例ではシステムバス２１９により各構成要素が接続されているものとして説明する。
【００２６】
２２０は情報処理装置の制御装置であるＣＰＵであり、記憶装置２２６に格納されているアプリケーションプログラム、プリントドライバプログラム、オペレーティングシステムや本発明のモバイル印刷システムプログラムを実行する。また、ＣＰＵ２２０はＲＡＭ２２２にプログラム実行に必要な情報、ファイル等を一時的に格納する制御を行う。また、ＣＰＵ２２０はディスプレイ２２７上の不図示マウスカーソル等で指示されたコマンドに基づいて登録された種々のウインドウを開き、種々のデータ処理を実行する。２２１は記憶手段であるＲＯＭであり、内部には基本Ｉ／Ｏプログラム等のプログラム、文書処理の際に使用するフォントデータ、テンプレート用データ等の各種データを記憶する。２２２は一時記憶手段であるＲＡＭであり、ＣＰＵ２２０の主メモリやワークエリア等として機能する。２２４は表示制御部であり、ディスプレイ２２７にて出力する情報の制御を行っている。２２５は入力制御部であり、キーボード２２８より入力される情報を制御し、情報処理装置は入力制御部２２５を介して外部装置とのデータのやり取りを行う。２２６は外部記憶手段の一つで、大容量メモリとして機能する記憶装置であり、アプリケーションプログラム、プリントドライバプログラム、ＯＳ等を格納している。２２８は指示入力手段であるキーボードであり、ユーザーが印刷サーバー等に命令等を入力指示するためのものである。２２７は表示手段であるディスプレイであり、キーボード２２８から入力したコマンド等を表示するものである。
【００２７】
＜プリンタ１０２のハードウェア構成＞
図２ｃは、プリンタ１０２のハードウェア構成図である。ハードウェアの各構成要素は、システムバス２３０に接続されている。２０９はプリンタ１０２のコントローラであり、プリンタの制御系を司る機器である。２３１は装置全体の制御を行うＣＰＵであり、システムバス２３０に接続される各種デバイスとのアクセスを統括的に制御する。この制御は、ＲＯＭ２３２に記憶された制御プログラム等あるいはディスクコントローラ（ＤＫＣ２３５）を介して接続された外部メモリ２３６に記憶された制御プログラムやリソースデータ（資源情報）等に基づく。
【００２８】
２３３はＣＰＵ２３１の主メモリ、ワークエリア等として機能するＲＡＭで、図示しない増設ポートに接続されるオプションＲＡＭによりメモリ容量を拡張することができるように構成されている。２４０は大容量メモリとして機能する外部記憶手段であり、本発明に係る印刷アプリケーション３０６のプログラムを格納している。２３９は操作パネル（操作部）であり、画面の表示や、画面を介したユーザーの操作指示を受け付ける。また、プリンタ１０２の動作モード等の設定やプリンタ１０２の動作状況の表示、複写指定等の操作を行うためのボタンおよび液晶パネル等の表示部も配置される。２３４は、ネットワークインターフェースカード（ＮＩＣ）であり、該インターフェース２３４を介して外部装置とのデータのやり取りを行う。なお、本図で示したプリントエンジン２３８は既知の印刷技術を利用するものであり、好適な実施系として例えば電子写真方式（レーザービーム方式）やインクジェット方式、昇華方（熱転写）方式等が挙げられる。２３７のラスタコントローラは、ＰＤＬ言語・ＰＤＦ言語である印刷データを画像データに変換するコントローラである。２４１の機器Ｉ／Ｆは、ＵＳＢ等で接続可能な外部機器との接続Ｉ／Ｆである。
【００２９】
＜モバイル端末１０３のソフトウェア構成＞
図３ａは、モバイル端末１０３のソフトウェア構成図である。モバイル端末１０３にインストールされた印刷アプリケーション３００は図２で示した記憶装置２１０に記憶されており、前述したようにＣＰＵ２０３によってＲＡＭ２０５にロードされ実行される。印刷アプリケーション３００はモバイル端末１０３内に保存されている文書を、データ変換サーバー１０６で印刷データに変換しプリンタ１０２に送信することで印刷を行う。
【００３０】
＜ＤＮＳサーバー１０５のソフトウェア構成＞
図３ｂは、ＤＮＳサーバー１０５のソフトウェア構成図である。なお各ソフトウェアモジュールは図２で示した記憶装置２２６に記憶されており、前述したようにＣＰＵ２２０によってＲＡＭ２２２にロードされ実行される。３１０はＤＮＳ  Ｉ／ＦでありＤＮＳサーバー１０５の各種インターフェースを地教師、受け付けた情報の妥当性の検証を行う。３１１はＤＮＳレコード管理部であり、ＤＮＳレコード４００を管理する。ＤＮＳレコード管理部３１１はＤＮＳ  Ｉ／Ｆ３１０で受け付けた名前解決リクエストで渡されるドメイン名に対応するＩＰアドレスをＤＮＳレコード４００から探し応答する。３１２はストレージであり、図４で説明するＤＮＳサーバー１０５が保持している情報が格納されている。
【００３１】
＜データ変換サーバー１０６のソフトウェア構成＞
図３ｃは、データ変換サーバー１０６のソフトウェア構成図である。なお各ソフトウェアモジュールは図２で示した記憶装置２２６に記憶されており、前述したようにＣＰＵ２２０によってＲＡＭ２２２にロードされ実行される。３２０はＷｅｂサーバーであり、データ変換サーバー１０６の各種インターフェースを提供し、受け付けた情報の妥当性の検証を行う。３２１は、データ変換部であり、モバイル端末１０３がストレージサーバー１１０にアップロードした文書ファイルと印刷チケットを受信し、文書ファイルを印刷チケットに従ってプリンタ１０２が印刷可能な印刷データファイルに変換を行う。データ変換部は生成した印刷データファイルと印刷データのリストであるインデックスファイルをストレージサーバー１１０にアップロードする。データ変換サーバー１０６が管理する後述の文書情報５００とデータ変換情報５１０はＤＢサーバー１０７に格納する。旧データ変換サーバー１０６ａと新データ変換サーバー１０６ｂはＤＢサーバー１０７に格納された文書情報５００とデータ変換情報５１０を共有する。
【００３２】
＜ＤＢサーバー１０７のソフトウェア構成＞
図３ｄは、ＤＢサーバー１０７のソフトウェア構成図である。なお各ソフトウェアモジュールは図２で示した記憶装置２２６に記憶されており、前述したようにＣＰＵ２２０によってＲＡＭ２２２にロードされ実行される。３３０はＷｅｂサーバーであり、ＤＢサーバー１０７の各種インターフェースを提供し、受け付けた情報の妥当性の検証を行う。３３１はＤＢ管理部であり、Ｗｅｂサーバー３３０で受け付けたリクエストに応じてＤＢサーバー１０７がストレージ３３２に保持する情報の操作を行う。３３２はストレージであり、図５で説明するＤＢサーバー１０７が保持している情報が格納されている。
【００３３】
＜認可サーバー１０８のソフトウェア構成＞
図３ｅは、認可サーバー１０８のソフトウェア構成図である。なお各ソフトウェアモジュールは図２で示した記憶装置２２６に記憶されており、前述したようにＣＰＵ２２０によってＲＡＭ２２２にロードされ実行される。３４０はＷｅｂサーバーであり、認可サーバー１０８の各種インターフェースを提供し、受け付けた情報の妥当性の検証を行う。３４１は、認可情報管理部であり、図６ａと図６ｂで説明するクライアント情報６００と認可トークン情報６１０を管理し、Ｗｅｂサーバー３４０が受け付けたリクエストに応じて、認可トークンの発行・スコープ確認・有効期限確認などを行う。３４２はストレージであり、図６ａと図６ｂで説明する認可サーバー１０８が保持している情報が格納されている。
【００３４】
＜トークン交換サーバー１０９のソフトウェア構成＞
図３ｆは、トークン交換サーバー１０９のソフトウェア構成図である。なお各ソフトウェアモジュールは図２で示した記憶装置２２６に記憶されており、前述したようにＣＰＵ２２０によってＲＡＭ２２２にロードされ実行される。３５０はＷｅｂサーバーであり、トークン交換サーバー１０９の各種インターフェースを提供し、受け付けた情報の妥当性の検証を行う。３５１は、一時ＵＲＬ発行部であり、図７ａで説明するスコープ情報７００を管理し、Ｗｅｂサーバー３５０が受け付けたリクエストに応じて、ストレージサーバー１１０にアクセス可能な一時ＵＲＬの発行を行う。３５２はストレージであり、図７ａで説明するトークン交換サーバー１０９が保持している情報が格納されている。
【００３５】
＜ストレージサーバー１１０のソフトウェア構成＞
図３ｇは、ストレージサーバー１１０のソフトウェア構成図である。なお各ソフトウェアモジュールは図２で示した記憶装置２２６に記憶されており、前述したようにＣＰＵ２２０によってＲＡＭ２２２にロードされ実行される。３６０はＷｅｂサーバーであり、ストレージサーバー１１０の各種インターフェースを提供し、受け付けた情報の妥当性の検証を行う。３６１は、アクセス制御部でありＷｅｂサーバー３６０が受け付けたリクエストを実行許可するか否かを判断する。アクセス制御部３６１が実行許可したリクエストはストレージ管理部３６２へ渡され、実行拒否と判断したリクエストはエラーにする。ストレージ管理部３６２は図８で説明するファイル情報８１０を管理し、アップロードリクエストされたファイルの入出力を行う。３６３はストレージであり、図８で説明するストレージサーバー１１０が保持している情報やストレージサーバー１１０受信したファイルが格納されている。
【００３６】
＜ＤＮＳサーバー１０５のデータ＞
図４はＤＮＳサーバー１０５が外部メモリに記憶するデータテーブルである。これらのデータテーブルは、ＤＮＳサーバー１０５の外部メモリではなく、インターネット１００やローカルネットワーク１０１を介して通信可能に構成された別のサーバーに記憶するように構成することもできる。ＤＮＳサーバー１０５が保持するデータテーブルは、ＤＮＳレコード４００より成る。
【００３７】
ＤＮＳレコード４００にはＤＮＳサーバー１０５の名前解決に必要なレコードが保存される。ＤＮＳレコード４００ではドメイン名４０１とＶａｌｕｅ４０３に格納されるＩＰアドレスが紐付けて保存され、ＤＮＳサーバー１０５は名前解決リクエストで受け付けたドメイン名４０１と一致するＶａｌｕｅ４０３を応答する。４０２はＤＮＳレコードのＶａｌｕｅ４０３の種別を表し、ＩＰアドレスであることを示すＡや、ドメイン名の別名を示すＣＮＡＭＥなどがある。ＴＴＬ４０４は名前解決結果の有効期限である。ＤＮＳサーバー１０５に対して名前解決リクエストを行った任意のクライアントは、名前解決リクエストの結果が得られたＩＰアドレスをＴＴＬ４０４の間利用することができる。
【００３８】
＜データ変換サーバー１０６が管理するデータ＞
図５ａ、図５ｂはＤＢサーバー１０７が外部メモリに記憶するデータテーブルである。ＤＢサーバー１０７が保持するデータテーブルは、文書情報５００、データ変換情報５１０から成り、データ変換サーバー１０６が利用する。文書情報５００はデータ変換サーバー１０６がデータ変換リクエスト受信時にデータ変換部３３１がレコード生成し、ＤＢサーバー１０７上のストレージ３６３に保持する。５０１は文書ＩＤであり、データ変換サーバー１０６がデータ変換リクエストを受信した際に発行する文書を一意に識別する識別子である。５０２はクライアントＩＤであり、データ変換リクエストを行ったクライアントを一意に識別する識別子である。データ変換サーバー１０６はデータ変換リクエストのパラメータとして受信した認可トークンに紐づくクライアントＩＤを認可サーバー１０８から取得しクライアントＩＤ５０２として保持する。文書ＵＲＬ５０３はデータ変換リクエストされた文書ファイルが保存された場所を示すＵＲＬパスである。文書ＵＲＬ５０３はデータ変換サーバー１０６がデータ変換リクエスト受信時に、一意になるようＵＲＬパスに文書ＩＤ５０１やクライアントＩＤ５０２を含めて生成し保存する。ストレージサーバードメイン名５０４は文書ファイルが保存されているストレージサーバー１１０のドメイン名を格納する。
【００３９】
データ変換情報５１０はデータ変換サーバー１０６がデータ変換リクエスト受信時にデータ変換部３３１がレコード生成し、ＤＢサーバー１０７上のストレージ３６３に保持する。５１１はデータ変換ＩＤであり、データ変換サーバー１０６がデータ変換リクエストを受信した際に発行するデータ変換処理を一意に識別する識別子である。クライアントＩＤ５１２、文書ＩＤ５１３はデータ変換サーバー１０６がデータ変換リクエスト受信時に生成する文書情報５００のクライアントＩＤ５０２と文書ＩＤ５０１と同じ値である。印刷チケットＵＲＬ５１４はデータ変換リクエストされた印刷チケットファイルを保存するＵＲＬパスである。印刷チケットＵＲＬ５１４は、データ変換サーバー１０６がデータ変換リクエスト受信時に、一意になるようＵＲＬパスにデータ変換ＩＤ５１１やクライアントＩＤ５１２を含めて生成され保存される。
【００４０】
インデックスＵＲＬ５１５は、データ変換サーバー１０６が印刷データ変換時に生成するインデックスファイルが保存された場所を示すアドレスであり、ストレージサーバー１１０のＵＲＬから成る。インデックスＵＲＬ５１５はデータ変換サーバー１０６が印刷データ変換完了時にストレージサーバー１１０で一意になるようＵＲＬパスにデータ変換ＩＤ５１１やクライアントＩＤ５１２を含めて生成し保存する。ステータス５１６はデータ変換サーバー１０６の印刷データ変換状況を示しており、データ変換サーバー１０６が印刷データ変換状況に応じて更新する。ステータス５１６には“待機中”や“変換済み”がある。ストレージサーバードメイン名５１７は印刷チケットファイルが保存されているストレージサーバー１１０のドメイン名を格納する。データ変換情報５１０により、データ変換サーバーは、変換リクエストと、複数存在するデータ変換サーバーの内何れか１つ、即ち、現在稼働しているストレージサーバーとの関連付けを認識することが可能になる。
【００４１】
図５ｃはデータ変換サーバー１０６が印刷データ変換時に生成するインデックスファイルの例である。インデックスファイルはＪＳＯＮフォーマットで、印刷データの一時ＵＲＬのリストを記載する。図５ｃは４ページ分のＪｐｅｇ画像の一時ＵＲＬが記載されている例である。プリンタ１０２やモバイル端末１０３はインデックスファイルに記載されている一時ＵＲＬが指し示す印刷データを順番にダウンロードし印刷実行する。
【００４２】
＜認可サーバー１０８のデータ＞
図６ａ、図６ｂは認可サーバー１０８が外部メモリに記憶するデータテーブルである。これらのデータテーブルは、認可サーバー１０８の外部メモリではなく、インターネット１００やローカルネットワーク１０１を介して通信可能に構成された別のサーバーに記憶するように構成することもできる。認可サーバー１０８が保持するデータテーブルは、クライアント情報６００、認可トークン情報６１０より成る。
【００４３】
図６ａのクライアント情報６００は１０６〜１１０のサーバーにアクセス可能なクライアントの情報が登録されている。本実施例においてクライアント情報にはモバイル端末１０３とデータ変換サーバー１０６が登録されている。６０１はクライアントＩＤであり、クライアントを一意に識別する識別子である。本実施例では複数のモバイル端末１０３のクライアントＩＤをｍｏｂｉｌｅ０００１〜ｍｏｂｉｌｅ０００２、データ変換サーバー１０６のクライアントＩＤをｃｏｎｖｅｒｔ０００１として定義し登録している。６０２はクライアントの正当性を判断するためのパスワードであり、認可サーバー１０８はクライアントＩＤ６０１とパスワード６０２の一致によりクライアントを特定する。６０３はＯＡｕｔｈのスコープであり認可サーバー１０８が発行する認可トークンでアクセス可能な範囲を示す。
【００４４】
本実施例のスコープ６０３の種類は、ＭｏｂｉｌｅＰｒｉｎｔ、ＳｉｇｎｅｄＵｒｌＵｐｌｏａｄ、ＳｉｇｎｅｄＵｒｌＤｏｗｎｌｏａｄ、Ｎｅｗ−ＳｉｇｎｅｄＵｒｌＵｐｌｏａｄ、Ｎｅｗ−ＳｉｇｎｅｄＵｒｌＤｏｗｎｌｏａｄを定義する。ＭｏｂｉｌｅＰｒｉｎｔスコープはモバイル端末１０３がデータ変換サーバー１０６のインターフェースにアクセスする際に必要なスコープである。ＳｉｇｎｅｄＵｒｌＵｐｌｏａｄスコープはモバイル端末１０３がストレージサーバー１１０へファイルアップロードするための一時ＵＲＬを発行するために旧データ変換サーバー１０６ａが利用するスコープである。Ｎｅｗ−ＳｉｇｎｅｄＵｒｌＵｐｌｏａｄスコープはモバイル端末１０３がストレージサーバー１１０へファイルアップロードするための一時ＵＲＬを発行するために新データ変換サーバー１０６ｂが利用するスコープである。ＳｉｇｎｅｄＵｒｌＤｏｗｎｌｏａｄスコープはモバイル端末１０３がストレージサーバー１１０からファイルダウンロードするための一時ＵＲＬを発行するために旧データ変換サーバー１０６ａが利用するスコープである。Ｎｅｗ−ＳｉｇｎｅｄＵｒｌＤｏｗｎｌｏａｄスコープはモバイル端末１０３がストレージサーバー１１０からファイルダウンロードするための一時ＵＲＬを発行するために新データ変換サーバー１０６ｂが利用するスコープである。
【００４５】
図６ｂの認可トークン情報６１０はＷｅｂサーバー３４０がトークン取得リクエストを受け付けた際に、認可情報管理部３４１がレコードを登録する。６１１は認可トークンを一意に識別可能な識別子であり、認可情報管理部３１１が生成し登録する。６１２は認可トークンの有効期限であり、認可情報管理部３４１がトークン取得リクエスト受信時間から一定時間後の値が登録される。有効期限６１２を過ぎた認可トークン６１１は無効である。スコープ６１３は認可トークン６１１が利用可能なスコープであり、認可サーバー１０８へのトークン取得リクエストで渡されるスコープが登録。クライアントＩＤ６１４は認可サーバー１０８へのトークン取得リクエストで渡されるクライアントＩＤが登録される。
【００４６】
＜トークン交換サーバー１０９のデータ＞
図７ａはトークン交換サーバー１０９が外部メモリに記憶するデータテーブルである。これらのデータテーブルは、トークン交換サーバー１０９の外部メモリではなく、インターネット１００やローカルネットワーク１０１を介して通信可能に構成された別のサーバーに記憶するように構成することもできる。トークン交換サーバー１０９が保持するデータテーブルは、スコープ情報７００より成る。
【００４７】
図７ａのスコープ情報７００はスコープ７０１、一時ＵＲＬ有効期限７０２、ドメイン名７０２からなる。スコープ７０１は一時ＵＲＬを発行可能なスコープであり、本実施例ではＳｉｇｎｅｄＵｒｌＵｐｌｏａｄ、ＳｉｇｎｅｄＵｒｌＤｏｗｎｌｏａｄ、Ｎｅｗ−ＳｉｇｎｅｄＵｒｌＵｐｌｏａｄ、Ｎｅｗ−ＳｉｇｎｅｄＵｒｌＤｏｗｎｌｏａｄが登録されている。一時ＵＲＬ有効期限７０２は一時ＵＲＬを利用可能な有効期限が登録される。ドメイン名７０２はトークン交換サーバー１０９が発行する一時ＵＲＬのストレージサーバー１１０のドメイン名である。スコープ７０１がＳｉｇｎｅｄＵｒｌＵｐｌｏａｄ、ＳｉｇｎｅｄＵｒｌＤｏｗｎｌｏａｄのドメイン名７０２には旧ストレージサーバー１１０ａのドメイン名が登録される。スコープ７０１がＮｅｗ−ＳｉｇｎｅｄＵｒｌＵｐｌｏａｄ、Ｎｅｗ−ＳｉｇｎｅｄＵｒｌＤｏｗｎｌｏａｄのドメイン名７０２には新ストレージサーバー１１０ｂのドメイン名が登録される。
【００４８】
図７ｂはトークン交換サーバー１０９が発行するストレージサーバー１１０の一時ＵＲＬの例である。トークン交換サーバー１０９はデータ変換サーバー１０６からの一時ＵＲＬ発行リクエストで受け取ったＵＲＬパスにクエリーパラメータを付与して一時ＵＲＬを生成する。また一時ＵＲＬのドメイン名はデータ変換サーバー１０６からの一時ＵＲＬ発行リクエストで渡される認可トークンのスコープに紐づくドメイン名７０２を用いる。一時ＵＲＬのパラメータには有効期限を示すＥｘｐｉｒｅｓや一時ＵＲＬの有効性を確認するための署名であるＳｉｇｎａｔｕｒｅがトークン交換サーバー１０９により付与される。Ｓｉｇｎａｔｕｒｅはトークン交換サーバー１０９とストレージサーバー１１０で共通して保持する証明書を用いてＵＲＬを署名しており、トークン交換サーバー１０９で生成した一時ＵＲＬをストレージサーバー１１０で有効性検証することができる。一時ＵＲＬ発行手段として、トークン交換サーバー１０９がストレージサーバー１１０に一時ＵＲＬ発行依頼し、ストレージサーバー１１０が一時ＵＲＬを生成する方法もある。
【００４９】
＜ストレージサーバー１１０のデータ＞
図８はストレージサーバー１１０が外部メモリに記憶するデータテーブルである。これらのデータテーブルは、ストレージサーバー１１０の外部メモリではなく、インターネット１００やローカルネットワーク１０１を介して通信可能に構成された別のサーバーに記憶するように構成することもできる。ストレージサーバー１１０が保持するデータテーブルはファイル情報８００より成る。
【００５０】
図８のファイル情報８００はストレージサーバー１１０に保存するファイルの情報でありストレージ管理部３６２が管理する。データＵＲＬ８０１はストレージサーバー１１０に保存するファイルを一意に特定することができるＵＲＬである。ファイルパス８０２はストレージ３６３上のファイルパスであり、ストレージ管理部３６２が管理するファイルの格納場所を示す。ストレージ管理部３６２は／ｄａｔａディレクトリ内にデータＵＲＬ８０１のサブパスと同じ階層構造でディレクトリを作成しファイル格納する。データＵＲＬ８０１に対してリクエストすることによりストレージ３６３上のファイル操作を行うことができる。たとえば、データＵＲＬ８０１に対してＨＴＴＰ  ＧＥＴメソッドをリクエストすると対応するファイルがダウンロードできる。データＵＲＬ８０１に対してＨＴＴＰ  ＰＵＴメソッドにファイル添付してリクエストするとファイルをアップロードし保存できる。データＵＲＬ８０１に対してＨＴＴＰ  ＤＥＬＥＴＥメソッドをリクエストすると対応するファイルを削除できる。
【００５１】
＜印刷アプリケーション３００の画面＞
図９はモバイル端末１０３に表示する印刷アプリケーション３００の画面例であり図２ａにおいて表示制御部２０８を介してディスプレイ２１５に表示されるものである。ファイル選択画面９００ではモバイル端末１０３内のファイルがファイルリスト表示部９０１にリストとして表示される。データ変換中画面９１０はファイル選択画面９００で選択した印刷対象のファイルをデータ変換サーバー１０６で印刷データに変換中に表示される画面である。９１２はデータ変換結果を表示する領域であり、データ変換中を示すアイコン９１１が表示されている。９１３のプレビューボタンが押下されると印刷アプリケーション３００はデータ変換サーバー１０６でのデータ変換リクエストを開始する。
【００５２】
９１４の印刷設定ボタンが押下されると印刷設定画面９２０が表示され、印刷アプリケーション３００がデータ変換サーバー１０６へのデータ変換リクエストする際の印刷設定を変更することができる。９１５の印刷ボタンが押下され印刷指示が行われると印刷アプリケーション３００はデータ変換サーバー１０６でデータ変換した印刷データをプリンタ１０２に送信して印刷実行する。印刷設定画面９２０は用紙サイズや部数などの各種印刷属性９２１を設定する画面である。データ変換結果画面９３０には印刷アプリケーション３００がデータ変換サーバー１０６にデータ変換リクエストした結果得られた印刷データのプレビュー９３１が表示される。
【００５３】
＜名前解決フロー＞
図１０は印刷アプリケーション３００がＤＮＳサーバー１０５でドメイン名の名前解決を行い、旧データ変換サーバー１０６ａにリクエストを行うフローである。印刷アプリケーション３００は旧データ変換サーバー１０６ａに対して任意のリクエストを行う際、旧データ変換サーバー１０６ａのドメイン名であるｄａｔａ−ｃｏｎｖｅｒｔ．ｃｏｍの名前解決を行う。Ｓ１０．１において印刷アプリケーション３００は旧データ変換サーバー１０６ａのドメイン名であるｄａｔａ−ｃｏｎｖｅｒｔ．ｃｏｍをパラメータとしてＤＮＳサーバー１０５に名前解決リクエストを行う。Ｓ１０．２においてＤＮＳサーバー１０５は、ＤＮＳレコード４００から旧データ変換サーバー１０６ａのドメイン名（ｄａｔａ−ｃｏｎｖｅｒｔ．ｃｏｍ）と一致するドメイン名４０１に紐づくＶａｌｕｅ４０３（１９２．１６８．０．３）とＴＴＬ４０４（６０）を応答する。Ｓ１０．３において印刷アプリケーション３００は名前解決の結果得られたＩＰアドレス（１９２．１６８．０．３）に対して任意のリクエストを行う。また印刷アプリケーション３００は名前解決の結果をＴＴＬの期間キャッシュし、再度同一ドメイン名にアクセスする際には名前解決リクエストを行わずキャッシュ情報を利用する。
【００５４】
図１０で説明した名前解決しリクエストを行うフローは、印刷アプリケーション３００と１０６〜１１０の各サーバー間へのリクエストや、１０６〜１１０の各サーバー間のリクエストにおいても同様に名前解決を行う。
【００５５】
＜印刷アプリケーション３００からの印刷フロー＞
図１１は印刷アプリケーション３００が文書をデータ変換サーバー１０６で印刷データに変換し、プリンタ１０２に印刷実行するフローである。図１１の印刷フローにおいて旧データ変換サーバー１０６ａから新データ変換サーバー１０６ｂへのサーバー入れ替え、旧ストレージサーバー１１０ａから新ストレージサーバー１１０ｂへのサーバー入れ替えを印刷フローに影響を与えることなく無停止で行う様子を示す。
【００５６】
旧データ変換サーバー１０６ａから新データ変換サーバー１０６ｂへの切り替えはＤＮＳレコード４００においてデータ変換サーバー１０６のドメイン名４０１（ｄａｔａ−ｃｏｎｖｅｒｔ．ｃｏｍ）のＶａｌｕｅ４０３を旧データ変換サーバー１０６ａのＩＰアドレスから新データ変換サーバー１０６ｂのＩＰアドレスに変更することで実施する。ＤＮＳレコード４００の変更はサーバー管理者が手動で実施してもよいし、誤操作を防ぐため別途準備した非図示の運用管理サーバーから自動で変更するよう構成することもできるが手段は問わない。ＤＮＳレコード４００を変更することでＤＮＳサーバー１０５への名前解決の結果が切り替わるためサーバーが切り替わることになる。なおクライアントで名前解決が行われ新データ変換サーバー１０６ｂに切り替わるタイミングはクライアントで保持する名前解決結果のキャッシュのＴＴＬ４０４が経過した時であり、クライアント毎に任意のタイミングで行われる。図１１では印刷アプリケーション３００からの印刷フロー中のＳ１１．９のタイミングでＤＮＳレコード４００が旧データ変換サーバー１０６ａから新データ変換サーバー１０６ｂへ書き換わっている。
【００５７】
図１１の印刷フローは印刷アプリケーション３００のファイル選択画面９００においてファイルが選択され、データ変換中画面９１０におけるプレビューボタン９１３が押下されたことを印刷アプリケーション３００が検知してから始まる。
【００５８】
Ｓ１１．１において印刷アプリケーション３００は認可サーバー１０８にトークン取得リクエストし認可トークンを取得する。印刷アプリケーション３００はトークン取得リクエスト（Ｓ１１．１）において自身で保持するクライアントＩＤ（例えばｍｏｂｉｌｅ０００１）、パスワードとスコープにＭｏｂｉｌｅＰｒｉｎｔをパラメータとして指定する。トークン取得リクエスト（Ｓ１１．１）を受け付けた認可サーバー１０８はトークン取得リクエスト（Ｓ１１．１）のパラメータとクライアントＩＤ６０１、パスワード６０２とがそれぞれ一致し、スコープ６０３にＭｏｂｉｌｅＰｒｉｎｔが含まれていることを確認することでクライアントを特定する。そして認可サーバー１０８は認可トークン６１１を生成し、有効期限、トークン取得リクエスト（Ｓ１１．１）のパラメータとして受け付けたクライアントＩＤ、スコープを認可トークン情報６１０にレコード登録し、生成した認可トークン６１１を印刷アプリケーション３００に返却する。
【００５９】
Ｓ１１．２において印刷アプリケーション３００はサーバー入れ替え前の旧データ変換サーバー１０６ａにＳ１１．１で取得した認可トークンをパラメータとしてデータ変換リクエストを行う。Ｓ１１．３において旧データ変換サーバー１０６ａはＳ１１．２のデータ変換リクエストのパラメータである認可トークンと、ＭｏｂｉｌｅＰｒｉｎｔスコープを指定して認可サーバー１０８にトークンチェックリクエストを行う。トークンチェックリクエスト（Ｓ１１．３）を受け付けた認可サーバー１０８はパラメータとして指定された認可トークン、ＭｏｂｉｌｅＰｒｉｎｔスコープと一致する認可トークン６１１、スコープ６１３を検索し認可トークン情報６１０からレコードを特定する。認可サーバー１０８は特定できた認可トークン情報６１０のレコードの有効期限６１２が現時刻よりも後であることができた場合、特定した認可トークン情報６１０のレコードを応答する。特定した認可トークン情報６１０のレコードの有効期限６１２が過ぎている、または認可トークン情報６１０のレコードを特定できない場合、認可サーバー１０８はトークンチェックリクエスト（Ｓ１１．３）で受け付けた認可トークンは無効である応答する。
【００６０】
Ｓ１１．４において旧データ変換サーバー１０６ａはトークンチェックリクエスト（Ｓ１１．３）の結果、認可トークンが有効であり認可トークン情報６１０のレコードを受け取った場合、文書情報５００、データ変換情報５１０にレコード登録し、認可サーバー１０８にトークン取得リクエストし認可トークンを取得する。ここで旧データ変換サーバー１０６ａが文書情報５００に登録するレコードには旧データ変換サーバー１０６ａが発行する文書ＩＤ、トークンチェックリクエスト（Ｓ１１．３）の応答で受け取ったクライアントＩＤである。旧データ変換サーバー１０６ａがデータ変換情報５１０に登録するレコードには、データ変換サーバー１０６が発行するデータ変換ＩＤ、前記文書情報５００に登録したクライアントＩＤと文書ＩＤである。旧データ変換サーバー１０６ａはトークン取得リクエスト（Ｓ１１．４）において、予め保持している旧データ変換サーバー１０６ａのクライアントＩＤ（ｃｏｎｖｅｒｔ０００１）、パスワード、およびスコープにＳｉｇｎｅｄＵｒｌＵｐｌｏａｄをパラメータとして指定しトークン取得リクエストを送信する。トークン取得リクエスト（Ｓ１１．４）を受け付けた認可サーバー１０８におけるクライアント特定方法、認可トークン発行方法はＳ１１．１と同様である。
【００６１】
Ｓ１１．５において旧データ変換サーバー１０６ａはトークン取得リクエスト（Ｓ１１．４）で取得した認可トークンと、文書ＩＤ５０１とクライアントＩＤ５０２から生成した文書ＵＲＬと、データ変換ＩＤ５１１とクライアントＩＤ５１２から生成した印刷チケットＵＲＬをパラメータとして、トークン交換サーバー１０９に一時ＵＲＬ取得リクエストを行う。また旧データ変換サーバー１０６ａは生成した文書ＵＲＬと印刷チケットＵＲＬを文書ＵＲＬ５０３と印刷チケットＵＲＬ５１４に保存する。なお、旧データ変換サーバー１０６ａがトークン交換サーバー１０９に認可トークンを送信し一時ＵＲＬ取得リクエストを行う理由は、２つのサーバーのセキュリティドメインが異なるためであり、旧データ変換サーバー１０６ａが認可サーバー１０８により認可されていなければ一時ＵＲＬの取得は不可能である。
【００６２】
Ｓ１１．６においてトークン交換サーバー１０９は一時ＵＲＬ取得リクエスト（Ｓ１１．５）のパラメータとして受け取った認可トークンをパラメータとして認可サーバー１０８にトークン情報取得リクエストを行う。認可サーバー１０８はトークン情報取得リクエスト（Ｓ１１．６）を受け付けると認可トークン情報６１０からパラメータとして受け取った認可トークンと一致する認可トークン６１１をもつレコードを特定し有効期限６１２が現時刻より後だった場合スコープを返却する。ここで返却されるスコープはＳ１１．４におけるトークン取得リクエストで指定したＳｉｇｎｅｄＵｒｌＵｐｌｏａｄスコープである。認可トークン情報６１０にパラメータの認可トークンと一致するレコードが存在しない、または特定したレコードの有効期限６１２が現時刻より前だった場合、認可サーバー１０８はエラーを返却する。
【００６３】
Ｓ１１．７においてトークン交換サーバー１０９はトークン情報取得リクエスト（Ｓ１１．６）の応答がＳｉｇｎｅｄＵｒｌＵｐｌｏａｄスコープであることを確認できた場合、一時ＵＲＬ取得リクエストで受信した文書ＵＲＬと印刷チケットＵＲＬを用いて夫々の一時ＵＲＬの生成を行う。生成する一時ＵＲＬはスコープ情報７００に登録されているスコープ５０１がＳｉｇｎｅｄＵｒｌＵｐｌｏａｄであるドメイン名７０２で一時ＵＲＬ有効期間６０２まで利用可能なＵＲＬである。Ｓ１１．７でトークン交換サーバー１０９が発行する一時ＵＲＬは旧ストレージサーバー１１０ａのドメイン名となる。なお、文書の一時ＵＲＬは文書のアップロード先を示すアドレスであり、印刷チケットの一時ＵＲＬは印刷チケットのアップロード先を示すアドレスであることを特徴とする。
【００６４】
トークン交換サーバー１０９は生成した文書の一時ＵＲＬと印刷チケットの一時ＵＲＬを一時ＵＲＬ取得リクエスト（Ｓ１１．５）の応答として旧データ変換サーバー１０６ａに返却する。そして旧データ変換サーバー１０６ａは文書の一時ＵＲＬと印刷チケットの一時ＵＲＬ、生成したデータ変換ＩＤをデータ変換リクエスト（Ｓ１１．２）の応答として印刷アプリケーション３００に返却する。
【００６５】
Ｓ１１．８において印刷アプリケーションはデータ変換リクエスト（Ｓ１１．２）の応答として受け取った文書の一時ＵＲＬと印刷チケットの一時ＵＲＬに対してそれぞれ文書ファイルと印刷チケットファイルを添付してＨＴＴＰ  ＰＵＴメソッドをリクエストする。なおＳ１１．８の文書／印刷チケットアップロードリクエストはドメイン名が旧ストレージサーバー１１０ａを指している。文書／印刷チケットアップロードリクエスト（Ｓ１１．８）を受け付けた旧ストレージサーバー１１０ａはリクエストに添付されたファイルをファイルパス８０２に保存する。そして旧ストレージサーバー１１０ａはファイル情報８００に文書／印刷チケットアップロードリクエスト（Ｓ１１．８）のデータＵＲＬと添付ファイルを保存したファイルパスを登録する。
【００６６】
Ｓ１１．９において印刷アプリケーション３００のデータ変換サーバーのドメイン名（ｄａｔａ−ｃｏｎｖｅｒｔ．ｃｏｍ）の名前解決結果のキャッシュ有効期限が切れて、ＤＮＳサーバー１０５に名前解決リクエストが行われる。ＤＮＳサーバー１０５への名前解決リクエストの結果、新データ変換サーバー１０６ｂのＩＰアドレスが得られるため、以降の印刷アプリケーション３００のリクエストは新データ変換サーバー１０６ｂに行われる。Ｓ１１．１０において印刷アプリケーション３００は旧ストレージサーバー１１０ａへの文書／印刷チケットアップロード（Ｓ１１．８）が完了すると、文書／印刷チケットアップロード完了を新データ変換サーバー１０６ｂに通知する。印刷アプリケーション３００は文書／印刷チケットアップロード完了リクエスト（Ｓ１１．１０）には、Ｓ１１．１で取得した認可トークン、Ｓ１１．２で取得したデータ変換ＩＤをパラメータとして指定する。
【００６７】
Ｓ１１．１１において新データ変換サーバー１０６ｂは、文書／印刷チケットアップロード完了リクエスト（Ｓ１１．１０）のパラメータで渡された認可トークンとＭｏｂｉｌｅＰｒｉｎｔスコープをパラメータとして認可サーバー１０８に対してトークンチェックリクエストを行う。トークンチェックリクエスト（Ｓ１１．１１）を受け付けた認可サーバー１０８のトークンチェック方法についてはＳ１１．３と同様である。
【００６８】
Ｓ１１．１２において新データ変換サーバー１０６ｂは、まずデータ変換情報５１０から文書／印刷チケットアップロード完了リクエスト（Ｓ１１．１０）のパラメータで渡されたデータ変換ＩＤと一致するデータ変換ＩＤ５１１を検索する。なお、本実施例では新データ変換サーバー１０６ｂが処理を行う例を示しているが、データ変換サーバーの切り替えが発生せずに、ストレージサーバーの切り替えのみ行われる場合も存在するため、本処理を実行する対象が旧データ変換サーバー１０６ａでも実行することがある点に留意されたい。
【００６９】
そして、新データ変換サーバー１０６ｂはデータ変換ＩＤ５１１を検索により見つかったレコードの印刷チケットＵＲＬ５１４とストレージサーバードメイン名５１７、文書ＩＤ５１３を特定する。さらに文書ＩＤ５１３を用いて文書情報５００から文書ＵＲＬ５０３とストレージサーバードメイン名５０４を特定する。新データ変換サーバー１０６ｂは特定した文書ＵＲＬ５０３とストレージサーバードメイン名５０４、印刷チケットＵＲＬ５１４とストレージサーバードメイン名５１７に対して文書／印刷チケットダウンロードリクエスト（ＨＴＴＰ  ＧＥＴ）を行う。ここでデータ変換情報５１０から文書／印刷チケットアップロード完了リクエスト（Ｓ１１．１０）されたデータ変換ＩＤがデータ変換情報５１０上に見つからない場合、新データ変換サーバー１０６ｂはＳ１１．１０のリクエストにエラー応答する。またストレージサーバードメイン名５０４、５１７が文書情報５００やデータ変換情報５１０に登録されていない場合、旧ストレージサーバーａのドメイン名で文書／印刷チケットダウンロードリクエストを行う。ストレージサーバードメイン名５０４、５１７を文書情報５００やデータ変換情報５１０に登録する対応を行っていないデータ変換サーバー１０６が以前にあった場合でも文書／印刷チケットが保存されたストレージサーバー１１０を特定することができる。文書／印刷チケットダウンロードリクエストを受け付けた旧ストレージサーバー１１０ａは、ファイル情報８００から受け付けたＵＲＬからデータＵＲＬ７１１を特定し、応答としてファイルパス８０２に保存されたファイルを返す。
【００７０】
Ｓ１１．１３において新データ変換サーバー１０６ｂは文書／印刷チケットダウンロードリクエスト（Ｓ１１．１２）で旧ストレージサーバー１１０ａから取得した文書ファイルと印刷チケットファイルを用いてデータ変換を行う。新データ変換サーバー１０６ｂは印刷チケットに従って文書ファイルを印刷データファイルに変換する。新データ変換サーバー１０６ｂによって生成される印刷データファイルは文書と印刷チケットによって１ファイルになることも複数ファイルになることもある。新データ変換サーバー１０６ｂはデータ変換が完了するとＳ１１．１２において特定したデータ変換情報５１０のレコードのステータスを“変換済み”に更新する。
【００７１】
Ｓ１１．１４において新データ変換サーバー１０６ｂはＳ１１．１３で生成した１または複数の印刷データファイルを新ストレージサーバー１１０ｂにアップロード（ＨＴＴＰ  ＰＵＴ）する。ここで新データ変換サーバー１０６ｂは印刷データファイルのＵＲＬパスにＳ１１．１２で特定したデータ変換情報５１０のレコードのクライアントＩＤ５１２とデータ変換ＩＤ５１１も含める。次に新データ変換サーバー１０６ｂはアップロードした印刷データＵＲＬを使って、図５ｃの例で示した印刷データＵＲＬの一時ＵＲＬリストであるインデックスファイルを生成する。新データ変換サーバー１０６ｂの印刷データＵＲＬの一時ＵＲＬの生成方法については図示省略しているが、先述のＳ１１．５〜１１．７で説明した一時ＵＲＬ生成フローと同様でありスコープにＮｅｗ−ＳｉｇｎｅｄＵｒｌＤｏｗｎｌｏａｄを指定する。この一時ＵＲＬが印刷データの保存先を示している。トークン交換サーバー１０９はＮｅｗ−ＳｉｇｎｅｄＵｒｌＤｏｗｎｌｏａｄスコープが指定されているためドメイン名７０２が新ストレージサーバー１１０ｂである一時ＵＲＬを生成する。新データ変換サーバー１０６ｂはインデックスファイルを新ストレージサーバー１１０ｂにアップロード（ＨＴＴＰ  ＰＵＴ）する。ここで新データ変換サーバー１０６ｂはインデックスファイルのＵＲＬパスにＳ１１．１２で特定したデータ変換情報５１０のレコードのクライアントＩＤ５１２とデータ変換ＩＤ５１１も含める。インデックス／印刷データアップロードリクエストを受け付けた新ストレージサーバー１１０ｂはＵＲＬパスに従って生成するファイルパスにインデックスファイルと印刷データファイルを保存し、ファイル情報８００にレコード登録する。
【００７２】
Ｓ１１．１５において印刷アプリケーション３００は新データ変換サーバー１０６ｂに変換ステータス取得リクエストを行う。印刷アプリケーション３００は変換ステータス取得リクエスト（Ｓ１１．１５）のパラメータとして、Ｓ１１．１で取得した認可トークン、Ｓ１１．２で取得したデータ変換ＩＤをパラメータとして指定する。Ｓ１１．１６において変換ステータス取得リクエスト（Ｓ１１．１５）を受け付けた新データ変換サーバー１０６ｂはパラメータで指定された認可トークンのトークンチェックリクエストを認可サーバー１０８に行う。認可サーバー１０８におけるトークンチェックについては先述のＳ１１．３と同様である。
【００７３】
次に新データ変換サーバー１０６ｂは変換ステータス取得リクエスト（Ｓ１１．１５）のパラメータで指定されたデータ変換ＩＤと一致するデータ変換ＩＤ５１１をデータ変換情報５１０から検索し、一致したレコードのステータス５１６を確認する。新データ変換サーバー１０６ｂはステータス５１６が“変換済み”でない場合に変換ステータス取得リクエスト（Ｓ１１．１５）にステータス５１６を応答する。印刷アプリケーション３００は文書／印刷チケットアップロード完了リクエスト（Ｓ１１．１０）の後、変換ステータス取得リクエスト（Ｓ１１．１５）の応答でステータスが“変換済み”になるまで繰り返し変換ステータス取得リクエスト（Ｓ１１．１５）を行う。この繰り返しのリクエストは、ポーリングによる定期通信である。
【００７４】
Ｓ１１．１７において変換ステータス取得リクエスト（Ｓ１１．１５）で指定されたデータ変換ＩＤのステータス５１６が“変換済み”だった場合、新データ変換サーバー１０６ｂはＳ１１．１８〜Ｓ１１．２０においてインデックスＵＲＬ５１５の一時ＵＲＬを生成する。Ｓ１１．１８〜Ｓ１１．２０の一時ＵＲＬ生成フローは先述のＳ１１．５〜１１．７で説明した一時ＵＲＬ生成フローと同様でありスコープにＮｅｗ−ＳｉｇｎｅｄＵｒｌＤｏｗｎｌｏａｄを指定する。ここで使用するインデックスＵＲＬは先述した変換ステータス取得リクエスト（Ｓ１１．１５）のパラメータで指定されたデータ変換ＩＤと一致するレコードのインデックスＵＲＬ５１５である。
【００７５】
Ｓ１１．１８〜Ｓ１１．２０においてインデックスＵＲＬ５１５の一時ＵＲＬを取得した新データ変換サーバー１０６ｂはＳ１１．１５の応答として取得したインデックスＵＲＬ５１５の一時ＵＲＬとステータス５１６（“変換済み”）を返す。
【００７６】
Ｓ１１．２１において印刷アプリケーション３００は変換ステータス取得リクエスト（Ｓ１１．１５）で取得したインデックスＵＲＬ５１５の一時ＵＲＬからインデックスファイルをダウンロード（ＨＴＴＰ  ＧＥＴ）する。インデックスダウンロードリクエスト（Ｓ１１．２１）を受け付けた新ストレージサーバー１１０ｂは応答として、リクエストされたインデックスＵＲＬに対応するファイルパス８０２をファイル情報８００から特定し、ファイルパス８０２に保存したインデックスファイルを返す。インデックスファイルを受信した印刷アプリケーション３００はインデックスファイル内に記載された１つまたは複数の印刷データＵＲＬの一時ＵＲＬからダウンロード（ＨＴＴＰ  ＧＥＴ）する。印刷データダウンロードリクエスト（Ｓ１１．２１）を受け付けた新ストレージサーバー１１０ｂは応答として、リクエストされた印刷データＵＲＬに対応するファイルパス８０２をファイル情報８００から特定し、ファイルパス８０２に保存した印刷データファイルを返す。印刷アプリケーション３００は新ストレージサーバー１１０ｂからダウンロードした印刷データファイルをデータ変換結果画面９３０に印刷データのプレビュー９３１として表示する。
【００７７】
Ｓ１１．２２において印刷アプリケーション３００はデータ変換結果画面９３０の印刷ボタン９１５が押下されたことを検知すると新ストレージサーバー１１０ｂからダウンロードした１つまたは複数の印刷データをプリンタ１０２に送信し印刷実行する。
【００７８】
ここで旧データ変換サーバー１０６ａはＤＮＳレコード４００を変更した後、ＴＴＬ４０４の時間経過後に削除することができる。クライアントが名前解決結果をＴＴＬ４０４時間キャッシュしており、ＴＴＬ４０４の時間経過後は旧データ変換サーバー１０６ａにリクエストされることはなくなる。また旧データ変換サーバー１０６ａの削除はサーバー管理者が手動で実施してもよいし、誤操作を防ぐため別途準備した非図示の運用管理サーバーから自動で変更するよう構成することもできる。
【００７９】
旧ストレージサーバー１１０ａはデータ変換サーバー１０６のＤＮＳレコード４００を変更した後、ダウンロード用の一時ＵＲＬ有効期間７０２（本実施例では８６４００秒）の経過後に削除することができる。ダウンロード用の一時ＵＲＬ有効期間７０２が経過すると旧ストレージサーバー１１０ａのドメイン名で発行した一時ＵＲＬでリクエストされなくなる。また旧データ変換サーバー１０６ａの削除はサーバー管理者が手動で実施してもよいし、誤操作を防ぐため別途準備した非図示の運用管理サーバーから自動で変更するよう構成することもできる。
【００８０】
以上のように、新旧のデータ変換サーバー１０６で管理するデータをＤＢサーバー１０５で共有し、文書情報５００やデータ変換情報５１０にジョブ毎のストレージサーバードメイン名５０４、５１７に従ってストレージサーバー１１０にアクセスを行うことで、印刷アプリケーション３００からの印刷フロー中にデータ変換サーバー１０６とストレージサーバー１１０のサーバー入れ替えを行っても、エラーすることなく印刷実行することができる。
【００８１】
また、旧ストレージサーバー１１０ａの一時ＵＲＬを発行するスコープ（ＳｉｇｎｅｄＵｒｌＵｐｌｏａｄ、ＳｉｇｎｅｄＵｒｌＤｏｗｎｌｏａｄ）を旧データ変換サーバー１０６ａが使い、新ストレージサーバー１１０ｂの一時ＵＲＬを発行するスコープ（Ｎｅｗ−ＳｉｇｎｅｄＵｒｌＵｐｌｏａｄ、Ｎｅｗ−ＳｉｇｎｅｄＵｒｌＤｏｗｎｌｏａｄ）を新データ変換サーバー１０６ｂが使うことで、データ変換サーバー１０６のＤＮＳレコード４００を旧ストレージサーバー１１０ａから新データ変換サーバー１０６ｂに変更後、徐々に新ストレージサーバー１１０ｂが使われるようになる。旧ストレージサーバー１１０ａに保存されたファイルについても継続して利用することができるため無停止でサーバー入れ替えを行うことができる。
【００８２】
＜その他の実施形＞
本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施例の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【符号の説明】
【００８３】
１０２  プリンタ
１０３  モバイル端末
１０５  ＤＮＳサーバー
１０６  データ変換サーバー
１０７  ＤＢサーバー
１０８  認可サーバー
１０９  トークン交換サーバー
１１０  ストレージサーバー
【図１】
0006429694.tif 000002
【図２】
0006429694.tif 000003
【図３】
0006429694.tif 000004
【図４】
0006429694.tif 000005
【図５】
0006429694.tif 000006
【図６】
0006429694.tif 000007
【図７】
0006429694.tif 000008
【図８】
0006429694.tif 000009
【図９】
0006429694.tif 000010
【図１０】
0006429694.tif 000011
【図１１】
0006429694.tif 000012