JP2004133925A - 情報処理装置、情報処理方法、情報処理プログラム、サービス提供装置、サービス提供方法、サービス提供プログラム及び記録媒体 - Google Patents

情報処理装置、情報処理方法、情報処理プログラム、サービス提供装置、サービス提供方法、サービス提供プログラム及び記録媒体 Download PDF

Info

Publication number
JP2004133925A
JP2004133925A JP2003328198A JP2003328198A JP2004133925A JP 2004133925 A JP2004133925 A JP 2004133925A JP 2003328198 A JP2003328198 A JP 2003328198A JP 2003328198 A JP2003328198 A JP 2003328198A JP 2004133925 A JP2004133925 A JP 2004133925A
Authority
JP
Japan
Prior art keywords
processing
information
service providing
processing state
request
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2003328198A
Other languages
English (en)
Other versions
JP4270992B2 (ja
Inventor
Atsuko Yagi
八木 敦子
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2003328198A priority Critical patent/JP4270992B2/ja
Priority to US10/666,249 priority patent/US7185007B2/en
Publication of JP2004133925A publication Critical patent/JP2004133925A/ja
Application granted granted Critical
Publication of JP4270992B2 publication Critical patent/JP4270992B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • Y10S707/99934Query formulation, input preparation, or translation

Abstract

【課題】要求に対して非同期に実行される処理の実行要求をクライアント装置から受けた場合であっても、クライアント装置に対してその処理の状態を提供することができる情報処理装置の提供を目的とする。
【解決手段】 ネットワークを介して接続されるクライアント装置からのサービス提供要求に係る処理を所定のサービスを提供するサービス提供装置に実行させる情報処理装置であって、前記サービス提供装置に実行させた前記サービス提供要求に係る処理の応答を、該処理の完了に対して非同期的に前記クライアント装置に行う応答手段と、前記サービス提供要求に係る処理の処理状態を前記サービス提供装置より取得する処理状態取得手段と、前記クライアント装置からのWebページ表示要求に対し、前記処理状態取得手段により取得された前記処理状態を表示するWebページを生成し、該Webページを前記クライアント装置に送信するWebページ生成手段とを有することにより上記課題を解決する。
【選択図】 図4

Description

 本発明は、クライアント装置からの要求に対しWebページを送信する情報処理装置に関し、特にクライント装置から要求された処理の状態を提供する情報処理装置に関する。
 また、本発明は、前記情報処理装置からの要求に基づいて所定のサービスを提供するサービス提供装置に関する。
 近年はインターネット技術の発達により、Webブラウザに表示されるWebページは単なる情報の提示手段に止まらず、アプリケーションの提供手段としても機能している。Webページをアプリケーションの提供手段として機能させるための主な技術として、例えばASP(Active Server Pages:登録商標)やJSP(Java(登録商標) Server Pages)、サーブレット、CGI(Common Gateway Interface)等がある。これらは、細かい点においては種々の相違があるが、いずれもWebブラウザからの要求に対してプログラムを実行し、その処理結果をWebページとして生成するための技術であるという点で共通する。
 ここで実行されるプログラムは、更に、ネットワーク上にサービスを公開している別サーバに対して処理要求を送信し、その処理要求に対して返信された情報を元にWebページを生成することもできる。このようなWebサーバは、Webブラウザと各種のサーバとの中継役としてそれ自身が有するサービスのみでなく、各種のサーバで提供されているサービスについてもWebページを介して提供することができる。
 しかしながら、プログラムによっては、処理に時間を要するものがあり、Webブラウザからかかるプログラムの実行が要求された場合は、Webサーバは、その処理が完了するまでWebブラウザに対して応答することができない。その間、Webブラウザは応答待ちの状態となるため、ユーザは、Webブラウザ上での操作ができなくなってしまい、非常に不便である。そのため処理の実行に時間を要するプログラムについては、Webブラウザからの要求に対して非同期、即ち処理の完了を待たずに応答するように実装することが考えられる。しかし、この場合、Webブラウザの応答待ちの状態が長時間に及ぶという問題は回避されるが、ユーザは要求した処理の結果を知ることができないという問題がある。
 本発明は、上記の点に鑑みてなされたものであって、要求に対して非同期に実行される処理の実行要求をクライアント装置から受けた場合であっても、クライアント装置に対してその処理の状態を提供することができる情報処理装置、及び前記情報処理装置からの要求に応じて前記クライアント装置からの要求に基づく処理を非同期に実行するサービス提供装置の提供を目的とする。
 そこで上記課題を解決するため、本発明は、請求項1に記載されるように、ネットワークを介して接続されるクライアント装置からのサービス提供要求に係る処理を所定のサービスを提供するサービス提供装置に実行させる情報処理装置であって、前記サービス提供装置に実行させた前記サービス提供要求に係る処理の応答を、該処理の完了に対して非同期的に前記クライアント装置に行う応答手段と、前記サービス提供要求に係る処理の処理状態を前記サービス提供装置より取得する処理状態取得手段と、前記クライアント装置からのWebページ表示要求に対し、前記処理状態取得手段により取得された前記処理状態を表示するWebページを生成し、該Webページを前記クライアント装置に送信するWebページ生成手段とを有することを特徴とする。
 このような情報処理装置では、クライアント装置からの要求に対して非同期な処理を実行することができ、また非同期処理の状態を表示するWebページを生成することができるため、クライアント装置のから非同期な処理の実行要求を受けた場合に、その処理の状態をクライアント装置に提供することができる。
 また、本発明は、請求項2に記載されるように、前記情報処理装置は、前記サービス提供要求に係る処理の識別情報を管理する処理情報管理手段を更に有し、前記応答手段は、前記識別情報を前記処理情報管理手段に登録し、前記処理状態取得手段は、前記処理情報管理手段に前記識別情報が登録されている処理の処理状態を前記サービス提供装置より取得することを特徴とする。
 このような情報処理装置では、完了していない処理を処理識別情報管理手段によって識別することができるため、完了していない処理を容易に識別することができ、その処理の状態を取得することができる。
 また、本発明は、請求項3に記載されるように、前記処理情報管理手段は、前記サービス提供要求に係る処理を実行させているサービス提供装置の位置情報及び前記サービス提供装置に実行させている処理の状態の取得方法に関する情報を更に管理することを特徴とする。
 また、本発明は、請求項4に記載されるように、前記処理状態取得手段は、前記クライアント装置からのWebページ表示要求に応じ、前記処理情報管理手段に管理されている情報に基づいて前記サービス提供装置に実行させている処理の状態を前記サービス提供装置より取得することを特徴とする。
 このような情報処理装置では、処理情報管理手段に管理されている情報に基づいて処理状態を取得することができる。
 また、本発明は、請求項5に記載されるように、前記応答手段は、前記サービス提供装置に前記サービス提供要求に係る処理の実行要求を送信することにより、前記サービス提供装置に前記サービス提供要求に係る処理を実行させることを特徴とする。
 また、本発明は、請求項6に記載されるように、前記応答手段は、前記サービス提供要求に係る処理の実行要求に対する応答として、前記サービス提供要求に係る処理の処理状態の取得方法に関する情報を前記サービス提供装置より取得し、前記処理状態取得手段は、前記応答手段により取得された該処理の処理状態の取得方法に関する情報に基づいて前記処理状態を取得することを特徴とする。
 このような情報処理装置では、サービス提供装置から受信した情報に基づいて処理状態を取得するため、処理状態の取得方法が動的に変化する場合でも対応することができる。
 また、本発明は、請求項7に記載されるように、前記処理状態取得手段は、前記処理情報管理手段に前記応答手段により取得された前記処理状態の取得方法に関する情報が複数管理されている場合は、複数の前記処理状態の取得方法に関する情報のそれぞれに基づいて複数の前記処理状態を取得することを特徴とする。
 このような情報処理装置では、非同期処理が要求されている場合であっても、それらに対する処理状態を取得することができる。
 また、本発明は、請求項8に記載されるように、前記処理状態取得手段は、前記サービス提供装置に実行させた処理の処理状態を提供する処理状態提供装置に前記処理状態の送信要求を送信し、前記送信要求に応じて前記処理状態提供装置から送信された前記処理状態を受信することにより、前記処理状態を取得することを特徴とする。
 このような情報処理装置では、サービス提供装置には非同期処理の状態を問い合わせる必要がないため、情報処理装置とサービス提供装置との通信負荷を軽減することができる。
 また、本発明は、請求項9に記載されるように、前記情報処理装置は、前記サービス提供装置から前記処理状態を受信する処理状態受信手段を更に有し、前記Webページ生成手段は、前記処理状態受信手段が受信した前記処理状態を表示するWebページを生成することを特徴とする。
 このような情報処理装置では、非同期処理の状態が変化したときのみサービス提供装置から情報処理装置への通信が行われるため、情報処理装置とサービス提供装置との通信負荷を軽減することができる。
 また、本発明は、請求項10に記載されるように、前記処理状態取得手段は、前記処理状態の送信要求を前記サービス提供装置に送信し、前記送信要求に応じて前記サービス提供装置から送信された前記処理状態を受信することにより、前記処理状態を取得することを特徴とする。
 このような情報処理装置では、非同期処理を実行するサービス提供装置に対し、その処理の状態を問い合わせるため、実際の非同期処理を実行しているサービス提供装置から正確な状態を取得することができる。
 また、本発明は、請求項11に記載されるように、前記処理状態の取得方法に関する情報には前記処理状態を提供する処理状態提供装置の位置情報が含まれており、前記処理状態取得手段は、前記位置情報によって特定される前記処理状態提供装置に前記処理状態の送信要求を送信し、前記送信要求に応じて前記処理状態提供装置から送信された前記処理状態を受信することにより、前記処理状態を取得することを特徴とする。
 このような情報処理装置では、サービス提供装置から送信される情報に基づいて非同期処理の状態の問い合わせ先を決定するため、非同期処理が他のサービス提供装置に引き継がれた場合でも、その処理状態を当該他のサービス提供装置に問い合わせることができる。
 また、本発明は、請求項12に記載されるように、前記応答手段は、前記クライアント装置からの一つのサービス提供要求に基づいて複数の処理を前記サービス提供装置に実行させ、前記複数の処理のそれぞれの完了を待たずに前記クライアント装置への応答を行い、前記処理状態取得手段は、前記複数の処理のそれぞれの処理状態を取得し、前記Webページ生成手段は、前記処理状態取得手段が取得した複数の前記処理状態を表示するWebページを生成することを特徴とする。
 また、本発明は、請求項13に記載されるように、前記処理情報管理手段は、前記複数の処理のそれぞれについての処理を実行させているサービス提供装置の位置情報及び前記サービス提供装置に実行させている処理の処理状態の取得方法に関する情報と共に、前記クライアント装置からの同一のサービス提供要求基づいて実行される複数の処理に対して共通の値が割り当てられた要求識別情報を管理することを特徴とする。
 また、本発明は、請求項14に記載されるように、前記処理状態取得手段は、前記要求識別情報に基づいて前記クライアント装置からの同一のサービス提供要求に基づく処理を判断することにより、同一のサービス提供要求に基づく複数の処理のそれぞれの処理状態を前記処理情報管理手段に管理されている情報に基づいて取得することを特徴とする。
 このような情報処理装置では、クライアント装置からの一つの処理要求に対して実行される複数の非同期処理の状態をクライアント装置に提供することができる。
 また、本発明は、請求項15に記載されるように、前記応答手段は、前記複数の処理のそれぞれを複数の前記サービス提供装置のそれぞれに実行させることを特徴とする。
 このような情報処理装置では、クライアント装置からの一つのサービス提供要求に対して複数の非同期処理を複数のサービス提供装置のそれぞれに実行させるため、複数のサービス提供装置に分散されて処理される複数の非同期処理を一つのサービスとしてクライアント装置に提供することができる。
 また、本発明は、請求項16に記載されるように、前記Webページ生成手段は、前記処理状態取得手段が取得した同一のサービス提供要求に基づく処理の処理状態を統合して表示するWebページを生成することを特徴とする。
 このような情報処理装置では、複数の非同期処理の状態を統合して表示するWebページを生成するため、クライアント装置のユーザに分かりやすい形式で処理の状態を通知することができる。
 また、本発明は、請求項17に記載されるように、前記Webページ生成手段は、前記クライアント装置からの要求に基づいて前記処理状態を非表示としたWebページを生成することを特徴とする。
 このような情報処理装置では、非同期処理の状態を非表示としたWebページを生成するため、クライアント装置のユーザが非同期処理の状態の表示が不要な際は、状態の表示を非表示としてWebページを提供することができる。
 また、本発明は、請求項18に記載されるように、前記情報処理装置は、前記クライアント装置からの要求に基づいて前記処理状態の詳細情報を表示するWebページを生成する詳細情報ページ生成手段を更に有することを特徴とする。
 このような情報処理装置では、非同期処理の状態に関する詳細情報を表示するWebページを生成するため、クライアント装置のユーザに非同期処理の状態の詳細情報を提供することができる。
 また、本発明は、請求項19に記載されるように、前記Webページ生成手段は、前記クライアント装置からの要求に基づいて複数の前記サービス提供装置より所定の情報を取得し、取得したそれぞれの情報を複数に分割されたそれぞれの領域に表示するWebページを生成することを特徴とする。
 このような情報処理装置では、複数のサービス提供装置より取得した情報を一つの画面上に表示するWebページを提供することができる。
 また、本発明は、請求項20に記載されるように、前記情報処理装置は、前記Webページを複数に分割した領域ごとの表示内容が拡張マークアップ言語により定義された構造体をユーザごとに管理するページ情報管理手段を更に有し、前記Webページ生成手段は、前記構造体に基づいて前記Webページを生成することを特徴とする。
 このような情報処理装置では、ページ情報管理手段に管理されている情報に基づいてWebページを生成するため、ページ情報管理手段における情報を編集することで生成されるWebページの態様を容易に変更させることができる。
 また、本発明は、請求項21に記載されるように、前記Webページ生成手段は、複数の領域に分割された一の領域に前記サービス提供要求に係る処理の処理状態が表示されるように前記Webページを生成することを特徴とする。
 このような情報処理装置では、複数に分割された領域の一つに非同期処理の状態が表示されるWebページを提供することができる。
 また上記課題を解決するため、本発明は、請求項46に記載されるように、ネットワークを介して請求項1乃至21いずれか一項記載の情報処理装置から送信されるサービス提供要求に係る処理を実行するサービス提供装置であって、前記情報処理装置から送信された前記サービス提供要求に係る処理が完了する前に、該処理に対する応答と共に該処理の処理状態を取得させるための処理状態取得情報を前記情報処理装置に送信する処理状態取得情報送信手段を有し、前記情報処理装置から前記処理状態取得情報に基づきなされた前記サービス提供要求に係る処理の処理状態の取得要求に応じ、前記処理状態を前記情報処理装置に送信することを特徴とする。
 このようなサービス提供装置では、請求項1乃至21いずれか一項記載の情報処理装置から非同期処理の実行要求を受けた場合に、当該処理の処理状態を取得するための情報を当該情報処理装置に提供することができる。
 また上記課題を解決するため、本発明は、上記情報処理装置における情報処理方法、前記情報処理方法をコンピュータに実行させるための情報処理プログラム、又は前記情報処理プログラムを記録した記録媒体としてもよい。
 また上記課題を解決するため、本発明は、上記サービス提供装置におけるサービス提供方法、前記サービス提供方法をコンピュータに実行させるためのサービス提供プログラム、又は前記サービス提供プログラムを記録した記録媒体としてもよい。
 本発明によれば、要求に対して非同期に実行される処理の実行要求をクライアント装置から受けた場合であっても、クライアント装置に対してその処理の状態を提供することができる情報処理装置、及び前記情報処理装置からの要求に応じて前記クライアント装置からの要求に基づく処理を非同期に実行するサービス提供装置を提供することができる。
 以下、図面に基づいて本発明の実施の形態を説明する。図1は第一の実施の形態におけるWebシステムの一例の構成図を示す。図1のWebシステム1は、Webサーバ10と、Webクライアント20と、プリンタサーバ30aと、メールサーバ30bと、文書管理サーバ30cとがLANやインターネット等のネットワーク40を介して接続されている。
 Webクライアント20は、Webブラウザがインストールされているクライアント装置であり、例えばPC(Personal Computer)、PDA(Personal Digital Assistants)及び携帯電話等が該当する。
 プリンタサーバ30aは、ネットワーク等を介して接続しているプリンタ50に係る印刷サービスをWebサービスとしてネットワーク40上に公開しているコンピュータである。即ち、プリンタサーバ30aの機能はSOAPのRPCにより呼び出すことができる。例えばプリンタサーバ30aは、指定された文書データ等をプリンタ50に印刷させる「印刷要求メソッド」を有しており、当該メソッドをネットワーク40上に公開している。
 文書管理サーバ30cは、文書DB(Data Base)60に格納されている文書データに関する文書管理サービスをWebサービスとしてネットワーク40上に公開しているコンピュータである。即ち、文書管理サーバ30cの機能はSOAPのRPCにより呼び出すことができる。例えば文書管理サーバ30cは、文書DB60に格納されている文書データの一覧情報を取得させるための「文書一覧取得メソッド」を有しており、当該メソッドをネットワーク40上に公開している。
 メールサーバ30bは、メールサービスをWebサービスとしてネットワーク40上に公開しているコンピュータである。SOAPのRPCによりメールサーバ30bの機能を呼び出すことができる点は、上述したプリンタサーバ30a等と同様である。メールサーバ30bは、例えば受信メールの一覧を取得させるための「メール一覧取得メソッド」等を公開している。なお、以下においてプリンタサーバ30a、メールサーバ30b及び文書管理サーバ30c等のようにSOAPのRPCによりその機能を呼び出すことができるサーバを総称する場合、「SOAPサーバ」という。
 Webサーバ10は、Webクライアント20から要求された情報を表示するWebページを生成し、生成したWebページをWebクライアント20に対して提供するコンピュータである。Webサーバ10は、上述したプリンタサーバ30a等や図示しないその他のSOAPサーバの機能をSOAPのRPCによって呼び出すことにより、Webページの生成に必要な情報を収集し、収集した情報に基づいてWebページを生成する。すなわち、Webサーバ10自身は、所定のサービスを実行するための機能や、Webページに掲載するためのコンテンツを予め有しているわけではなく、ネットワーク40を介して収集した情報に基づいてWebページを生成することが主な役割である。但し、Webサーバ10自身にも、SOAPサーバと同様に、Webページを介して所定のサービスを提供するための機能を実装してもよい。
 次に、Webサーバ10の詳細について説明する。図2は、Webサーバのハードウェア構成図を示す。図2に示されるようにWebサーバ10は、CPU11、ROM12、RAM13、補助記憶装置14、ネットワークインタフェース(I/F)15、ドライブ装置16等から構成されている。
 CPU11は、Webサーバ10全体を制御する制御部であり、ROM12や補助記憶装置14に格納された各種制御プログラムやアプリケーションプログラムを実行して装置の制御、通信の制御、データの取得及び編集等の動作を行う。
 ROM12は、主に装置の制御プログラムを記憶する記憶手段であり、RAM13はCPU11のワークメモリや一時的なデータの記憶に用いる記憶手段である。
 補助記憶装置14は、各種アプリケーションプログラムやデータを記憶する記憶手段であり、後述するテーブル等も必要に応じてここに記憶するようにすることもできる。
 ネットワークI/F15は、Webサーバ10をネットワーク40に接続するためのインタフェースである。
 ドライブ装置16は、本発明の機能を実行するプログラムが記録されたCD−ROM等の記録媒体17を読み取るための装置である。
 なお、図2には操作部や表示部を示していないが、キーボードやマウス等による操作部や、液晶やブラウン管(CRT)による表示部を設け、ユーザからの入力の受付や動作結果の表示を行うことができるようにしてもよい。
 次に、Webサーバ10のソフトウェア構成例について説明する。図3は、Webサーバのソフトウェア構成例を示す図である。
 図3に示されるようにWebサーバ10は、Webサーバプログラム101、ランタイム102、モジュールコンテナ103、XMLパーサ104、XSLプロセッサ105、クライアントプログラム106、プロトコルキット107、サーバサイドプログラムモジュール108等のソフトウェアを備えている。そして、これらのソフトウェアは補助記憶装置14あるいはROM12に格納され、CPU11が必要な時に読み出して実行する。これらのソフトウェアをネットワークI/F15を介して外部から取得するようにしてもよい。
 このうち、Webサーバプログラム101は、ワールドワイドウェブ(WWW)システムにおいてWebクライアント20等からの要求に応じてWebページ等を送信するためのソフトウェアであり、例えばApache Software Fundationによって提供されているApache(アパッチ)を用いることができる。
 ランタイム102は、アプリケーションソフトを実行する際に必要なソフトウェアモジュールであり、ここでは、Sun Microsystems社の提供するJava(登録商標)2というプログラム言語で作成されたアプリケーションソフトを実行するためのJava(登録商標)2ランタイムを用いている。
 モジュールコンテナ103は、サーバサイドプログラムモジュール108を実行するための実行環境を提供するソフトウェアであり、例えばApache Software Fundationによって提供されているTomcat(トムキャット)を使用することができる。
 XML(eXtensible Markup Language)パーサ104は、テキストで記載されたXMLデータをツリー構造でメモリに展開し、他のアプリケーションで扱い易くするためのソフトウェアであり、例えばApache Software Fundationによって提供されているXerces(ザーシーズ)を使用することができる。
 XSL(eXtensible Stylesheet Language)プロセッサ105は、XMLデータをXSLデータに従って変換するためのソフトウェアであり、例えばApache Software Fundationによって提供されているXalan(ザラン)を使用することができる。
 クライアントプログラム106は、プリンタサーバ30a等のSOAPサーバに対して処理を要求するためのソフトウェアであり、例えばSOAPによる通信を行うソフトウェアを用いることができる。また、プロトコルキット107は、その要求に従って実際に通信を行うためのソフトウェアである。
 サーバサイドプログラムモジュール108は、Webサーバ10上で実行されるモジュール化されたプログラムであり、ここでは、Java(登録商標)2を用いて作成されたServlet(サーブレット)を使用している。そして、Webサーバ10におけるこの発明の特徴となる処理の多くは、このサーバサイドプログラムモジュール108によってCPU11を種々の手段として機能させることによって実現している。即ちWebクライアント20からの要求に応じて、プリンタサーバ30a等の機能の呼び出しや、Webページを生成等するためのプログラムがサーバサイドプログラムモジュール108である。
 なお、Webサーバ10のように、XMLデータをXSLデータに従って変換してHTMLデータを生成する場合、HTML及びXSLの仕様でカバーできない表示方法を規定するカスケーディングスタイルシート(CSS)データや、エラーのポップアップ等の動作を規定するためのジャバスクリプト(Java(登録商標)Script)によるコード等も、併せて用いるようにしてもよい。必要なCSSデータやJava(登録商標)Scriptコードは、XSLデータ中に直接記載するか、XSLデータ中にこれらのデータやコードへの参照情報を記載する等して、変換データであるXSLデータに含めることができる。
 次に、サーバサイドプログラムモジュール108によって実現される、本発明の特徴となる処理を実行する機能の機能構成例について説明する。図4は、第一の実施の形態におけるWebサーバの機能構成例を示す図である。図4においてWebサーバ10は、サーバサイドプログラムモジュール108の機能として、例えば、ポータルページモジュール181、印刷要求ページモジュール182及び文書管理ページモジュール183等を有している。これらの各種モジュールは、Webクライアント20からのWebページの送信要求に応じて、Webサーバプログラム101によって起動され、Webページを生成するものである。また、図示はしていないがポータルページモジュール181等以外にもWebクライアント10からの各種要求に対するモジュールが実装されている。
 ポータルページモジュール181は、Webクライアント10のWebブラウザ21からのポータルページの送信要求に応じてWebサーバプログラム101によって起動され、文書管理サーバ30b等のSOAPサーバ30から情報を収集し、それらの情報や他のHTMLデータ等を表示するポータルページを生成する。ここでポータルページとは、様々な情報を一つのWebページ上に統合したものをいい、Webクライアント20のユーザが、Webブラウザを利用して、インターネット、イントラネット等の入り口としてアクセスするページをいう。
 印刷要求ページモジュール182は、Webブラウザ21からの文書データの印刷要求に応じてWebサーバプログラム101によって起動され、文書データの印刷をプリンタサーバ30aに要求し、印刷要求を受け付けた旨のWebページを生成する。
 文書管理ページモジュール183は、Webブラウザ21からの文書管理ページの送信要求に応じてWebサーバプログラム101によって起動され、文書管理サーバに30cから文書データの一覧情報等を取得し、その一覧情報等を表示するWebページ(文書管理ページ)を生成する。なお、以下においてポータルページモジュール181、印刷ページモジュール182及び文書管理ページモジュール183等を総称する場合、「ページモジュール」という。
 ジョブ管理テーブル190は、各種ページモジュールがSOAPサーバ30に要求した処理(ジョブ)であって、要求に対する応答がSOAPサーバ30よりされた時点では処理が完了していないもの(以下「依頼中ジョブ」という。)、即ち、SOAPサーバ30において要求に対して非同期に実行される処理ついて、それぞれの識別情報等を管理するものである。ジョブ管理テーブル190は、更に、依頼中ジョブの処理状態を後で確認するための方法に関する情報も管理する。第一の実施の形態においては、プリンタサーバ30aの文書データの印刷処理が非同期なジョブに該当し、印刷要求ページモジュール182からのプリンタサーバ30aに対する印刷要求が、依頼中ジョブとしてジョブ管理テーブル190に登録される。ポータルページモジュール181は、ポータルページを生成する際にジョブ管理テーブル190の内容に基づいてそのときの依頼中ジョブの状態をジョブの要求先のSOAPサーバ30より取得し、取得したジョブの状態をポータルページの表示対象とする。
 ページ情報ファイル195は、ポータルページのレイアウト情報及びレイアウトされた各領域に表示すべき情報等が定義されているものであり、ポータルページモジュール181が、ポータルページを生成する際に参照する。
 次に、SOAPサーバ30の機能構成について説明する。図5は、本発明の実施の形態におけるSOAPサーバの機能構成例を示す図である。図5に示されるように、SOAPサーバ30は、SOAP処理部31、処理状態取得方法提供手段32及びサービス提供手段33等から構成されている。
 SOAP処理部31は、Webサーバ10から送信されるSOAPメッセージを解釈し、SOAPメッセージの記述内容にしたがって処理状態取得方法提供手段32又はサービス提供手段33を呼び出すためのモジュールである。SOAP処理部31は、また、処理状態取得方法提供手段32やサービス提供手段33が処理結果として出力した情報をSOAPメッセージに変換し、当該SOAPメッセージをWebサーバ10に対して送信する。
 処理状態取得方法提供手段33は、Webサーバ10からのWebサービスに係る処理の実行要求に応じて、当該処理の完了を待たずにWebサーバ10に対して応答を行うためのものである。処理状態取得方法提供手段33は、Webサーバ10から要求された処理の状態を取得する方法に関する情報を含めてWebサーバ10に対する応答を行う。
 サービス提供手段33は、Webサービスに係る処理を実行するためのものである。したがって、サービス提供手段33に実装されている機能は、SOAPサーバ30ごとに異なる。すなわち、プリンタサーバ30aであれば印刷サービスに係る機能が実装されており、メールサーバ30b又は文書管理サーバ30cであればメールサービス又は文書管理サービスに係る機能が実装されている。
 以下、図1のWebシステム1の処理手順について図4等を参照しながら説明する。先ず、Webクライアント20のWebブラウザ21にポータルページが表示されるまでの処理手順について説明する。図6は、ポータルページを表示する際の処理を説明するためのシーケンス図を示す。
 ステップS10において、Webクライアント20のユーザが、Webブラウザ21にポータルページのURLの入力を行う等により、Webブラウザ21に対してポータルページの表示を指示すると、Webクライアント20は、Webサーバ10に対しポータルページの送信要求を送信する。ここでWebクライアント20は、Webサーバ10がWebクライアント20のユーザを一意に識別できる情報も共に送信する。ユーザを識別できる情報としては、例えばユーザID及びパスワードがあるが、その場合は、ポータルページにパスワードを設定しておくことにより、ポータルページの送信要求の際にWebブラウザ21上でユーザに入力させてもよい。又は、予めユーザにユーザ登録をさせるようにし、その際にWebクライアント20のクッキーにユーザIDを登録しておき、それをポータルページの送信要求の際にWebブラウザ21から送信させるようにしてもよい。
 ステップS10に続いてステップS11に進み、Webサーバ10のポータルページモジュール181は、ポータルページの送信要求に伴って送信されたユーザの識別情報に基づいてWebクライアント20のユーザを識別し、そのユーザに対して定義されているポータルページのページ情報ファイル195を解析する。
 図7及び図8は、ページ情報ファイルの定義例を示す図である。図7と図8とにより一つのページ定義ファイル195が表現されている。本実施の形態においてページ定義ファイル195は、XML(拡張マークアップ言語)によって記述されている。
 図7及び図8のページ定義ファイル195において、記述1952、1953、1954、1955及び1966は、ポータルページを複数に分割する各領域について、それぞれに表示する表示内容に関する定義である。ここで、各領域を「ブロック」と呼ぶこととすると、<top>タグで囲まれた記述1952はtopブロック、<left>タグで囲まれた記述1953はleftブロック、<center>タグで囲まれた記述1954はcenterブロック、<right>タグで囲まれた記述1955はrightブロック、<bottom>ブロックで囲まれた記述1956はbottomブロックに対する定義である。
 図9は、ポータルページ上における各ブロックの配置位置を示す図である。図9に示されるように、topブロック、bottomブロックは、ポータルページを縦に3つ(上段、中段、下段)に分割した場合の上段又は下段の領域に位置する。leftブロック、cneteブロック、rightブロックは、中段を更に横方向に3つに分割した場合の左領域、中領域、又は右領域に位置する。
 図7に戻る。図7において各ブロックに対する定義は、当該ブロックの表示内容に関する定義がされているファイル(以下、「表示内容定義ファイル」という。)のファイル名と、必要に応じて表示内容定義ファイル内の定義において変数として定義されているパラメータの値が指定されているパラメータ情報とから構成されている。
 例えば、topブロックについては、記述1952より、表示内容定義ファイルのファイル名は、「search.xml」であることが分かる。
 leftブロックは、それぞれ<item>タグで囲まれた記述1957及び記述1958によって、更に、縦方向に二つの領域(上領域及び下領域)に分割される旨が定義されている。上領域の表示内容定義ファイルは、記述1957aよりservices.xmlであり、そのパラメータ情報は記述1957bであることが分かる。下領域の表示内容定義ファイルは、記述1958aよりmaillist.xmlであり、そのパラメータ情報は、記述1958bであることが分かる。
 centerブロック、rightブロック、bottomブロックについても、それぞれの表示内容定義ファイルのファイル名(記述1959、1961、1963)と、パラメータ情報(記述1960、1962、1964)とが記述されている。
 表示内容定義ファイル内に記述されている表示内容に関する定義は、主に、ブロック内に表示する情報(表示情報)を取得する方法に関する定義(以下、「表示情報取得方法」という。)と、表示情報をブロック内にレイアウトするための書式情報を取得する方法に関する定義(以下、「書式情報取得方法」という。)とから構成されている。
 例えば、表示情報が静的なものである場合は、表示情報取得方法の例としては、表示情報が格納されているXMLファイルやHTMLファイルのパス名又はURL等が挙げられる。書式情報取得方法の例としては、表示情報が格納されているXMLファイルに適用するXSLファイルのパス名又はURL等が挙げられる。
 一方、ブロック内に表示する情報が動的なものである場合は、表示情報取得方法の例としては、表示情報をSOAPサーバ30等から取得するために呼び出すべきメソッドのインタフェース情報等が挙げられる。書式情報取得方法の例としては、例えば、メソッドを呼び出すことにより得られる表示情報がXMLデータである場合は、当該XMLデータに適用するXSLファイルのパス名又はURL等が挙げられる。
 なお、記述1951は、ページ定義ファイル195の所有者を識別するための情報である。すなわち、<user>タグで囲まれた「ABC」によって、図7及び図8に示されているページ定義ファイル195の所有者は、「ABC」というユーザID又はユーザ名で識別されるユーザに対するものであることが分かる。このように、本実施の形態におけるページ定義ファイル195は、ユーザ毎に定義されている。ページ定義ファイル195をユーザ毎に定義することで、ユーザ毎にパーソナライズされたポータルページを提供することができる。
 図7及び図8に示されるようなページ情報ファイル195を解析することにより、ポータルページモジュール181は、カレントユーザに対するポータルページの各ブロックに表示する情報の取得方法等を得ることができる。
 ステップS11に続いて、ポータルページモジュール181は、ページ情報ファイル195に基づいて表示情報等を取得するための処理を実行する。
 例えば、ステップS12において、ポータルページモジュール181は、leftブロック下領域に表示するための情報を取得すべく、メールサーバ30bのメール一覧取得メソッドの呼び出し情報をXMLデータとして生成し、当該XMLデータをSOAPによってメールサーバ30bに送信する。
 ポータルページモジュール181が、メール一覧取得メソッドを呼び出すのは、leftブロック下領域の表示内容定義ファイル(maillist.xml)に、表示情報取得方法としてメール一覧取得メソッドのインタフェース情報が記述されているからである。メール一覧取得メソッドの呼び出し情報には、当該メソッドの引数情報として記述1958bに記述されている情報(メールボックスのURL、ユーザ名、取得対象となるメールのうち先頭のメールのインデックス、取得するメールの数)が指定される。
 なお、このようなWebサーバ10によるメールサーバ30b等のSOAPサーバに対するメソッド呼び出しは、以降は単に「SOAP呼び出しする」と記述する。
 ステップS12に続いてステップS13に進み、メール一覧取得メソッドを呼び出されたメールサーバ30bは、対象となるユーザの受信メール一覧を検索し、検索結果をXMLデータにして、SOAPによりWebサーバ10に送信する(S14)。
 ステップS14に続いてステップS15に進み、ポータルページモジュール181は、ページ情報ファイル195の記述1954に基づいて、上述したメールサーバ30bに対するのと同様の手順で文書管理サーバ30cの文書一覧取得メソッドをSOAP呼び出しする。すなわち、ポータルページモジュール181は、centerブロックの表示内容定義ファイル(documentlist.xml)より文書一覧取得メソッドのインタフェース情報を取得し、文書一覧取得メソッドの引数情報として記述1960に記述されている情報(検索対象とするキャビネットのURL、検索対象とするフォルダのフォルダ名、検索対象とするプロパティの種別は文書名(documentName)、作成者(creator)、及び作成日(createdDate)である旨、ソートキー、検索を開始するレコードのインデックス、検索件数)を指定する。
 文書一覧取得メソッドが呼び出された文書管理サーバ30cは、文書DB60から文書データ一覧を検索し(S16)、その結果をXMLデータにしてWebサーバ10に送信する(S17)。
 更に、図6には示していないが、Webサーバ10は、その他のブロックに対する表示情報や書式情報についても、ページ情報ファイル195の定義にしたがって取得する。
 ステップS18は、ステップS11〜S17等とは別スレッドにおいて、並行して実行される。ステップS18において、ポータルページモジュール181はジョブ管理テーブル190を参照し、依頼中ジョブが登録されていないかを確認する。なお、ジョブ管理テーブル190の内容も含めここでの処理の詳細については後述する。
 ジョブ管理テーブル190に依頼中ジョブが登録されていなければステップS19に進み、Webサーバ10は、ページ情報ファイル195に基づいてブロックごとに取得したXMLデータ又はHTMLデータ等の表示情報とXSLデータ等の書式情報とに基づいてXSLT変換を実行し、XSLT変換によって得られたブロックごとのHTMLデータをマージすることにより、一つのHTMLデータであるポータルページを生成する。
 ステップS19に続いてステップS20に進み、Webサーバ10が、Webクライント20に対し生成したポータルページを送信すると、Webクライアント20のWebブラウザ21は、受信したポータルページを表示する(S21)。
 図10は、ポータルページの例を示す図である。図10のポータルページ200は、Webサイトの検索機能を提供する検索用領域201、ポータルページ200が提供するサービスの一覧(リンク)が記載されているサービス一覧領域202、受信メールの一覧が表示されるメール一覧領域203、ユーザが文書DB60に格納している文書の一覧を表示する文書一覧領域204、カレンダーが表示されるカレンダー領域205及び依頼中ジョブの処理の状態に関するメッセージ(以下、「処理状態メッセージ」という。)の一覧が表示されるジョブ一覧領域206等から構成される。なお、ポータルページ200は、Webブラウザ上に表示されているものであるが、図中においてWebブラウザのユーザインタフェースについては省略しており、以降においてWebページを示す図についても同様とする。
 各領域に表示されている情報は、ページ情報ファイル195の定義(図7)に基づいて、Webサーバ10が、メールサーバ30b等のSOAPサーバ30から収集したもの、又はHTMLファイルとして保存されていたもの等である。例えば、メール一覧領域203の情報はメールサーバ30bから、文書一覧領域204の情報は文書管理サーバ30cから取得したものである。ジョブ一覧領域206については、図6のステップS18の処理に対応しており、ジョブ管理テーブル190には依頼中ジョブが登録されていないため、その旨が表示されている。
 次に、文書一覧領域204に表示されている文書データを印刷する際の処理について説明する。図11は、印刷要求の際の処理を説明するためのシーケンス図である。なお、以下の説明において、Webサーバ10とプリンタサーバ30a及び文書管理サーバ30c等のSOAPサーバとの通信がSOAPによってXMLデータを交換することにより行われるのは、図6の場合と同様であり、以降のシーケンス図においても同様である。
 ステップS30において、Webクライアント20はWebサーバ10に対し印刷対象とする文書データを指定して、文書データの印刷要求を送信する。Webクライアント20における印刷要求の実行は、ポータルページ200の文書一覧領域204上において印刷したい文書を選択し、図示しない印刷ボタンをクリックすることにより行ってもよいし、文書一覧領域204にあるリンク207をクリックすることにより、文書管理ページを表示させた後に行ってもよい。
 図12は、文書管理ページの例を示す図である。図12の文書管理ページ210では、文書一覧テーブル211に表示されている文書データについて種々の操作が可能となっている。ここで、印刷要求を行う場合は、例えば文書データ「AAA」等、印刷対象としたい文書データのチェックボタン212をチェックした後に、文書印刷リンク213をクリックすればよい。
 ステップS30に続いてステップS31に進み、Webサーバ10の印刷要求ページモジュール182は、文書管理サーバ30cに対し文書データ「AAA」のアクセスチケットの送信要求を送信する。ここで、アクセスチケットとは、文書データに対するアクセスの許可証のようなものであり、アクセス対象の文書データの識別情報と、認証情報等が含まれるデータである。
 ステップS31に続いてステップS32に進み、文書管理サーバ30cは、文書データ「AAA」に対するアクセスチケットを生成し、Webサーバ10に送信する(S33)。
 ステップS33に続いてステップS34に進み、印刷要求ページモジュール182は、文書データ「AAA」に対するアクセスチケットを伴って文書データ「AAA」の印刷要求をプリンタサーバ30aに対して送信する。
 ステップS34に続いてステップS35に進み、プリンタサーバ30aは、文書データ「AAA」の送信要求を文書データ「AAA」のアクセスチケットと共に文書管理サーバ30cに送信する。なお、ここでプリンタサーバ30aは、印刷要求に対するジョブIDを採番し、当該ジョブIDを印刷処理に関連付けて管理しておく。
 ステップS35に続いてステップS36に進み、文書データの送信要求を受信した文書管理サーバ30cは、文書DB60から文書データ「AAA」を取り出し、プリンタサーバ30aに送信する(S37)。
 ステップS37に続いてステップS38に進み、プリンタサーバ30aは文書データ「AAA」に対応するアプリケーションを起動し、プリンタ50に対し文書データ「AAA」の印刷を指示すると、印刷処理の完了を待たずに(印刷処理の完了に対して非同期的に)印刷要求に対する応答としてのSOAPメッセージをWebサーバ10に対して送信する(S39)。ここで、プリンタサーバ30aは、Webサーバ10が後で印刷処理の状態の問い合わせができるように、プリンタサーバ30aに対して処理状態を問い合わせるためのインタフェース情報等(メソッド名等)(以下「ジョブ確認情報」という。)と、当該印刷処理を識別するためのジョブIDとを送信するSOAPメッセージに含めておく。
 図13は、ジョブ確認情報の例を示す図である。図13に示されるように、ジョブ確認情報31は、処理状態を問い合わせるためのメソッドのメソッド名である「状態取得用メソッド名」と、状態取得用メソッドの戻り値において処理の完了を示す値である「完了ステータス」とから構成されている。ジョブ確認情報31より、印刷要求の状態を問い合わすには、プリンタサーバ30aにおけるgetPrintStatusメソッドを呼び出せばよく、当該メソッドの戻り値として「Complete」が返却されたら印刷処理が完了しているものと判断できることが分かる。
 図14は、印刷要求に対する応答としてプリンタサーバより送信されるSOAPメッセージの例を示す図である。図14のSOAPメッセージ410において、記述411及び記述412にジョブ確認情報が含まれており、記述413にジョブIDが含まれている。すなわち、記述411には、<methodName>タグに囲まれて状態取得用メソッド名(getPrintStatus)が示されており、記述412には、<CompleteSign>タグに囲まれて完了ステータス(Complete)が示されている。また、記述413には、<jobID>タグに囲まれてジョブID(001)が示されている。本実施の形態におけるジョブ確認情報等は、このようなXML(拡張マークアップ言語)により定義された構造体に含められてWebサーバ10に対して送信される。
 なお、プリンタサーバ30aが印刷処理の完了を待たずに応答するのは、文書データ等の印刷処理は、他の印刷要求の数や印刷対象とする文書データのデータサイズ等にもよるが、一般にはある程度時間がかかる処理であることに起因する。即ち、印刷要求を行ったWebサーバ10は、プリンタサーバ30aからの応答待ちの状態となっている。したがって、Webサーバ10に対して印刷要求を行ったWebブラウザ21においてもWebサーバ10からの応答待ちとなっている。ここで、プリンタサーバ30aが、印刷処理が完了してから応答を行ったのでは、Webサーバ10を介してWebブラウザ21を長い間応答待ちの状態にさせてしまう可能性がある。そこで、プリンタサーバ30aは、Webブラウザ21を待ち状態から早期に復帰させ、ユーザがWebブラウザ21を用いて早期に他の作業を行うことができるよう、印刷処理の完了を待たずに応答するのである。
 ステップS39に続いてステップS40に進み、印刷要求ページモジュール182は、ステップS34におけるプリンタサーバ30aに対する印刷要求を、依頼中ジョブとしてジョブ管理テーブル190に登録する。
 図15は、ジョブ管理テーブルの例を示す図である。ジョブ管理テーブル190は、ジョブの要求元であるユーザを識別するための「要求ユーザID」と、SOAPサーバ30に依頼した処理を識別するための「ジョブID」と、ジョブの要求先のSOAPサーバ30のURLが格納される「サービス要求先URL」と、処理状態を問い合わせるためのインタフェース情報である「状態取得用メソッド」と、状態取得用メソッドの戻り値において処理の完了を示す値が格納される「完了ステータス」とをデータ項目として有している。「ジョブID」、「状態取得用メソッド」及び「完了ステータス」は、SOAPサーバ30から受信したものが登録される。なお、ここで、ポータルページモジュール181は、プリンタサーバ30aに対する印刷要求については、要求ユーザIDは「ABC」、ジョブIDは「001」、「サービス要求先URL」はプリンタサーバ30aのURL、状態取得用メソッドは「getPrintStatus」、完了ステータスは「Complete」としてジョブ管理テーブル190に登録する。
 図11のステップS40に続いてステップS41に進み、印刷要求ページモジュール182は、Webクライアント20からの印刷要求に対する応答としてのWebページを生成する。ここでは、Webサーバ10は、例えば「印刷要求を受け付けました」等のメッセージが表示されるWebページを生成する。
 ステップS41に続いてステップS42に進み、Webサーバ10は、生成したWebページをWebクライアント20に送信する。
 ステップS42に続いてステップS43に進み、Webクライント20のWebブラウザ21は、Webサーバ10から受信したWebページを表示する。
 一方、ステップS38においてプリンタサーバ30aから文書データ「AAA」の印刷指示を受けたプリンタ50は、ステップS44において文書データ「AAA」の印刷処理を実行し、その処理状態を保持しておく。
 上述した処理により、Webクライアント20の印刷要求は、依頼中ジョブとしてWebサーバ10によって管理されたこととなる。
 次に、Webクライアント20のユーザが、過去に実行を要求した印刷処理の状態について、即ち依頼中ジョブの状態について確認する際の処理について説明する。図16は、依頼中ジョブの状態の問い合わせ処理を説明するためのシーケンス図を示す。
 ステップS50において、Webクライアント20のWebブラウザ21は、ユーザからの入力に応じてポータルページの送信要求をWebサーバ10に送信する。ここでは、例えば文書管理ページ210から改めてポータルページ200を表示させようとした場合、Webブラウザ21を再起動しポータルページ200を表示させようとした場合、ポータルページ200を表示している状態でページを最新の状態に更新しようとした場合、又はポータルページ上で例えばメール一覧の更新を実行すべく図10の更新ボタン207をクリックした場合等が該当する。なお、ユーザを識別するためのユーザIDも伴って送信するのは、図6のステップS10の場合と同様である。
 ステップS50に続いてステップS51に進み、Webサーバ10のポータルページモジュール181は、図6のステップS11〜S17までの手順と同様の手順で各種SOAPサーバ30からポータルページに表示する情報を収集する。
 ステップS51に続いてステップS52に進み、ポータルページモジュール181は、ジョブ管理テーブル190を参照し、ポータルページの送信要求に伴って指定されたユーザIDを要求ユーザIDとする依頼中ジョブを検索する。例えば、ユーザIDが「ABC」である場合は、図15のジョブ管理テーブル190の一行目のレコード、即ちプリンタサーバ30aに対する印刷要求に関するレコードや、二行目のレコード等が取り出される。
 ステップS51、S52と並行して別スレッドにおいてステップS53が実行される。ステップS53において、ポータルページモジュール181はジョブ管理テーブル190から取り出した依頼中ジョブの情報に基づいて、プリンタサーバ30aに対して、例えばジョブID「001」を入力情報(引数)として状態取得用メソッド(getPrintStatus)をSOAP呼び出しすることにより、ジョブIDが「001」のジョブ(以下、「ジョブ001」という。)の状態の問い合わせを行う。
 なお、ステップS52におけるジョブ管理テーブル190の参照や、ステップS53における状態取得メソッドの呼び出しについてもページ情報ファイル195の定義(図7及び図8)に基づいて行われる。すなわち、bottomブロックの表示内容定義ファイル(requestJobs.xml)(図8:記述1963)にジョブ管理テーブル195を参照して表示情報を取得すべき旨が定義されており、参照すべきジョブ管理テーブル195のパス名及び対象となるユーザのユーザID又はユーザ名が記述1964(図8)にパラメータ情報として指定されている。
 ステップS53に続いてステップS54に進み、プリンタサーバ30aは、状態取得用メソッドが呼び出されることによりその処理状態の取得が要求されたジョブ001、即ち文書データ「AAA」に係る印刷処理の状態をプリンタ50に問い合わせる。プリンタ50は保持してある文書データ「AAA」の印刷状態を取り出し、プリンタサーバ30aに対して送信する。
 ステップS54に続いてステップS55に進み、プリンタサーバ30aは、Webサーバ10に対しジョブ001の処理状態を送信する。ここで、印刷処理が完了している場合はプリンタサーバ30aは、「Complete」を状態取得用メソッドの戻り値として送信する。処理状態を完了か否かだけでなく、「印刷待ち」、「ラスタライズ中」、「待機中」、「完了」等のように細かく定義する場合は、各状態を識別する値を状態取得用メソッドの戻り値として送信するようにしてもよい。
 ステップS55に続いてステップS56に進み、ポータルページモジュール181は、状態取得用メソッドの戻り値が、ジョブ001の完了ステータスとして既にジョブ管理テーブル190に管理されている「Complete」と一致する場合は印刷処理が完了していると認識し、ジョブ001のレコードをジョブ管理テーブル190から削除する。戻り値が「Complete」でない場合は、次回にページの更新要求等があった場合に、再度プリンタサーバ30aにジョブ001の状態を問い合わせる必要があるため、ポータルページモジュール181は、ジョブ001のレコードは削除しない。
 なお、ジョブ002等、ジョブ管理テーブル190に別の処理要求が登録されている場合は、ポータルページモジュール181は、それらの処理要求に係る依頼中ジョブについてもステップS53〜S55と同様に、それぞれのサービス要求先URLで指定されるSOAPサーバに対し状態取得用メソッドを呼ぶことによって処理状態を問い合わせる。
 ステップS56に続いてステップS57に進み、ポータルページモジュール181は、ステップS51で収集した情報及びステップS55で取得した印刷処理要求の状態の情報を、ページ情報ファイル195に従ってレイアウトしたポータルページを生成する。
 ステップS57に続いてステップS58に進み、Webサーバ10は生成したポータルページをWebクライアント20に送信する。
 ステップS58に続いてステップS59に進み、Webクライアント20のWebブラウザ21は、受信したポータルページを表示する。
 図17は、ジョブ一覧が更新されたポータルページを示す図である。図17のポータルページ200のジョブ一覧領域206には、印刷処理が完了していることを表す「AAAの印刷は完了しました。」という処理状態メッセージと、他の処理についての処理状態メッセージが表示されている(「YYYはXXX中です。」)。
 なお、印刷処理が完了していなかった場合、即ち図16のステップS55においてプリンタサーバ30aから送信された戻り値が「Complete」以外だった場合は、「待機中」等のそれぞれの状態に対応した処理状態メッセージが表示される。
 また、図16のステップS53において、状態取得用メソッドの入力情報(引数情報)として、複数のジョブIDを指定できるようにしておき、他のWebクライアントからの印刷要求に対する処理状態についてもプリンタサーバ30aにまとめて問い合わせるようにしてもよい。まとめて問い合わせた処理状態はそれぞれの依頼中ジョブごとに保持しておく。その後、印刷要求に係る当該他のWebクライアントからポータルページの送信要求があった際は、Webサーバ10は、既に保持してある情報に基づいてジョブ一覧領域206を生成すればよいため、Webクライアントごとにプリンタサーバ30aに処理状態を問い合わせる必要はなくなり、Webサーバ10とプリンタサーバ30aとの通信負荷を軽減することができる。
 またジョブ管理テーブル190は、RDB等のデータベースやCSVファイル等によって実装してもよいが、XMLデータによって実装してもよい。最近では、XMLデータを取り扱う様々なソフトウェアが普及しているため、ジョブ管理テーブル190をXMLデータとして実装すれば、それを取り扱うページモジュール等の開発に対する負担を軽減することができる。
 上述したように、第一の実施形態におけるWebサーバ10によれば、Webクライアント20から印刷要求等のように非同期処理の要求を行った場合、その後にWebブラウザ21から何らかのアクセスを行うと、Webサーバ10からその非同期処理についての状態が表示されるWebページが返信されるため、Webクライアント20のユーザは、以前要求した非同期処理の状態を容易に知ることができる。
 なお、非同期処理の状態は、Webページ上ではなくメッセージボックスに表示させてもよい。この場合はポータルページ200にアクセスした場合のみならず、任意のWebページの送信要求に伴って、Webサーバ10は図16のステップS53からステップS56の処理を実行し、要求されたWebページの送信に伴って処理状態を表示するメッセージボックスをWebクライアント20に表示させればよい。
 次に、第二の実施の形態として、ジョブ一覧領域206の操作性を向上させた例について説明する。
 図18は、第二の実施の形態におけるジョブ一覧領域を示す図である。図18におけるジョブ一覧領域206は、図17のポータルページ200のうちジョブ一覧領域206のみを表示したものである。図18のジョブ一覧領域206では、チェックボタン2061をチェックすることによりチェックされた処理状態メッセージを非表示にすることができ、チェックボタン2065をチェックすることによりチェックされた処理状態メッセージに対応する依頼中ジョブのレコードをジョブ管理テーブルから削除させることができる。また、各処理状態メッセージにはリンクが張られており、例えば処理状態メッセージ2062をクリックすると文書データ「AAA」の印刷処理についての詳細情報を表示させることができる。更に、リンク2063(「全て表示」)をクリックすることにより、全ての処理状態メッセージを表示させることができる。
 図18に示されるジョブ一覧領域206のユーザインタフェースによって提供される機能を実現するために、ジョブ管理テーブル190を図19に示されるように変更する。
 図19は、第二の実施の形態におけるジョブ管理テーブルの例を示す図である。図19のジョブ管理テーブル191は第一の実施の形態におけるジョブ管理テーブル190に対し、ジョブ一覧領域206に処理状態メッセージを表示するか否かのフラグを示す「表示フラグ」と、依頼中ジョブの処理状態の詳細情報を格納するデータ項目である「詳細情報」とを追加したものである。なお、表示フラグのデフォルト値は、全て「ON」(表示する)としてもよいし、ユーザ毎に設定できるようにしても良い。
 ポータルページモジュール181が、図18に示されるジョブ一覧領域206が表示されるWebページを生成するためには、上述した図16のステップS57において、ジョブ管理テーブル191に格納されている依頼中ジョブの表示フラグを確認し、表示フラグが「ON」の依頼中ジョブについての処理状態メッセージをジョブ一覧領域206に配置し、更に各処理状態メッセージにリンクを張り、チェックボタン等を配置してポータルページを生成すれば良い。
 また、ステップS55において受信する依頼中ジョブの処理状態が完了ステータス(「Complete」)と同値であっても、後で処理状態メッセージ2062がクリックされた際に詳細情報を提示できるように、ステップS56において当該依頼中ジョブのレコードはジョブ管理テーブル191から削除しないでおく。更に、ステップS55において状態取得用メソッドの戻り値と共に、印刷処理についての詳細情報もプリンタサーバ30aから受信しておき、ジョブ管理テーブル191の詳細情報の項目に保持しておく。
 次に、第二の実施の形態におけるWebサーバ10の機能構成例について説明する。図20は、第二の実施の形態におけるWebサーバの機能構成例を示す図である。図20のWebサーバ10は図4のWebサーバ10に対し、詳細情報ページモジュール184を追加したものである。なお、図20中、図4と同一部分には同一符号を付し、その説明は省略する。
 詳細ページモジュール184は、ジョブ一覧領域206上の処理状態メッセージ2062がクリックされた際にWebブラウザ21から送信される、依頼中ジョブの詳細情報を表示するWebページ(以下、「詳細情報ページ」という。)の送信要求に応じてWebサーバプログラム101によって起動され、対象となっている依頼中ジョブの詳細情報ページを生成する。
 なお、第二の実施の形態において、Webサーバ10によるWebシステムの構成は第一の実施の形態における図1のWebシステム1と同様である。また、Webサーバ10のハードウェア構成及びソフトウェア構成もそれぞれ第一の実施の形態における図2、図3と同様であるためそれらの説明は省略する。
 以下、図20に示される機能構成を有するWebサーバ10による、処理状態メッセージを非表示にする際の処理及び詳細情報ページを表示する際の処理について説明する。
 図21は、処理状態メッセージを非表示にする際の処理を説明するためのシーケンス図である。
 ステップS70において、Webクライアント20のユーザがジョブ一覧領域206の処理状態メッセージ2062のチェックボタン2061をチェックする。
 図22は、処理状態メッセージのチェックボタンをチェックした場合のジョブ一覧領域を示す図である。図22において、処理状態メッセージ2062(「AAAの印刷は完了しました。」)のチェックボタン2061がチェックされた状態を示している。
 ステップS70に続いてステップS71に進み、Webブラウザ21はユーザからの入力に応じてポータルページの送信要求をWebサーバ10に送信する。ここでWebブラウザ21は、チェックボタン2061がチェックされている旨も送信する。ここでのユーザからの入力とは、ポータルページ200を表示している状態でページを最新の状態に更新しようとした場合、又はポータルページ上で例えばメール一覧の更新を実行すべく図10の更新ボタン207をクリックした場合等が該当する。なお、チェックボタン2065(図18)がチェックされている場合は、ステップS71においてチェックボタン2065がチェックされている旨も送信する。
 ステップS71に続いてステップS72に進み、Webサーバ10のポータルページモジュール181は、ジョブ一覧領域206においてチェックされたチェックボタン2061に対応するジョブ管理テーブル191上の依頼中ジョブの表示フラグを「OFF」(非表示)とする。なお、チェックボタン2065がチェックされていた場合は、ステップS72において依頼中ジョブのレコードが削除される。
 ステップS72に続いてステップS73に進み、ポータルページモジュール181は、ジョブ管理テーブル191において表示フラグが「ON」の依頼中ジョブに対する処理状態メッセージを表示一覧領域206の表示対象とし、ポータルページを生成する。なお、実際にはステップS73以前において、図16のステップS51からステップS56と同様の処理が実行されるが、ここでの説明は省略する。
 ステップS73に続いてステップS74に進み、Webサーバ10はWebクライアント20に生成したポータルページを送信する。
 ステップS74に続いてステップS75に進み、Webクライアント20のWebブラウザ21は受信したポータルページを表示する。
 図23は、処理状態メッセージを非表示にした場合のジョブ一覧領域の例を示す図である。図23のジョブ一覧領域206においては、図22のジョブ一覧領域206においてチェックした処理状態メッセージ2062が表示されていないのが分かる。
 なお、処理状態メッセージ2062を再び表示させたい場合は、図23のリンク2063をクリックすればよい。この場合の処理シーケンスは、図21のステップS72において、ジョブ管理テーブル191におけるWebクライアント20のユーザによる全ての依頼中ジョブの表示フラグを「ON」にすることを除き図21のステップS71からステップS75までと同様である。
 次に、ジョブ一覧領域206に処理状態メッセージが表示されている依頼中ジョブの詳細情報を表示する際の処理について説明する。図24は、詳細情報を表示する際の処理を説明するためのシーケンス図である。なお、図24の初期状態として、Webクライアント20のWebブラウザ21には、図18に示すジョブ一覧領域206が表示されていることとする。なお処理状態メッセージ2062にはWebサーバ10の詳細情報ページモジュール184へのリンクが張られており、そのリンクパラメータとして処理状態メッセージ2062に対応する依頼中ジョブのジョブIDが設定されている。
 ステップS80においてWebクライアント20のユーザが処理状態メッセージ2062をクリックすると、Webブラウザ21は処理状態メッセージ2062に対応する依頼中ジョブの詳細情報ページの送信要求を、リンクパラメータとして指定されているジョブIDと共にWebサーバ10に送信する。
 ステップS80に続いてステップS81に進み、Webサーバ10の詳細情報ページモジュール184は、詳細情報ページの送信要求のパラメータとして指定されたジョブIDに対応する依頼中ジョブの詳細情報を、図19のジョブ管理テーブル191から検索する。
 ステップS81に続いてステップS82に進み、詳細情報ページモジュール184は、ジョブ管理テーブル191から検索した詳細情報に基づいて詳細情報ページを生成し、Webクライアント20に送信する(S83)。なお、詳細情報ページの提示は一回だけでよければ対象となっている依頼中ジョブのレコードをステップS82においてジョブ管理テーブル191から削除してもよい。
 ステップS83に続いてステップS84に進み、詳細情報ページを受信したWebクライアント20のWebブラウザ21は詳細情報ページを表示する。
 図25は、詳細情報ページの例を示す図である。図25の例においては、印刷先プリンタ名、文書名、印刷枚数及び印刷サイズ等を表示しているが、詳細情報ページにおいて表示する情報は、SOAPサーバから状態取得用メソッドの戻り値として受信する詳細情報の内容や、詳細情報ページモジュール184の実装によって様々なものとすることができる。
 上述したように、第二の実施の形態におけるWebサーバ10によれば、処理状態メッセージ2061の表示が不要な場合は、ジョブ一覧表示領域206のチェックボタン2061をチェックしておけばその後ポータルページ200をWebブラウザ21に表示させた際に処理状態メッセージ2062を非表示とすることができる。また、処理状態メッセージ2061をクリックすると、依頼中ジョブの詳細情報ページが表示されるため、ユーザは、自分が要求した非同期処理の状態の詳細情報を容易に確認することができる。
 ところで、上述においては、Webクライアント20からの一つの要求に基づいて一つの非同期処理がSOAPサーバ30において実行される例について説明した。しかし、Webクライアントからの要求とSOAPサーバ30における非同期処理とは必ずしも一対一に対応していなくてもよく、一対多の関係にある場合であっても本発明を適用させることができる。
 そこで、次に、第三の実施の形態として、Webクライアント20からの一つのページ要求に基づいて、Webサーバ10が、複数のSOAPサーバ30のそれぞれに非同期処理の実行を要求する例について説明する。
 図26は、第三の実施の形態におけるWebシステムの一例の構成図である。図26のWebシステム1は、図1のWebシステム1に対し、更に文書管理サーバ30d及び30eがネットワーク40に接続されたものである。文書管理サーバ30d及び30eは、文書管理サーバ30cと同様の機能を有するSOAPサーバであり、それぞれ文書DB61及び62を有している。なお、図26中、図1と同一部分には同一符号を付し、その説明は省略する。
 図27は、第三の実施の形態におけるWebサーバの機能構成例を示す図である。図27のWebサーバ10は、図4に示される第二の実施の形態におけるWebサーバ10の機能構成例に対し、文書検索ページモジュール184が追加されたものである。なお、図20中、図4と同一部分には同一符号を付し、その説明は省略する。また、印刷要求ページモジュール182及び文書管理ページモジュール183等の図示についても省略する。
 なお、Webサーバ10のハードウェア構成及びソフトウェア構成はそれぞれ第一の実施の形態における図2、図3と同様であるためそれらの説明は省略する。
 以下、図27に示される機能構成を有するWebサーバ10が、Webクライアント20からの要求に基づいて文書管理サーバ30c、30d及び30eのそれぞれに非同期処理を依頼する際の処理について説明する。
 図28は、複数の文書管理サーバから文書データの検索を行う際の処理を説明するためのシーケンス図を示す。
 ステップS90において、Webクライアント20のWebブラウザ21は、図29に示される文書検索サービスページ400におけるユーザからの入力に基づいて、Webサーバ10に対し文書データの検索要求を送信する。
 図29は、文書検索サービスページの例を示す図である。図29の文書検索サービスページ400は、複数の文書管理サーバに対して特定の文書データの検索の実行を指示することができるWebページであり、例えば図10のポータルページ200において文書管理サービスへのリンク2021をクリックすると表示される。
 文書管理サーバ一覧403には、検索範囲にできる文書管理サーバの一覧として、図26における文書管理サーバ30c、30d、30eが表示されている。ユーザがチェックボタン404をチェックすることにより、検索範囲としたい文書管理サーバを指定し、検索文書名入力領域401に検索対象とする文書データの名前を入力して検索ボタン401をクリックすると、Webブラウザ21は、Webサーバ10に対して文書データの検索要求を送信する。なお、以下においては、文書管理サーバ30c、30d、及び30が検索範囲として指定され、文書データ「CDE」が検索対象として指定された場合について説明する。
 ステップS90に続いてステップS91に進み、Webサーバ10の文書検索ページモジュール185は、検索範囲の一つに指定された文書管理サーバ30cに対し文書データ「CDE」の検索要求を送信する。
 ステップS91に続いてステップS92に進み、文書管理サーバ30cは、検索処理を実行する前にジョブ確認情報をWebサーバ10に対して送信する。ここでのジョブ確認情報は、図13に示される第一の実施の形態におけるものと同様であり、文書管理サーバ30cに要求した処理の処理状態を文書管理サーバ30cに問い合わせるためのインタフェース情報等が含まれているものである。
 ステップS92に続いてステップS93に進み、文書管理サーバ30cは、Webサーバ10から要求された文書データ「CDE」の検索を開始する。ここで、文書管理サーバ30cは検索の完了を待たずにWebサーバ10に対して応答を返信(S92)しているため、文書データの検索処理はWebサーバ10及びWebクライアント20から見て非同期処理となっている。
 ステップS93に続いてステップS94に進み、以降ステップS99まで文書管理サーバ30d、30eに対しても同様に文書データ「CDE」の検索要求がなされ、各文書管理サーバにおいて検索処理が非同期処理として実行される。
 ステップS99に続いてステップS100に進み、文書検索ページモジュール185は、文書管理サーバ30c、30d及び30eから受信したジョブ確認情報等を図30に示されるジョブ管理テーブル192に格納する。なお、この処理は、各文書管理サーバからジョブ確認情報を受信するたびに行ってもよい。
 図30は、第三の実施の形態におけるジョブ管理テーブルの例を示す図である。図30のジョブ管理テーブル192は、図19に示される第二の実施の形態におけるジョブ管理テーブル191に対し、「要求ID」という項目を追加したものである。これは、文書管理サーバ30a、30b及び30cに対する処理要求が、Webクライアント20からの同一の要求に基づくものであるか否かを識別するためのものである。
 即ち、要求IDは、Webクライアント20からの処理要求(ここでは文書データの検索要求)に対して一対一に対応し、ジョブIDは、複数のSOAPサーバに対する非同期処理の要求のそれぞれと一対一に対応している。Webクライアント20からの同一の要求に基づいて発生した複数のSOAPサーバに対する非同期処理に係る依頼中ジョブに対して共通の要求IDを割り当てることで、Webサーバ10は、後述するように、Webクライアント20からの同一の要求に基づいて実行される複数のSOAPサーバにおける処理の状態を一つの情報に統合してWebクライアント20に提示することができる。
 ジョブ管理テーブル192においては、文書管理サーバ30a、30b及び30cに対する依頼中ジョブについて同一の要求ID「1」が割り当てられている。但し、ジョブIDは、「001」、「002」、「003」とそれぞれについて異なり、各依頼中ジョブを識別できるようになっている。
 ステップS100に続いてステップS101に進み、文書検索ページモジュール185は、「文書データCDEの検索を受け付けました。」等のメッセージが表示されるWebページを生成し、当該WebページをWebクライアント20に送信する(S102)。
 ステップS102に続いてステップS103に進み、Webクライアント10のWebブラウザ21は、受信したWebページを表示する。
 次に、Webクライアント20のユーザが、要求した文書データ検索処理の状態について、即ち依頼中ジョブの状態について確認する際の処理について説明する。図31は、文書データ検索処理の状態の問い合わせ処理を説明するためのシーケンス図である。
 ステップS110において、Webクライアント20のWebブラウザ21は、ユーザからの入力に応じてポータルページの送信要求をWebサーバ10に送信する。ユーザからの入力としては、第一の実施の形態における図16のステップS50におけるものと同様のものが挙げられる。即ち、文書管理ページ210から改めてポータルページ200を表示させようとした場合、Webブラウザ21を再起動しポータルページ200を表示させようとした場合、ポータルページ200を表示している状態でページを最新の状態に更新しようとした場合、又はポータルページ上で例えばメール一覧の更新を実行すべく図10の更新ボタン207をクリックした場合等である。
 ステップS110に続いてステップS111に進み、Webサーバ10のポータルページモジュール181は、第一の実施の形態における図6のステップS11〜S17までの手順と同様の手順でポータルページに表示する情報を収集する。
 ステップS111に続いてステップS112に進み、ポータルページモジュール181はジョブ管理テーブル192を参照し、ポータルページの送信要求に伴って指定されたユーザIDを要求ユーザIDとする依頼中ジョブを検索する。例えばユーザIDが「ABC」である場合は、図30のジョブ管理テーブル192の一行目から三行目のレコード、即ち文書管理サーバ30a、30b及び30cに対する文書データ検索処理に関するレコードが取り出される。
 ステップS112に続いてステップS113に進み、ポータルページモジュール181はジョブ管理テーブル192から取り出した依頼中ジョブの情報に基づいて、文書管理サーバ30cに対してジョブIDを入力情報(引数)として状態取得用メソッド(getSearchStatus)のSOAP呼び出しを実行することにより検索状態の問い合わせを行う。
 ステップS113に続いてステップS114に進み、文書管理サーバ30cは指定されたジョブIDに対応する検索処理、即ち文書データ「CDE」の検索処理の状態を確認する。
 ステップS114に続いてステップS115に進み、文書管理サーバ30cは、Webサーバ10に対する応答として検索処理の状態とその詳細情報を送信する(S115)。ここで、検索処理の状態は、検索処理が完了している場合は「Complete」を送信する。完了していない場合は、それ以外の値を送信する。なお、第二の実施の形態において説明した詳細情報の表示機能を実装しない場合は、文書管理サーバ30cは詳細情報については送信する必要はない。
 ステップS115に続いてステップS116に進み、以降ステップS121まで、文書管理サーバ30d及び30eに対しても同様に文書データ「CDE」の検索処理の状態の問い合わせがなされる。
 ステップS121に続いてステップS122に進み、ポータルページモジュール181は、各文書管理サーバから状態取得用メソッドの戻り値として受信した詳細情報をジョブ管理テーブル192に登録する。またポータルページモジュール181は、処理状態が完了ステータスである「Complete」と一致する文書管理サーバについては検索処理が完了したことを認識する。なお、第二の実施の形態において説明した詳細情報の表示機能を実装しない場合は、処理が完了したことを認識した時点でその依頼中ジョブのレコードをジョブ管理テーブル192から削除してもよい。
 ステップS122に続いてステップS123に進み、ポータルページモジュール181は、ポータルページを生成する。ここでポータルページモジュール181は、文書管理サーバ30c、30d、30eに依頼中のジョブの要求IDが同じことから、これらの依頼中ジョブは、Webクライアント10からの同一の要求に対するものであることを判断し、これらに対する処理状態が一つの情報としてポータルページのジョブ一覧領域に表示されるように処理状態メッセージを生成する。即ち、各文書管理サーバにおける処理のそれぞれについて別個に「完了」、「検索中」等の処理状態メッセージを生成するのではなく、3つの文書検索サーバのうち1つの文書検索サーバでの検索が完了しているのであれば「文書データCDE検索継続中(1/3完了)」というように統合されたメッセージを生成する。また、第二の実施の形態において説明した詳細情報の表示機能を実装する場合は、ポータルページモジュール181は、処理状態メッセージに詳細情報表示モジュール184へのリンクをはる。更に、処理状態メッセージの非表示の機能を実装する場合は、各処理状態メッセージの先頭に非表示の指定を行うチェックボタンを配置してポータルページを生成する。
 ステップS123に続いてステップS124に進み、Webサーバ10は、Webクライアント20に対し生成したポータルページを送信する。
 ステップS124に続いてステップS125に進み、Webクライアント20のWebブラウザ21は、受信したポータルページを表示する。
 図32は、検索処理状態が表示されたジョブ一覧領域の例を示す図である。図32のジョブ一覧領域206には、3つの文書管理サーバに対する文書データの検索要求に対する処理状態メッセージとして、統合された一つの処理状態メッセージ2063が「文書データCDE検索継続中(1/3完了)」と表示されている。なお、この処理状態メッセージ2063を非表示にしたい場合は、チェックボタン2064をチェックしておけばよく、詳細情報について確認したい場合は処理状態メッセージ2063をクリックすれば詳細情報ページが表示されるのは第二の実施の形態において説明した通りである。
 上述したように、第三の実施の形態におけるWebサーバ10によれば、Webクライアント10からの一つの要求に対して、複数のSOAPサーバに非同期処理の実行を要求するため、複数の非同期処理を一つのサービスとしてWebクライアント20に提供することができる。また、複数の依頼中ジョブの状態を統合して表示するようにジョブ一覧領域206を生成するため、複数の非同期処理の状態をWebクライアント20のユーザに分かりやすい形式で提示することができる。
 次に、Webサーバ10とSOAPサーバ30とのインタラクションという観点から種々のバリエーションについて説明する。先ず、他の例との比較を明確にするために上述した実施の形態におけるインタラクションについて第一のインタラクションとして簡単に説明する。図33は、WebサーバとSOAPサーバとの第一のインタラクションの例を説明するための図である。
 図33において、Webサーバ10は、Webクライアント20から非同期処理に係る要求を受信すると(S101)、要求に対応したSOAPサーバ301に非同期処理の実行を要求する(S102)。SOAPサーバ301は、要求された処理の完了を待たずにジョブ確認情報31をWebサーバに送信する(S103)。Webサーバ10は、ジョブ管理テーブル190に受信したジョブ確認情報31を登録し、Webクライアント20に応答(HTML)を送信する(S104)。
 Webサーバ10は、Webクライアント20から処理状態を表示するWebページの送信要求を受信すると(S105)、ジョブ管理テーブル190に登録されているジョブ確認情報31に従って、SOAPサーバ301に対して依頼中ジョブの処理状態を問い合わせる(S106)。SOAPサーバ301は、指定されたジョブの処理状態をWebサーバ10に送信する(S107)。Webサーバ10は処理状態の情報を含んだWebページをWebクライアント20に送信する(S108)。
 次に、処理の要求先のSOAPサーバと、処理状態の問い合わせ先のSOAPサーバが異なる場合のWebサーバとSOAPサーバとのインタラクションについて説明する。図34は、WebサーバとSOAPサーバとの第二のインタラクションの例を説明するための図である。図34中、図33と同一部分には同一符号を付し、その説明は省略する。
 図34において、Webサーバ10は、Webクライアント20から非同期処理に係る要求を受信すると(S201)、対応するSOAPサーバ301に非同期処理の実行を要求する(S202)。SOAPサーバ301は、要求された処理の引継ぎをSOAPサーバ302に依頼し(S203)、ジョブ確認情報をWebサーバ10に送信する(S204)。但し、要求された処理はSOAPサーバ302に引き継がれており、SOAPサーバ301は、その処理状態を直接知ることができないため、SOAPサーバ301は、ジョブ確認情報に処理状態の問い合わせ先を示すSOAPサーバ302のURLを含めて送信する。
 図35は、第二のインタラクションにおけるジョブ確認情報の例を示す図である。図35のジョブ確認情報32は、図13のジョブ確認情報31に処理状態の問い合わせ先のURLが格納される「状態問い合わせ先」を追加したものである。
 Webサーバ10は、ジョブ管理テーブル190に受信したジョブ確認情報32を登録し、Webクライアント20にWebページを送信する(S205)。ここで、Webサーバ10は、ジョブ管理テーブル190の「サービス要求先URL」には、SOAPサーバ301のURLではなく、ジョブ確認情報31の「状態問い合わせ先」に格納されているSOAPサーバ302のURLを登録する。
 Webサーバ10は、Webクライアント20から処理状態を表示するWebページの送信要求を受信すると(S206)、ジョブ管理テーブル190に登録されている「サービス要求先URL」等に従って、SOAPサーバ302に対して依頼中ジョブの処理状態を問い合わせる(S207)。SOAPサーバ302は、指定されたジョブの処理状態をWebサーバ10に送信する(S208)。Webサーバ10は処理状態の情報を含んだWebページをWebクライアント20に送信する(S209)。
 上述したように、第二のインタラクションによれば、Webサーバ10は、SOAPサーバ301から送信されるジョブ確認情報32の状態問い合わせ先の指定に基づいて依頼中ジョブの状態の問い合わせ先を決定するため、非同期処理がSOAPサーバ301と異なるSOAPサーバに引き継がれた場合でも、処理を引き継いだSOAPサーバにその処理状態を問い合わせることができる。
 次に、処理状態が特定のSOAPサーバに集約される場合のWebサーバとSOAPサーバとのインタラクションについて説明する。図36は、WebサーバとSOAPサーバとの第三のインタラクションの例を説明するための図である。図36中、図33と同一部分には同一符号を付し、その説明は省略する。
 図36において、Webサーバ10は、Webクライアント20から非同期処理に係る要求を受信すると(S301)、対応するSOAPサーバ301に非同期処理の実行を要求する(S302)。SOAPサーバ301は要求された処理の完了を待たずに図13のジョブ確認情報31をWebサーバに送信する(S303)。Webサーバ10は、ジョブ管理テーブル190に受信したジョブ確認情報31を登録し、Webクライアント20にWebページを送信する(S304)。
 この間、SOAPサーバ301は、要求された処理が完了したらその旨をそのジョブIDと共にSOAPサーバ303に通知する(S305)。
 Webサーバ10は、Webクライアント20から処理状態を表示するWebページの送信要求を受信すると(S306)、ジョブ管理テーブル190に登録されているジョブ確認情報3131に従って、SOAPサーバ303に対して依頼中ジョブの処理状態を問い合わせる(S307)。ここで、Webサーバ10がSOAPサーバ303に対して処理状態の問い合わせができるのは、SOAPサーバ301やSOAPサーバ302に依頼した処理の状態は、固定的にSOAPサーバ303に送信されるからである。即ち、Webサーバ10における処理状態の問い合わせ処理において、問い合わせ先を静的にSOAPサーバ303と決めておくことができるからである。
 SOAPサーバ303は、SOAPサーバ301から通知された依頼中ジョブの処理状態をWebサーバ10に送信する(S308)。Webサーバ10は処理状態の情報を含んだWebページをWebクライアント20に送信する(S309)。
 上述したように、第三のインタラクションによれば、処理の状態の問い合わせ先がSOAPサーバ303に固定されており、Webサーバ10はSOAPサーバ301及び302には処理状態を問い合わせないため、Webサーバ10とSOAPサーバ301等との通信負荷を低減することができる。従って、Webサーバ10とSOAPサーバ303間のみの通信容量を高めることで、容易に処理状態の問い合わせのレスポンスを向上させることができる。
 次に、SOAPサーバが、PUSH型で処理状態を通知する場合のWebサーバとSOAPサーバとのインタラクションの例について説明する。図37は、第4のインタラクションの例におけるWebサーバの機能構成例を示す図である。図37のWebサーバ10は、図4のWebサーバ10に対し処理状態受信手段186が追加されたものである。なお、図37中、図4と同一部分には同一符号を付し、その説明は省略する。
 処理状態受信手段186は、SOAPサーバ301から処理状態を受信するためのものであり、通常は受信待ち状態で待機している。ここでは処理状態受信手段186はSOAPサーバとして実装されており、処理状態受信用メソッド(putStatus)を有している。
 図38は、WebサーバとSOAPサーバとの第四のインタラクションの例を説明するための図である。図38中、図33と同一部分には同一符号を付し、その説明は省略する。
 図38において、Webサーバ10は、Webクライアント20から非同期処理に係る要求を受信すると(S401)、対応するSOAPサーバ301に非同期処理の実行を要求する(S402)。ここで、Webサーバ10は、後でSOAPサーバ301から処理状態を通知してもらうために、処理状態通知用のインタフェース情報も処理の実行要求に伴って送信する。
 処理要求を受信したSOAPサーバ301は、後でWebサーバ10に対して処理状態の通知を行えるように、Webサーバ10から受信した処理状態通知用のインタフェース情報を、図39に示される処理状態通知情報管理テーブル34に登録する(S403)。
 図39は、処理状態通知情報管理テーブルの例を示す図である。処理状態通知情報管理テーブル34は、要求された処理を識別するための「ジョブID」と、ジョブの要求元であり、処理の状態の通知先であるURLが格納される「状態通知先のURL」と、Webサーバ10に処理状態を通知するめにWebサーバ10が備えるインタフェース情報である「状態通知メソッド」とをデータ項目として有している。なお、「ジョブID」、「状態通知先のURL」及び「状態通知メソッド」は、Webサーバ10から処理要求と共に送信されたものが登録される。
 更にSOAPサーバ301は、要求された処理の完了を待たずに図40に示される形式によるジョブ確認情報33をWebサーバ10に送信する(S404)。
 図40は、第四のインタラクションにおけるジョブ確認情報の例を示す図である。図40のジョブ確認情報34は、図13のジョブ確認情報31から「状態取得用メソッド」が削除されており、「完了ステータス」のみをデータ項目として有している。「状態取得用メソッド」が不要なのは、後述するように、第四のインタラクションにおいてはWebサーバ10がSOAPサーバ301に対して処理状態を問い合わせる必要がないからである。
 ジョブ確認情報34を受信したWebサーバ10は、受信した情報を図41に示されるジョブ管理テーブル193に登録し、Webクライアント20にWebページを送信する(S405)。
 図41は、第四のインタラクションにおけるジョブ管理テーブルの例を示す図である。ジョブ管理テーブル193は、図15のジョブ管理テーブル190から「サービス要求先URL」と「状態取得用メソッド」とのデータ項目が削除され、ジョブの処理状態の情報が格納される「状態情報」が追加されたものである。ステップS405では、「ジョブID」、「要求ユーザID」、「完了ステータス」が登録される。なお「完了ステータス」は、SOAPサーバ30からジョブ確認情報34として送信されたものが登録される。
 SOAPサーバ301は要求された処理の状態が変化すると、能動的にWebサーバ10にジョブIDにより特定される処理の処理状態を送信する(PUSH型)(S406)。ここで能動的とは、Webサーバ10からの要求をトリガとするのではなく、SOAPサーバ301自身が処理状態の変化を検知して、Webサーバ10に通知するという意味である。Webサーバ10の処理状態受信手段186は、SOAPサーバから送信された処理状態を受信し、その状態をジョブ管理テーブル193の「状態情報」に登録する。
 Webサーバ10は、Webクライアント20から処理状態を表示するWebページの送信要求を受信すると(S407)、ジョブ管理テーブル195の「状態情報」に基づいて、要求された処理の状態を含むWebページを生成し、Webクライアント20に送信する(S408)。
 なお、第四のインタラクションを実現するには、ステップS405においてSOAPサーバ301がWebサーバ10に対してSOAP呼び出しをかけるため、Webサーバ10にはSOAPサーバとして機能するために必要なソフトウェアをインストールしておく必要があり、SOAPサーバ301にはSOAPクライアントとして機能するために必要なソフトウェアをインストールしておく必要がある。
 上述したように、第四のインタラクションによれば、非同期処理の状態が変化したときのみSOAPサーバ301からWebサーバ10への通信が行われるため、Webサーバ10とSOAPサーバ301との通信負荷を軽減することができる。
 ところで、近年においては、ある特定の機能に特化した組み込み機器においてもWebサーバとして機能するもの等、コンピュータと同等の情報処理を実行することができるものが提供されている。例えば、融合機、又は複合機と呼ばれる、プリンタ、コピー、又はファクシミリ等の複合サービスに固有の処理を行う複数のアプリケーションを有する画像処理装置もかかる機器に該当する。最近の画像処理装置には、Webサーバとしての機能を有し、更に、コピーした情報又はFAX受信した情報等を文書データとして蓄積する文書管理機能を有しているものもある。
 したがって、このような画像処理装置を用いて、本実施の形態におけるWebシステム1を構成しても本発明の効果を同様に得ることができる。
 例えば、図42は、Webサーバに画像処理装置を用いて構成したWebシステムの構成例を示す図である。図42中、図1と同一部分には同一符号を付し、その説明は省略する。図42と図1とを比較すると、図42においては、Webサーバ10の代わりに画像処理装置410がWebシステム1の構成要素となっている。
 画像処理装置410には、Webサーバ10に実装されていた機能(Webサーバ機能411)、すなわち、Webサーバプログラム101及び各種ページモジュール等が組み込まれている。したがって、画像処理装置410は、Webサーバ10として機能することになる。
 また、図43は、各SOAPサーバに画像処理装置を用いて構成したWebシステムの構成例を示す図である。図43中、図1と同一部分には同一符号を付し、その説明は省略する。図43と図1とを比較すると、図43においては、プリンタサーバ30a、メールサーバ30b、文書管理サーバ30cの代わりに画像処理装置430a、画像処理装置430b、画像処理装置430cがWebシステム1の構成要素となっている。
 画像処理装置430a、430b、430cには、それぞれプリンタサーバ30a、メールサーバ30b、文書管理サーバ30cに実装されていたものと同様の印刷サービス431a、メールサービス431b、文書管理サービス431cが組み込まれている。したがって、画像処理装置430aは、プリンタサーバ30aとして、画像処理装置430bは、メールサーバ30bとして、画像処理装置430cは、文書管理サーバ30cとしてそれぞれ機能することになる。
 また、図44は、Webサーバ及び各SOAPサーバに画像処理装置を用いて構成したWebシステムの構成例を示す図である。図44中、図1、図42又は図43と同一部分には同一符号を付し、その説明は省略する。図44において、画像処理装置410、430a、430b、430cは、それぞれWebサーバ10、プリンタサーバ30a、メールサーバ30b、文書管理サーバ30cとして機能することになる。
 また、図45は、Webサーバ及び各SOAPサーバによる機能を一台の画像処理装置によって構成したWebシステムの構成例を示す図である。図42中、図1と同一部分には同一符号を付し、その説明は省略する。
 図45における画像処理装置440には、Webサーバプログラム441、印刷サービス442、メールサービス443、文書管理サービス444及びWebアプリ445等が組み込まれている。Webサーバプログラム441は、Webサーバ10におけるWebサーバプログラム101と同様のプログラムである。印刷サービス442、メールサービス443、文書管理サービス444は、それぞれプリンタサーバ30a、メールサーバ30b、文書管理サーバ30cにおいてWebサービスとして提供されているサービスと同様のものである。Webアプリ445は、Webサーバ10における各種ページモジュールに相当する機能である。このように、一台の画像処理装置440によって、Webサーバ10、プリンタサーバ30a、メールサーバ30b及び文書管理サーバ30cにおける機能を実現してもよい。
 以上、本発明の好ましい実施例について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
第一の形態におけるWebシステムの一例の構成図である。 Webサーバのハードウェア構成図である。 Webサーバのソフトウェア構成例を示す図である。 第一の形態におけるWebサーバの機能構成例を示す図である。 本発明の実施の形態におけるSOAPサーバの機能構成例を示す図である。 ポータルページを表示する際の処理を説明するためのシーケンス図である。 ページ情報ファイルの定義例を示す図である。 ページ情報ファイルの定義例を示す図である。 ポータルページ上における各ブロックの配置位置を説明するための図である。 ポータルページの例を示す図である。 印刷要求の際の処理を説明するためのシーケンス図である。 文書管理ページの例を示す図である。 ジョブ確認情報の例を示す図である。 印刷要求に対する応答としてプリンタサーバより送信されるSOAPメッセージの例を示す図である。 ジョブ管理テーブルの例を示す図である。 依頼中ジョブの状態の問い合わせ処理を説明するためのシーケンス図である。 ジョブ一覧が更新されたポータルページの例を示す図である。 第二の実施の形態におけるジョブ一覧領域を示す図である。 第二の実施の形態におけるジョブ管理テーブルの例を示す図である。 第二の実施の形態におけるWebサーバの機能構成例を示す図である。 処理状態メッセージを非表示にする際の処理を説明するためのシーケンス図である。 処理状態メッセージのチェックボタンをチェックした場合のジョブ一覧領域を示す図である。 処理状態メッセージを非表示にした場合のジョブ一覧領域の例を示す図である。 詳細情報を表示する際の処理を説明するためのシーケンス図である。 詳細情報ページの例を示す図である。 第三の実施の形態におけるWebシステムの一例の構成図である。 第三の実施の形態におけるWebサーバの機能構成例を示す図である。 複数の文書管理サーバから文書データの検索を行う際の処理を説明するためのシーケンス図である。 文書検索サービスページの例を示す図である。 第三の実施の形態におけるジョブ管理テーブルの例を示す図である。 文書データ検索処理の状態の問い合わせ処理を説明するためのシーケンス図である。 検索処理状態が表示されたジョブ一覧領域の例を示す図である。 WebサーバとSOAPサーバとの第一のインタラクションの例を説明するための図である。 WebサーバとSOAPサーバとの第二のインタラクションの例を説明するための図である。 第二のインタラクションにおけるジョブ確認情報の例を示す図である。 WebサーバとSOAPサーバとの第三のインタラクションの例を説明するための図である。 第四のインタラクションにおけるWebサーバの機能構成例を示す図である。 WebサーバとSOAPサーバとの第四のインタラクションの例を説明するための図である。 処理状態通知情報管理テーブルの例を示す図である。 第四のインタラクションにおけるジョブ確認情報の例を示す図である。 第四のインタラクションにおけるジョブ管理テーブルの例を示す図である。 Webサーバに画像処理装置を用いて構成したWebシステムの構成例を示す図である。 各SOAPサーバに画像処理装置を用いて構成したWebシステムの構成例を示す図である。 Webサーバ及び各SOAPサーバに画像処理装置を用いて構成したWebシステムの構成例を示す図である。 Webサーバ及び各SOAPサーバによる機能を一台の画像処理装置によって構成したWebシステムの構成例を示す図である。
符号の説明
 10   Webサーバ
 11   CPU
 12   ROM
 13   RAM
 14   補助記憶装置
 15   ネットワークI/F
 16   ドライブ装置
 17   記録媒体
 20   Webクライアント
 21   Webブラウザ
 30、301、302、303   SOAPサーバ
 30a  プリンタサーバ
 30b  メールサーバ
 30c、30d、30e  文書管理サーバ
 31   SOAP処理部
 32   処理状態取得方法提供手段32
 33   サービス提供手段
 34   ジョブ確認情報
 40   ネットワーク
 50   プリンタ
 60、61、62   文書DB
 101  Webサーバプログラム
 102  ランタイム
 103  モジュールコンテナ
 104  XMLパーサ
 105  XSLプロセッサ
 106  クライアントプログラム
 107  プロトコルキット
 108  サーバサイドプログラムモジュール
 181  ポータルページモジュール
 182  印刷要求ページモジュール
 183  文書管理ページモジュール
 184  詳細情報ページモジュール
 185  文書検索ページモジュール
 186  処理状態受信手段
 190、191、192、193  ジョブ管理テーブル
 195  ページ情報
 410、430a、430b、430c  画像処理装置
 431a、442  印刷サービス
 431b、443  メールサービス
 431c、444  文書管理サービス
 441  Webサーバプログラム
 445  Webアプリ

Claims (55)

  1. ネットワークを介して接続されるクライアント装置からのサービス提供要求に係る処理を所定のサービスを提供するサービス提供装置に実行させる情報処理装置であって、
     前記サービス提供装置に実行させた前記サービス提供要求に係る処理の応答を、該処理の完了に対して非同期的に前記クライアント装置に行う応答手段と、
     前記サービス提供要求に係る処理の処理状態を前記サービス提供装置より取得する処理状態取得手段と、
     前記クライアント装置からのWebページ表示要求に対し、前記処理状態取得手段により取得された前記処理状態を表示するWebページを生成し、該Webページを前記クライアント装置に送信するWebページ生成手段とを有することを特徴とする情報処理装置。
  2. 前記情報処理装置は、前記サービス提供要求に係る処理の識別情報を管理する処理情報管理手段を更に有し、
     前記応答手段は、前記識別情報を前記処理情報管理手段に登録し、
     前記処理状態取得手段は、前記処理情報管理手段に前記識別情報が登録されている処理の処理状態を前記サービス提供装置より取得することを特徴とする請求項1記載の情報処理装置。
  3. 前記処理情報管理手段は、前記サービス提供要求に係る処理を実行させているサービス提供装置の位置情報及び前記サービス提供装置に実行させている処理の状態の取得方法に関する情報を更に管理することを特徴とする請求項2記載の情報処理装置。
  4. 前記処理状態取得手段は、前記クライアント装置からのWebページ表示要求に応じ、前記処理情報管理手段に管理されている情報に基づいて前記サービス提供装置に実行させている処理の状態を前記サービス提供装置より取得することを特徴とする請求項3記載の情報処理装置。
  5. 前記応答手段は、前記サービス提供装置に前記サービス提供要求に係る処理の実行要求を送信することにより、前記サービス提供装置に前記サービス提供要求に係る処理を実行させることを特徴とする請求項1乃至4いずれか一項記載の情報処理装置。
  6. 前記応答手段は、前記サービス提供要求に係る処理の実行要求に対する応答として、前記サービス提供要求に係る処理の処理状態の取得方法に関する情報を前記サービス提供装置より取得し、
     前記処理状態取得手段は、前記応答手段により取得された前記サービス提供要求に係る処理の処理状態の取得方法に関する情報に基づいて前記処理状態を取得することを特徴とする請求項5記載の情報処理装置。
  7. 前記処理状態取得手段は、前記処理情報管理手段に前記応答手段により取得された前記処理状態の取得方法に関する情報が複数管理されている場合は、複数の前記処理状態の取得方法に関する情報のそれぞれに基づいて複数の前記処理状態を取得することを特徴とする請求項6記載の情報処理装置。
  8. 前記処理状態取得手段は、前記サービス提供装置に実行させた処理の処理状態を提供する処理状態提供装置に前記処理状態の送信要求を送信し、
     前記送信要求に応じて前記処理状態提供装置から送信された前記処理状態を受信することにより、前記処理状態を取得することを特徴とする請求項5記載の情報処理装置。
  9. 前記情報処理装置は、前記サービス提供装置から前記処理状態を受信する処理状態受信手段を更に有し、
     前記Webページ生成手段は、前記処理状態受信手段が受信した前記処理状態を表示するWebページを生成することを特徴とする請求項5記載の情報処理装置。
  10. 前記処理状態取得手段は、前記処理状態の送信要求を前記サービス提供装置に送信し、
     前記送信要求に応じて前記サービス提供装置から送信された前記処理状態を受信することにより、前記処理状態を取得することを特徴とする請求項6記載の情報処理装置。
  11. 前記処理状態の取得方法に関する情報には前記処理状態を提供する処理状態提供装置の位置情報が含まれており、
     前記処理状態取得手段は、前記位置情報によって特定される前記処理状態提供装置に前記処理状態の送信要求を送信し、
     前記送信要求に応じて前記処理状態提供装置から送信された前記処理状態を受信することにより、前記処理状態を取得することを特徴とする請求項6記載の情報処理装置。
  12. 前記応答手段は、前記クライアント装置からの一つのサービス提供要求に基づいて複数の処理を前記サービス提供装置に実行させ、前記複数の処理のそれぞれの完了を待たずに前記クライアント装置への応答を行い、
     前記処理状態取得手段は、前記複数の処理のそれぞれの処理状態を取得し、
     前記Webページ生成手段は、前記処理状態取得手段が取得した複数の前記処理状態を表示するWebページを生成することを特徴とする請求項1乃至11いずれか一項記載の情報処理装置。
  13. 前記処理情報管理手段は、前記複数の処理のそれぞれについての処理を実行させているサービス提供装置の位置情報及び前記サービス提供装置に実行させている処理の処理状態の取得方法に関する情報と共に、前記クライアント装置からの同一のサービス提供要求基づいて実行される複数の処理に対して共通の値が割り当てられた要求識別情報を管理することを特徴とする請求項12記載の情報処理装置。
  14. 前記処理状態取得手段は、前記要求識別情報に基づいて前記クライアント装置からの同一のサービス提供要求に基づく処理を判断することにより、同一のサービス提供要求に基づく複数の処理のそれぞれの処理状態を前記処理情報管理手段に管理されている情報に基づいて取得することを特徴とする請求項13記載の情報処理装置。
  15. 前記応答手段は、前記複数の処理のそれぞれを複数の前記サービス提供装置のそれぞれに実行させることを特徴とする請求項12乃至14いずれか一項記載の情報処理装置。
  16. 前記Webページ生成手段は、前記処理状態取得手段が取得した同一のサービス提供要求に基づく処理の処理状態を統合して表示するWebページを生成することを特徴とする請求項12乃至15いずれか一項記載の情報処理装置。
  17. 前記Webページ生成手段は、前記クライアント装置からの要求に基づいて前記処理状態を非表示としたWebページを生成することを特徴とする請求項1乃至16いずれか一項記載の情報処理装置。
  18. 前記情報処理装置は、前記クライアント装置からの要求に基づいて前記処理状態の詳細情報を表示するWebページを生成する詳細情報ページ生成手段を更に有することを特徴とする請求項1乃至17いずれか一項記載の情報処理装置。
  19. 前記Webページ生成手段は、前記クライアント装置からの要求に基づいて複数の前記サービス提供装置より所定の情報を取得し、取得したそれぞれの情報を複数に分割されたそれぞれの領域に表示するWebページを生成することを特徴とする請求項1乃至18いずれか一項記載の情報処理装置。
  20. 前記情報処理装置は、前記Webページを複数に分割した領域ごとの表示内容が拡張マークアップ言語により定義された構造体をユーザごとに管理するページ情報管理手段を更に有し、
     前記Webページ生成手段は、前記構造体に基づいて前記Webページを生成することを特徴とする請求項19記載の情報処理装置。
  21. 前記Webページ生成手段は、複数の領域に分割された一の領域に前記サービス提供要求に係る処理の処理状態が表示されるように前記Webページを生成することを特徴とする請求項19又は20記載の情報処理装置。
  22. ネットワークを介して接続されるクライアント装置からのサービス提供要求に係る処理を所定のサービスを提供するサービス提供装置に実行させる情報処理装置における情報処理方法であって、
     前記サービス提供装置に実行させた前記サービス提供要求に係る処理の応答を、該処理の完了に対して非同期的に前記クライアント装置に行う応答手順と、
     前記サービス提供要求に係る処理の処理状態を前記サービス提供装置より取得する処理状態取得手順と、
     前記クライアント装置からのWebページ表示要求に対し、前記処理状態取得手順において取得された前記処理状態を表示するWebページを生成し、該Webページを前記クライアント装置に送信するWebページ生成手順とを有することを特徴とする情報処理方法。
  23. 、 前記応答手順は、前記サービス提供要求に係る処理の識別情報を管理する処理情報管理手段に前記識別情報を登録し、
     前記処理状態取得手順は、前記処理情報管理手段に前記識別情報が登録されている処理の処理状態を前記サービス提供装置より取得することを特徴とする請求項22記載の情報処理方法。
  24. 前記処理情報管理手段は、前記サービス提供要求に係る処理を実行させているサービス提供装置の位置情報及び前記サービス提供装置に実行させている処理の状態の取得方法に関する情報を更に管理することを特徴とする請求項23記載の情報処理方法。
  25. 前記処理状態取得手順は、前記クライアント装置からのWebページ表示要求に応じ、前記処理情報管理手段に管理されている情報に基づいて前記サービス提供装置に実行させている処理の状態を前記サービス提供装置より取得することを特徴とする請求項24記載の情報処理方法。
  26. 前記応答手順は、前記サービス提供装置に前記サービス提供要求に係る処理の実行要求を送信することにより、前記サービス提供装置に前記サービス提供要求に係る処理を実行させることを特徴とする請求項22乃至25いずれか一項記載の情報処理方法。
  27. 前記応答手順は、前記サービス提供要求に係る処理の実行要求に対する応答として、前記サービス提供要求に係る処理の処理状態の取得方法に関する情報を前記サービス提供装置より取得し、
     前記処理状態取得手順は、前記応答手順により取得された前記サービス提供要求に係る処理の処理状態の取得方法に関する情報に基づいて前記処理状態を取得することを特徴とする請求項26記載の情報処理方法。
  28. 前記処理状態取得手順は、前記処理情報管理手段に前記応答手順において取得された前記処理状態の取得方法に関する情報が複数管理されている場合は、複数の前記処理状態の取得方法に関する情報のそれぞれに基づいて複数の前記処理状態を取得することを特徴とする請求項27記載の情報処理方法。
  29. 前記処理状態取得手順は、前記サービス提供装置に実行させた処理の処理状態を提供する処理状態提供装置に前記処理状態の送信要求を送信し、
     前記送信要求に応じて前記処理状態提供装置から送信された前記処理状態を受信することにより、前記処理状態を取得することを特徴とする請求項26記載の情報処理方法。
  30. 前記情報処理方法は、前記サービス提供装置から前記処理状態を受信する処理状態受信手順を更に有し、
     前記Webページ生成手順は、前記処理状態受信手順において受信された前記処理状態を表示するWebページを生成することを特徴とする請求項26記載の情報処理方法。
  31. 前記処理状態取得手順は、前記処理状態の送信要求を前記サービス提供装置に送信し、
     前記送信要求に応じて前記サービス提供装置から送信された前記処理状態を受信することにより、前記処理状態を取得することを特徴とする請求項27記載の情報処理方法。
  32. 前記処理状態の取得方法に関する情報には前記処理状態を提供する処理状態提供装置の位置情報が含まれており、
     前記処理状態取得手順は、前記位置情報によって特定される前記処理状態提供装置に前記処理状態の送信要求を送信し、
     前記送信要求に応じて前記処理状態提供装置から送信された前記処理状態を受信することにより、前記処理状態を取得することを特徴とする請求項27記載の情報処理方法。
  33. 前記応答手順は、前記クライアント装置からの一つのサービス提供要求に基づいて複数の処理を前記サービス提供装置に実行させ、前記複数の処理のそれぞれの完了を待たずに前記クライアント装置への応答を行い、
     前記処理状態取得手順は、前記複数の処理のそれぞれの処理状態を取得し、
     前記Webページ生成手順は、前記処理状態取得手順において取得された複数の前記処理状態を表示するWebページを生成することを特徴とする請求項22乃至32いずれか一項記載の情報処理方法。
  34. 前記処理情報管理手段は、前記複数の処理のそれぞれについての処理を実行させているサービス提供装置の位置情報及び前記サービス提供装置に実行させている処理の処理状態の取得方法に関する情報と共に、前記クライアント装置からの同一のサービス提供要求基づいて実行される複数の処理に対して共通の値が割り当てられた要求識別情報を管理することを特徴とする請求項33記載の情報処理方法。
  35. 前記処理状態取得手順は、前記要求識別情報に基づいて前記クライアント装置からの同一のサービス提供要求に基づく処理を判断することにより、同一のサービス提供要求に基づく複数の処理のそれぞれの処理状態を前記処理情報管理手段に管理されている情報に基づいて取得することを特徴とする請求項34記載の情報処理方法。
  36. 前記応答手順は、前記複数の処理のそれぞれを複数の前記サービス提供装置のそれぞれに実行させることを特徴とする請求項33乃至35いずれか一項記載の情報処理方法。
  37. 前記Webページ生成手順は、前記処理状態取得手順において取得された同一のサービス提供要求に基づく処理の処理状態を統合して表示するWebページを生成することを特徴とする請求項33乃至36いずれか一項記載の情報処理方法。
  38. 前記Webページ生成手順は、前記クライアント装置からの要求に基づいて前記処理状態を非表示としたWebページを生成することを特徴とする請求項22乃至37いずれか一項記載の情報処理方法。
  39. 前記情報処理方法は、前記クライアント装置からの要求に基づいて前記処理状態の詳細情報を表示するWebページを生成する詳細情報ページ生成手順を更に有することを特徴とする請求項22乃至38いずれか一項記載の情報処理方法。
  40. 前記Webページ生成手順は、前記クライアント装置からの要求に基づいて複数の前記サービス提供装置より所定の情報を取得し、取得したそれぞれの情報を複数に分割されたそれぞれの領域に表示するWebページを生成することを特徴とする請求項22乃至39いずれか一項記載の情報処理方法。
  41. 前記Webページ生成手順は、前記Webページを複数に分割した領域ごとの表示内容が拡張マークアップ言語により定義された構造体に基づいて前記Webページを生成することを特徴とする請求項40記載の情報処理方法。
  42. 前記Webページ生成手順は、複数の領域に分割された一の領域に前記サービス提供要求に係る処理の処理状態が表示されるように前記Webページを生成することを特徴とする請求項40又は41記載の情報処理方法。
  43. ネットワークを介して接続されるクライアント装置からのサービス提供要求に係る処理を所定のサービスを提供するサービス提供装置に実行させる情報処理装置に、
     前記サービス提供装置に実行させた前記サービス提供要求に係る処理の応答を、該処理の完了に対して非同期的に前記クライアント装置に行う応答手順と、
     前記サービス提供要求に係る処理の処理状態を前記サービス提供装置より取得する処理状態取得手順と、
     前記クライアント装置からのWebページ表示要求に対し、前記処理状態取得手順において取得された前記処理状態を表示するWebページを生成し、該Webページを前記クライアント装置に送信するWebページ生成手順とを実行させるための情報処理プログラム。
  44. 前記応答手順は、前記サービス提供装置に前記サービス提供要求に係る処理の実行要求を送信することにより、前記サービス提供装置に前記サービス提供要求に係る処理を実行させることを特徴とする請求項43記載の情報処理プログラム。
  45. 請求項43又は44記載の情報処理プログラムを記録したコンピュータ読み取り可能な記録媒体。
  46. ネットワークを介して請求項1乃至21いずれか一項記載の情報処理装置から送信されるサービス提供要求に係る処理を実行するサービス提供装置であって、
     前記情報処理装置から送信された前記サービス提供要求に係る処理が完了する前に、該処理に対する応答と共に該処理の処理状態を取得させるための処理状態取得情報を前記情報処理装置に送信する処理状態取得情報送信手段を有し、
     前記情報処理装置から前記処理状態取得情報に基づきなされた前記サービス提供要求に係る処理の処理状態の取得要求に応じ、前記処理状態を前記情報処理装置に送信することを特徴とするサービス提供装置。
  47. 前記処理状態取得情報は、当該サービス提供装置とは異なる他のサービス提供装置で実行されている前記処理の処理状態を前記情報処理装置に対して取得させるための情報であることを特徴とする請求項46記載のサービス提供装置。
  48. 前記処理状態取得情報送信手段は、前記処理状態取得情報が拡張マークアップ言語により要素として記述された構造体によって前記処理状態取得情報を送信することを特徴とする請求項46又は47記載のサービス提供装置。
  49. 前記処理状態取得情報は、前記サービス提供要求に係る処理を識別する識別情報と前記サービス提供装置が実行している処理の処理状態取得方法に関する情報とを含むことを特徴とする請求項48記載のサービス提供装置。
  50. ネットワークを介して請求項1乃至21いずれか一項記載の情報処理装置から送信されるサービス提供要求に係る処理を実行するサービス提供装置におけるサービス提供方法であって、
     前記情報処理装置から送信された前記サービス提供要求に係る処理が完了する前に、該処理に対する応答と共に該処理の処理状態を取得させるための処理状態取得情報を前記情報処理装置に送信する処理状態取得情報送信手順と、
     前記情報処理装置から前記処理状態取得情報に基づきなされた前記サービス提供要求に係る処理の処理状態の取得要求に応じ、前記処理状態を前記情報処理装置に送信する処理状態送信手順とを有することを特徴とするサービス提供方法。
  51. 前記処理状態取得情報は、当該サービス提供装置とは異なる他のサービス提供装置で実行されている前記処理の処理状態を前記情報処理装置に対して取得させるための情報であることを特徴とする請求項50記載のサービス提供方法。
  52. 前記処理状態取得情報送信手順は、前記処理状態取得情報が拡張マークアップ言語により要素として記述された構造体によって前記処理状態取得情報を送信することを特徴とする請求項50又は51記載のサービス提供方法。
  53. 前記処理状態取得情報は、前記サービス提供要求に係る処理を識別する識別情報と前記サービス提供装置が実行している処理の処理状態取得方法に関する情報とを含むことを特徴とする請求項52記載のサービス提供方法。
  54. ネットワークを介して請求項1乃至21いずれか一項記載の情報処理装置から送信されるサービス提供要求に係る処理を実行するサービス提供装置に、
     前記情報処理装置から送信された前記サービス提供要求に係る処理が完了する前に、該処理に対する応答と共に該処理の処理状態を取得させるための処理状態取得情報を前記情報処理装置に送信する処理状態取得情報送信手順と、
     前記情報処理装置から前記処理状態取得情報に基づきなされた前記サービス提供要求に係る処理の処理状態の取得要求に応じ、前記処理状態を前記情報処理装置に送信する処理状態送信手順とを実行させるためのサービス提供プログラム。
  55. 請求項54記載のサービス提供プログラムを記録したコンピュータ読み取り可能な記録媒体。
JP2003328198A 2002-09-20 2003-09-19 情報処理装置、情報処理方法、情報処理プログラム、サービス提供装置、サービス提供方法、サービス提供プログラム及び記録媒体 Expired - Fee Related JP4270992B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2003328198A JP4270992B2 (ja) 2002-09-20 2003-09-19 情報処理装置、情報処理方法、情報処理プログラム、サービス提供装置、サービス提供方法、サービス提供プログラム及び記録媒体
US10/666,249 US7185007B2 (en) 2002-09-20 2003-09-22 Information processing apparatus, information processing method, information processing program service providing apparatus, service providing method, service providing program and recording medium

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2002275986 2002-09-20
JP2003328198A JP4270992B2 (ja) 2002-09-20 2003-09-19 情報処理装置、情報処理方法、情報処理プログラム、サービス提供装置、サービス提供方法、サービス提供プログラム及び記録媒体

Publications (2)

Publication Number Publication Date
JP2004133925A true JP2004133925A (ja) 2004-04-30
JP4270992B2 JP4270992B2 (ja) 2009-06-03

Family

ID=32301789

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003328198A Expired - Fee Related JP4270992B2 (ja) 2002-09-20 2003-09-19 情報処理装置、情報処理方法、情報処理プログラム、サービス提供装置、サービス提供方法、サービス提供プログラム及び記録媒体

Country Status (2)

Country Link
US (1) US7185007B2 (ja)
JP (1) JP4270992B2 (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006085364A (ja) * 2004-09-15 2006-03-30 Ricoh Co Ltd 電子装置、表示データ生成方法、表示データ生成プログラム及び記録媒体
JP2007328401A (ja) * 2006-06-06 2007-12-20 Osk:Kk 一括印刷システム
JP2009193596A (ja) * 2009-05-21 2009-08-27 Osk:Kk 一括印刷システム
JP2012252539A (ja) * 2011-06-03 2012-12-20 Canon Inc 印刷システム、サービス処理方法、及びプログラム
JP2014042116A (ja) * 2012-08-21 2014-03-06 Canon Inc コンテンツ配信装置、制御方法、及びプログラム
JP2016224488A (ja) * 2015-05-27 2016-12-28 富士通フロンテック株式会社 注文処理プログラム、注文処理装置及び注文処理方法

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7265859B2 (en) * 2001-02-07 2007-09-04 Canon Kabushiki Kaisha Image processing apparatus and control method thereof
US20040187036A1 (en) * 2002-12-26 2004-09-23 Takashi Nakamura Information providing apparatus, information providing system, service providing apparatus, image forming apparatus, information providing method, service providing method and illegal usage preventing method
US8150907B2 (en) * 2003-05-29 2012-04-03 Brother Kogyo Kabushiki Kaisha Composite service providing system for a plurality of communicatively connected electronic devices
JP4348151B2 (ja) * 2003-09-19 2009-10-21 株式会社リコー 情報処理装置及び情報処理方法
JP4498045B2 (ja) * 2004-07-22 2010-07-07 キヤノン株式会社 画像処理装置及びその制御方法及びプログラム
US7693840B1 (en) * 2004-07-30 2010-04-06 Sprint Communications Company L.P. Method and system for distribution of common elements
JP4191672B2 (ja) * 2004-12-14 2008-12-03 ザイオソフト株式会社 ボリュームレンダリング等の画像処理システム
US20060230278A1 (en) * 2005-03-30 2006-10-12 Morris Robert P Methods,systems, and computer program products for determining a trust indication associated with access to a communication network
US20060230279A1 (en) * 2005-03-30 2006-10-12 Morris Robert P Methods, systems, and computer program products for establishing trusted access to a communication network
US20060265737A1 (en) * 2005-05-23 2006-11-23 Morris Robert P Methods, systems, and computer program products for providing trusted access to a communicaiton network based on location
US8185819B2 (en) 2005-12-12 2012-05-22 Google Inc. Module specification for a module to be incorporated into a container document
US20070239726A1 (en) * 2006-03-29 2007-10-11 Mathew Girard Weiss Systems and methods of transforming data for web communities and web applications
US8185830B2 (en) 2006-08-07 2012-05-22 Google Inc. Configuring a content document for users and user groups
US8954861B1 (en) 2006-08-07 2015-02-10 Google Inc. Administrator configurable gadget directory for personalized start pages
US8407250B2 (en) 2006-08-07 2013-03-26 Google Inc. Distribution of content document to varying users with security customization and scalability
US20090006996A1 (en) * 2006-08-07 2009-01-01 Shoumen Saha Updating Content Within A Container Document For User Groups
US7895514B1 (en) * 2006-10-23 2011-02-22 Adobe Systems Incorporated Systems and methods for solving rendering compatibility problems across electronic document viewers
TW200820746A (en) * 2006-10-26 2008-05-01 Young Optics Inc Procedure control method for simplex system
JP4723465B2 (ja) * 2006-11-29 2011-07-13 富士通株式会社 ジョブ割当プログラム及びジョブ割当方法
US8694895B2 (en) * 2007-02-05 2014-04-08 Microsoft Corporation Human interaction with application from email client
EP2015554B1 (en) * 2007-07-13 2012-05-16 Ricoh Company, Ltd. User interface generating method, image forming apparatus, and computer program product
JP4971999B2 (ja) * 2008-01-21 2012-07-11 株式会社リコー 画像処理装置、プログラム
JP5298809B2 (ja) * 2008-03-18 2013-09-25 株式会社リコー 画像形成システム、システム制御方法、画像形成装置、画像形成方法、画像形成プログラム。
JP2010128948A (ja) * 2008-11-28 2010-06-10 Ricoh Co Ltd ワークフロー情報生成装置、ワークフロー情報生成方法、画像処理装置、制御プログラム及び記録媒体
CN101782839A (zh) * 2009-01-16 2010-07-21 鸿富锦精密工业(深圳)有限公司 打印系统及打印方法
JP2010198364A (ja) * 2009-02-25 2010-09-09 Ricoh Co Ltd 画像形成装置、配信処理システム、画像処理方法、プログラム及び記録媒体

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6453129B1 (en) * 2001-03-23 2002-09-17 Hewlett-Packard Company System and method for providing job assurance
US20030033432A1 (en) * 2001-08-08 2003-02-13 Simpson Shell S. Web based imaging service that converts web pages into content on behalf of another web site

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006085364A (ja) * 2004-09-15 2006-03-30 Ricoh Co Ltd 電子装置、表示データ生成方法、表示データ生成プログラム及び記録媒体
JP4520261B2 (ja) * 2004-09-15 2010-08-04 株式会社リコー 電子装置、表示データ生成方法、表示データ生成プログラム及び記録媒体
JP2007328401A (ja) * 2006-06-06 2007-12-20 Osk:Kk 一括印刷システム
JP4547356B2 (ja) * 2006-06-06 2010-09-22 株式会社Osk 一括印刷システム
JP2009193596A (ja) * 2009-05-21 2009-08-27 Osk:Kk 一括印刷システム
JP4547459B2 (ja) * 2009-05-21 2010-09-22 株式会社Osk 一括印刷システム
JP2012252539A (ja) * 2011-06-03 2012-12-20 Canon Inc 印刷システム、サービス処理方法、及びプログラム
JP2014042116A (ja) * 2012-08-21 2014-03-06 Canon Inc コンテンツ配信装置、制御方法、及びプログラム
JP2016224488A (ja) * 2015-05-27 2016-12-28 富士通フロンテック株式会社 注文処理プログラム、注文処理装置及び注文処理方法

Also Published As

Publication number Publication date
US7185007B2 (en) 2007-02-27
US20040205163A1 (en) 2004-10-14
JP4270992B2 (ja) 2009-06-03

Similar Documents

Publication Publication Date Title
JP4270992B2 (ja) 情報処理装置、情報処理方法、情報処理プログラム、サービス提供装置、サービス提供方法、サービス提供プログラム及び記録媒体
JP4340566B2 (ja) Webページ生成装置、組み込み装置、Webページ生成の制御方法、Webページ生成プログラム及び記録媒体
US7774692B2 (en) Method for generating display control information and computer
RU2245577C2 (ru) Электронная доска объявлений и почтовый сервер
JP3444269B2 (ja) ネットワーク上のコンテンツを編集して印刷するネットワークプリンタ及びネットワーク上のコンテンツ印刷方法
JP2004164623A (ja) 表示データ生成装置、表示データ生成システム、表示データ生成方法、表示データ生成プログラム及び記録媒体
JP3969595B2 (ja) メール情報提供サーバ、メール情報提供システム、メール情報提供方法、メール情報提供プログラム
US20110047146A1 (en) Systems, Methods, and Computer Program Product for Mobile Service Data Browser
US20050024355A1 (en) Selecting items displayed on respective areas on a screen
US9141696B2 (en) Communication device
JP4297811B2 (ja) 情報提供装置、情報提供方法、及びプログラム
US7895337B2 (en) Systems and methods of generating a content aware interface
JP2008217750A (ja) ネットワーク装置、画像形成装置、データ検索方法、データ検索プログラム及びコンピュータ読み取り可能な記録媒体
US20180285467A1 (en) Web server
JP2008140287A (ja) アノテーション管理プログラム、アノテーション管理装置、アノテーション管理方法及びアノテーション表示プログラム
JP4625282B2 (ja) 情報処理装置、ファイル操作方法、ファイル操作プログラム及び記録媒体
JP4671753B2 (ja) 文書管理システム、文書管理方法、情報処理装置、プログラム、および記憶媒体
WO2018180023A1 (ja) ファイル管理装置、ファイル管理方法、及びファイル管理プログラム
JP2014002619A (ja) 情報処理装置及びその制御方法とプログラム
JP2004326740A (ja) Webページ生成装置、組み込み装置、Webページ生成システム、Webページ生成の制御方法、Webページ生成プログラム及び記録媒体
JP4903078B2 (ja) 電子装置、Webページ生成方法、及びWebページ生成プログラム
US20230306189A1 (en) Information processing apparatus, non-transitory computer readable medium storing program, and information processing method
KR101173598B1 (ko) 메모 게시판 제공 시스템 및 방법
JP5658196B2 (ja) マルチデバイス対応WebサーバシステムおよびWebサーバシステムにおけるマルチデバイス対応方法
US20030009462A1 (en) Computer-readable designators and methods and systems of using the same

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20051216

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080902

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081031

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20090203

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090224

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120306

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120306

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130306

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140306

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees