JP5078726B2 - 情報処理装置、サービス制御方法及びサービス制御プログラム - Google Patents

情報処理装置、サービス制御方法及びサービス制御プログラム Download PDF

Info

Publication number
JP5078726B2
JP5078726B2 JP2008111260A JP2008111260A JP5078726B2 JP 5078726 B2 JP5078726 B2 JP 5078726B2 JP 2008111260 A JP2008111260 A JP 2008111260A JP 2008111260 A JP2008111260 A JP 2008111260A JP 5078726 B2 JP5078726 B2 JP 5078726B2
Authority
JP
Japan
Prior art keywords
service
request
information
data
processing 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.)
Expired - Fee Related
Application number
JP2008111260A
Other languages
English (en)
Other versions
JP2009205664A (ja
Inventor
寿一 高桑
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 JP2008111260A priority Critical patent/JP5078726B2/ja
Publication of JP2009205664A publication Critical patent/JP2009205664A/ja
Application granted granted Critical
Publication of JP5078726B2 publication Critical patent/JP5078726B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、ネットワークを介して他の情報処理装置と通信可能であり、実現可能な機能が予め組み込まれた情報処理装置において、他の情報処理装置に対して提供するサービスを登録する情報処理装置サービス制御方法及びサービス制御プログラムに関する。
従来より、例えば、インターネットなどのネットワークを介して他の情報処理装置と通信可能な情報処理装置がある。このような情報処理装置に対してWebサービスとして新たなサービスを追加する場合、その追加を実行ファイルの追加により実現する技術がある(例えば特許文献1参照)。また、情報処理装置において既に存在するサービスの状態を、利用者が動的に有効化したり無効化したりする技術がある(特許文献2参照)。また、情報処理装置において既に存在するサービスを、利用者が動的に参照して利用することができる技術がある(特許文献3参照)。更に、情報処理装置において既に存在するサービスで提供する表示項目のオンオフをカスタマイズすることができる技術がある(特許文献4参照)。
特開2004−220556号公報 特開2005−309672号公報 特表2002−505467号公報 特開2005−301846号公報
しかし、特許文献1の技術では、動的にサービスを追加することができるものの、それを実現するため実行ファイルを追加した場合、システムを更新する必要がある。このため、システムの再起動を必要とし、情報処理装置の機能を一旦停止させる必要があった。また、実現可能な機能が予め組み込まれた画像形成装置などの情報処理装置の場合、リモートでシステムを更新する仕組みがない。このため、このような情報処理装置に特許文献1の技術を適用してサービスを追加する場合、システムを更新するためには、システムプログラムが記憶されたメディアを物理的に交換する必要があった。また、サービス追加者は、追加するサービスの開発環境を整えた上で、サービスモジュールを自ら開発しなくてはならなかった。また、特許文献2〜3の技術は、既に存在するサービスに対して動的に処理を行うことができるものの、サービス自体を動的に追加できるものではない。
従って、実現可能な機能が予め組み込まれた情報処理装置において、その機能を一旦停止させることなく、Webサービスを動的に追加可能になることが望まれていた。
本発明は、上記に鑑みてなされたものであって、実現可能な機能が予め組み込まれた情報処理装置において、その機能を一旦停止させることなく、他の情報処理装置に対して提供するサービスを動的に追加可能な情報処理装置サービス制御方法及びサービス制御プログラムを提供することを目的とする。
上述した課題を解決し、目的を達成するために、請求項1にかかる発明は、ネットワークを介して他の情報処理装置と通信可能であり、実現可能な機能が予め組み込まれた情報処理装置であって、他の情報処理装置に対して提供するサービスとして追加可能なサービスに対して予め割り当てられた格納場所を示す格納場所情報と、サービスで利用するデータであり当該データを一意に識別可能なデータ識別子が対応付けられたデータとを予め記憶する記憶手段と、前記格納場所情報と前記データ識別子とを含み、サービスに対する処理を要求する処理要求を他の情報処理装置から受信する受信手段と、前記受信手段が受信した前記処理要求が、前記サービスの追加を要求する追加要求であるか前記サービスの利用を要求する利用要求であるかを判断する要求判断手段と、前記要求判断手段により前記処理要求が前記追加要求と判断された場合、前記処理要求に含まれる前記格納場所情報が示す前記格納場所と前記データ識別子とを含む設定記述情報を生成する設定記述情報生成手段と、前記設定記述情報生成手段が生成した前記設定記述情報を、前記処理要求に含まれる前記格納場所情報が示す前記格納場所と対応付けて前記記憶手段に記憶する記憶制御手段と、前記要求判断手段により前記処理要求が前記利用要求と判断された場合、前記処理要求に含まれる前記格納場所情報が示す前記格納場所と対応付けられて前記記憶手段に記憶されている前記設定記述情報を用いて、前記処理要求に含まれる前記データ識別子が対応付けられた前記データを前記記憶手段から読み出す読出手段と、前記読出手段が読み出した前記データを用いて、前記サービスを提供する提供手段とを備えることを特徴とする。
また、請求項2にかかる発明は、請求項1にかかる発明において、前記設定記述情報生成手段は、前記要求判断手段により前記処理要求が前記追加要求と判断された場合、前記処理要求に含まれる前記格納場所情報が前記記憶手段に記憶されているか否かを判断する第1判断を行い、前記第1判断の結果が肯定的である場合、前記処理要求に含まれる前記データ識別子によって識別される前記データが前記記憶手段に記憶されているか否かを判断する第2判断を行い、前記第2判断の結果が肯定的である場合、前記処理要求に応じて、前記設定記述情報を生成すことを特徴とする。
また、請求項3にかかる発明は、請求項1又は2にかかる発明において、前記処理要求は、前記サービスの形態を示す操作子を更に含み、前記設定記述情報生成手段は、前記処理要求に含まれる前記操作子を含む前記設定記述情報を生成し、前記提供手段は、前記読出手段が読み出した前記データを用いて、前記処理要求に含まれる前記操作子によって示される形態に応じて、前記サービスを提供することを特徴とする。
また、請求項4にかかる発明は、請求項3にかかる発明において、前記サービスの形態は、前記データの値の参照及び前記データの値の設定のうち少なくとも一方であり、前記提供手段は、前記操作子が前記データの値の参照を示す場合、前記読出手段が読み出した前記データの値を前記他の情報処理装置に送信することにより、前記サービスを提供することを特徴とする。
また、請求項5にかかる発明は、請求項4にかかる発明において、前記提供手段は、前記操作子が前記データの値の設定を示す場合、前記読出手段が読み出した前記データの値を、前記処理要求に含まれる前記データの値を設定するための設定値に更新することにより、前記サービスを提供することを特徴とする。
また、請求項6にかかる発明は、請求項1乃至5のいずれか一項にかかる発明において、前記処理要求は、既に追加された前記サービスの変更を要求する変更要求である場合、前記データ識別子が対応付けられた前記データから変更される変更後のデータを一意に識別可能なデータ識別子を更に含み、前記要求判断手段は、前記受信手段が受信した前記処理要求が、前記変更要求であるかを更に判断し、前記要求判断手段により前記処理要求が前記変更要求と判断された場合、前記処理要求に含まれる前記格納場所情報が示す前記格納場所と対応付けられて前記記憶手段に記憶されている前記設定記述情報を読み出す第1設定読出手段と、前記第1設定読出手段が読み出した前記設定記述情報に含まれ且つ前記処理要求に含まれる前記データ識別子を、前記処理要求に含まれる前記変更後のデータを一意に識別可能なデータ識別子に変更する変更手段とを更に備えることを特徴とする。
また、請求項7にかかる発明は、請求項6にかかる発明において、前記第1設定読出手段は、前記要求判断手段により前記処理要求が前記変更要求と判断された場合、前記処理要求に含まれる前記格納場所情報が前記記憶手段に記憶されているか否かを判断する第1判断を行い、前記第1判断の結果が肯定的である場合、前記処理要求に含まれる前記データ識別子によって識別される前記データが前記記憶手段に記憶されているか否かを判断する第2判断を行い、前記第2判断の結果が肯定的である場合、前記設定記述情報を読み出すことを特徴とする。
また、請求項8にかかる発明は、請求項1乃至7のいずれか一項にかかる発明において、前記要求判断手段は、前記受信手段が受信した前記処理要求が、既に追加された前記サービスの削除を要求する削除要求であるかを更に判断し、前記要求判断手段により前記処理要求が前記削除要求と判断された場合、前記処理要求に含まれる前記格納場所情報が示す前記格納場所と対応付けられて前記記憶手段に記憶されている前記設定記述情報を読み出す第2設定読出手段と、前記第2設定読出手段が読み出した前記設定記述情報に含まれ且つ前記処理要求に含まれる前記格納場所情報を、当該設定記述情報から削除する削除手段とを更に備えることを特徴とする。
また、請求項9にかかる発明は、ネットワークを介して他の情報処理装置と通信可能であり、実現可能な機能が予め組み込まれた情報処理装置で実行されるサービス制御方法であって、前記情報処理装置は、他の情報処理装置に対して提供するサービスとして追加可能なサービスに対して予め割り当てられた格納場所を示す格納場所情報と、サービスで利用するデータであり当該データを一意に識別可能なデータ識別子が対応付けられたデータとを予め記憶する記憶手段を備え、受信手段が、前記格納場所情報と前記データ識別子とを含み、サービスに対する処理を要求する処理要求を他の情報処理装置から受信する受信工程と、要求判断手段が、前記受信工程で受信した前記処理要求が、前記サービスの追加を要求する追加要求であるか前記サービスの利用を要求する利用要求であるかを判断する要求判断工程と、設定記述情報生成手段が、前記要求判断工程で前記処理要求が前記追加要求と判断された場合、前記処理要求に含まれる前記格納場所情報が示す前記格納場所と前記データ識別子とを含む設定記述情報を生成する設定記述情報生成工程と、記憶制御手段が、前記設定記述情報生成工程で生成した前記設定記述情報を、前記処理要求に含まれる前記格納場所情報が示す前記格納場所と対応付けて前記記憶手段に記憶する記憶制御工程と、読出手段が、前記要求判断工程で前記処理要求が前記利用要求と判断された場合、前記処理要求に含まれる前記格納場所情報が示す前記格納場所と対応付けられて前記記憶手段に記憶されている前記設定記述情報を用いて、前記処理要求に含まれる前記データ識別子が対応付けられた前記データを前記記憶手段から読み出す読出工程と、提供手段が、前記読出工程で読み出した前記データを用いて、前記サービスを提供する提供工程とを含むことを特徴とする。
また、請求項10にかかる発明は、ネットワークを介して他の情報処理装置と通信可能であり、実現可能な機能が予め組み込まれたコンピュータで実行されるサービス制御プログラムであって、前記コンピュータは、他の情報処理装置に対して提供するサービスとして追加可能なサービスに対して予め割り当てられた格納場所を示す格納場所情報と、サービスで利用するデータであり当該データを一意に識別可能なデータ識別子が対応付けられたデータとを予め記憶する記憶手段を備え、前記格納場所情報と前記データ識別子とを含み、サービスに対する処理を要求する処理要求を他の情報処理装置から受信する受信工程と、前記受信工程で受信した前記処理要求が、前記サービスの追加を要求する追加要求であるか前記サービスの利用を要求する利用要求であるかを判断する要求判断工程と、前記要求判断工程で前記処理要求が前記追加要求と判断された場合、前記処理要求に含まれる前記格納場所情報が示す前記格納場所と前記データ識別子とを含む設定記述情報を生成する設定記述情報生成工程と、前記設定記述情報生成工程で生成した前記設定記述情報を、前記処理要求に含まれる前記格納場所情報が示す前記格納場所と対応付けて前記記憶手段に記憶する記憶制御工程と、前記要求判断工程で前記処理要求が前記利用要求と判断された場合、前記処理要求に含まれる前記格納場所情報が示す前記格納場所と対応付けられて前記記憶手段に記憶されている前記設定記述情報を用いて、前記処理要求に含まれる前記データ識別子が対応付けられた前記データを前記記憶手段から読み出す読出工程と、前記読出工程で読み出した前記データを用いて、前記サービスを提供する提供工程と、を前記コンピュータに実行させるためのものである。
本発明によれば、実現可能な機能が予め組み込まれた情報処理装置において、その機能を一旦停止することなく、他の情報処理装置に対して提供するサービスを動的に追加可能になる。
以下に添付図面を参照して、この発明にかかる情報処理装置サービス制御方法及びサービス制御プログラムの最良な実施の形態を詳細に説明する。
[第1の実施の形態]
(1)構成
本実施の形態にかかる情報処理装置のハードウェア構成について説明する。情報処理装置は、装置全体を制御するCPU(Central Processing Unit)等の制御装置と、各種データや各種プログラムを記憶するROM(Read Only Memory)やRAM(Random Access Memory)等の記憶装置と、各種データや各種プログラムを記憶するHDD(Hard Disk Drive)やCD(Compact Disk)ドライブ装置等の外部記憶装置と、これらを接続するバスとを備えており、通常のコンピュータを利用したハードウェア構成となっている。また、情報処理装置50には、情報を表示する表示装置と、ユーザの指示入力を受け付けるキーボードやマウス等の入力装置と、他の情報処理装置の通信を制御する通信I/F(interface)とが有線又は無線により各々接続される。尚、当該情報処理装置は、実現可能な機能が予め組み込まれた組込み型の情報処理装置であり、各種機能を実現するための各種プログラムが書き換え不能に記憶装置や外部記憶装置に記憶されている。
図1は、情報処理装置のソフトウェア構成を例示する図である。同図において点線で囲った部分が、ソフトウェア構成を示している。同図に示される情報処理装置50は、HTTP(Hypertext Transfer Protocol)サーバモジュール51とWebサービスサーバモジュール52と、サービスプロバイダモジュール53と、サービス登録プロバイダモジュール54と、動的サービスプロバイダモジュール55と、データ管理モジュール56と、中間データ変換モジュール57と、表現変換モジュール58とを有する。また、情報処理装置50が有する記憶装置59には、後述のリソースのデータ(リソースオブジェクト)が予め記憶されており、サービスの登録(追加)の際に設定記述ファイル(設定記述情報)が記憶される。尚、サービスとは、他の情報処理装置100に対して提供する情報処理サービスであり、記憶装置59や外部記憶装置に記憶された各種プログラムをCPUが実行することにより実現される。サービスの登録とは、情報処理装置50において未だ実現可能ではなかったサービスを実現可能に設定することである。このサービスの形態としては、ここでは、情報の参照と情報の設定との2つを取り扱う。
HTTPサーバモジュール51は、HTTPに従い、ネットワークNTを介して他の情報処理装置100と情報通信を行う。ネットワークNTは、例えば、LAN(Local Area Network)、イントラネット、イーサネット(登録商標)又はインターネットなどである。HTTPサーバモジュール51は、サービスの登録(追加)を要求する追加要求やサービスの利用を要求する利用要求などの処理要求を他の情報処理装置100から受信し、これをWebサービスサーバモジュール52に渡す。Webサービスサーバモジュール52は、HTTPサーバモジュール51から渡された処理要求に応じて、サービスの登録や利用を制御する。尚、他の情報処理装置100から送信される処理要求は、例えば、XML形式で表現されたデータである。
図2は、サービスの登録を要求する処理要求を例示する図である。ここでは、登録対象のサービスでは、リソースが2つ利用されるものとする。同図に示されるように、処理要求は、対象のサービスのURLを示す情報と、対象のサービスのサービス名K3と、対象のサービスを提供するために用いるリソースのデータ(リソースオブジェクト)の識別子(リソース識別子)K4,K5と、リソースの表現形式K6と、リソースに対する処理内容を示す操作子K7とを含む。対象のサービスのURLは、例えば、情報処理装置50のアドレスK1と、ディレクトリK2と、サービス名K3とを用いて示され、ここでは、「mfp001.XXXX.co.jp/webservice/newservice」である。リソースオブジェクトとは、各サービスで利用されるデータのことであり、サービスに関する値を示すものである。各リソースオブジェクトは、当該リソースオブジェクトを一意に識別可能なリソース識別子が対応付けられて記憶装置59に記憶されている。リソースに対する処理内容とは、サービスの形態のことであり、例えば、情報の参照や、情報の設定などである。その処理内容を示す操作子として、例えば、前者の処理内容を示すものとして「GET」を用い、後者の処理内容を示すものとして「PUT」を用いる。リソース識別子(データ識別子)は、上述したようにリソースオブジェクトを情報処理装置50において一意に識別可能な識別子である。
サービス登録プロバイダモジュール54は、Webサービスサーバモジュール52の制御の下、サービスの登録を行うためのプログラムである。動的サービスプロバイダモジュール55は、Webサービスサーバモジュール52の制御の下、登録されたサービスの利用に際して、サービスを提供するためのプログラムである。サービスプロバイダモジュール53は、情報処理装置50に予め組み込まれている既存のサービスの利用に際して、サービスを提供するためのプログラムである。
データ管理モジュール56は、リソースオブジェクトや設定記述ファイルの記憶装置59への記憶やこれらのアクセスや削除を制御したり、登録済URLリストへのURLの登録やこれへのアクセスを制御したりする。登録済URLリストとは、サービスの登録が既に行われたURLのリストを示すものであり、例えば、記憶装置59に記憶されている。
中間データ変換モジュール57は、登録されたサービスの利用に際して、動的サービスプロバイダモジュール55の要求に応じて、提供対象のサービスに関するデータを中間表現形式のデータ(中間表現形式データ)に変換する。中間表現形式とは、例えば、Java(登録商標)などのプログラム言語による表現形式である。表現変換モジュール58は、登録されたサービスの利用に際して、動的サービスプロバイダモジュール55の要求に応じて、中間表現形式データを、出力表現形式のデータ(出力表現形式データ)に変換する。出力表現形式とは、例えば、XML(Extensible Markup Language)の表現形式として、RSS(Really Simple Syndication)やAtom(Atom Syndication Format(RFC 4287))(又はEntry)などのフォーマットや、その他、JSON(JavaScript Object Notation(RFC 4627))などのフォーマットである。
次に、Webサービスサーバモジュール52、サービス登録プロバイダモジュール54及び動的サービスプロバイダモジュール55の詳細な構成について図3を用いて説明する。Webサービスサーバモジュール52は、サービス振分け部52aと、URL確認部52bと、サービスハンドラ部52cとを有する。URL確認部52bは、図示しないURLテーブル(格納場所情報)を参照して、処理要求に含まれている対象のサービスのURLが、サービスとして提供可能なサービスのURLであるか否かを判断する。URLテーブルは例えば記憶装置59に記憶されており、URLテーブルには、サービスとして提供可能な全てのサービスのURLが記憶されている。サービス振分け部52aは、処理要求に含まれている対象のサービスのURLが、提供可能なサービスのURLであるとURL確認部52bが判断した場合に、更に、処理要求がサービスの登録を要求する追加要求か利用を要求する利用要求かを判別し、処理要求の振分け先をサービス登録プロバイダモジュール54にするか又は動的サービスプロバイダモジュール55にするかを決定する。サービスハンドラ部52cは、サービス振分け部52aの決定に従って、サービス登録プロバイダモジュール54又は動的サービスプロバイダモジュール55に処理要求を渡す。
サービス登録プロバイダモジュール54は、登録受付部54aと、サービス検証部54bと、サービス設定記述登録部54cとを有する。登録受付部54aは、サービスの登録を要求する処理要求をWebサービスサーバモジュール52を介して受け付け、当該処理要求の検証をサービス検証部54bに要求する。サービス検証部54bは、登録済URLリストを取得して、処理要求に含まれる登録対象のサービスのURLが登録済URLリストに存在するか否かを判断する。サービス設定記述登録部54cは、登録対象のサービスのURLが登録済URLリストに存在しないとサービス検証部54bが判断した場合、当該サービスに関する設定記述ファイルを記憶装置59に記憶する。
動的サービスプロバイダモジュール55は、管理部55aと、情報操作部55bと、中間データ保持部55cと、表現変換出力部55dとを有する。管理部55aは、サービスの利用を要求する処理要求をWebサービスサーバモジュール52を介して受け付け、当該処理要求に応じて、サービスを提供するための処理を制御する。具体的には、管理部55aは、当該処理要求に応じて、情報操作部55bに処理を要求し、処理の結果得られたデータの中間表現形式データへの変換を中間データ変換モジュール57に要求し、中間表現形式データの出力表現形式データへの変換を表現変換モジュール58に要求し、出力表現形式データを取得する。中間データ保持部55cは、中間表現形式データを一時的に記憶する。表現変換出力部55dは、出力形式データをWebサービスサーバモジュール52に渡す。Webサービスサーバモジュール52からHTTPサーバモジュール51を介して出力形式データは他の情報処理装置100に送信される。
(2)動作
<サービスの登録>
次に、本実施の形態にかかる情報処理装置50の行う処理について説明する。まず、サービスの登録を行う処理の手順について図4を用いて説明する。他の情報処理装置100は、ユーザからの入力に応じて、例えば図2に示されるような、サービスの登録を要求する処理要求を情報処理装置50に送信する(ステップS1)。情報処理装置50のHTTPサーバモジュール51は、当該処理要求を受信すると、これをWebサービスサーバモジュール52に渡す(ステップS2)。Webサービスサーバモジュール52は、当該処理要求を受け付けると(ステップS3)、当該処理要求を解釈して、処理要求の振分け先を決定する(ステップS4)。具体的には、Webサービスサーバモジュール52は、まず、URLテーブルを参照して、当該処理要求に含まれる登録対象のサービスのURLが、提供可能なサービスのURLであるか否かを判断する。当該判断結果が否定的である場合には、Webサービスサーバモジュール52は、HTTPサーバモジュール51を介してエラーメッセージを情報処理装置50に送信する。当該処理要求に含まれる登録対象のサービスのURLが、提供可能なサービスのURLである場合、Webサービスサーバモジュール52は、次いで、処理要求がサービスの登録を要求するものかサービスの利用を要求するものかを判断する。ここでは、当該判断結果は肯定的となるから、Webサービスサーバモジュール52は、処理要求の振分け先をサービス登録プロバイダモジュール54に決定し、当該処理要求をサービス登録プロバイダモジュール54に渡す(ステップS5)。
サービス登録プロバイダモジュール54は、当該処理要求を受け付けると(ステップS6)、登録内容検証処理を行う(ステップS7)。図5は、登録内容検証処理の詳細な手順を示すフローチャートである。サービス登録プロバイダモジュール54のサービス設定記述登録部54cは、当該処理要求に含まれる登録対象のサービスが、登録が既に行われたサービスであるか否かを検証するために、登録済URLリストをデータ管理モジュール56に要求する(ステップS20)。データ管理モジュール56は、登録済URLリストが要求されると、当該登録済URLリストを記憶装置59から読み出し(ステップS21)、これをサービス設定記述登録部54cに渡す(ステップS22)。サービス設定記述登録部54cは、登録済URLリストを受け取ると(ステップS23)、当該登録済URLリストに記憶されているURLと、処理要求に含まれる登録対象のサービスのURLとを照合し、一致するものが存在するか否かを判断する(ステップS24)。当該判断結果が肯定的である場合、処理要求に含まれる登録対象のサービスは、登録が既に行われたサービスである。この場合、サービス登録プロバイダモジュール54は、Webサービスサーバモジュール52及びHTTPサーバモジュール51を介してエラーメッセージを情報処理装置50に送信して処理を終了する。
ここでは、処理要求に含まれる登録対象のサービスのURLと一致するURLが登録済URLリストに記憶されていないものとし、当該サービスは登録が未だ行われていないサービスであるものとする。この場合、サービス設定記述登録部54cは、処理を続行し、次いで、処理要求に含まれるリソース識別子によって識別されるリソースオブジェクトを検証するために、当リソースオブジェクトをデータ管理モジュール56に要求する(ステップS25)。データ管理モジュール56は、当該リソースオブジェクトが要求されると、当該リソース識別子に対応付けられて記憶装置59に記憶されているリソースオブジェクトを記憶装置59から読み出し(ステップS26)、これをサービス設定記述登録部54cに渡す(ステップS27)。サービス設定記述登録部54cは、当該リソースオブジェクトを受け取ると(ステップS28)、当該リソースオブジェクトが空データではないか否かを検証する(ステップS29)。尚、データ管理モジュール56は、サービスで利用するリソースオブジェクトが複数ある場合、即ち、サービスの登録を要求する処理要求に含まれるリソース識別子が複数ある場合、リソースオブジェクト毎にその検証を行う。そして、検証の結果、リソースオブジェクトが空データである場合、サービス設定記述登録部54cは、当該処理要求によって登録が要求されているサービスが登録可能ではないと判断し、Webサービスサーバモジュール52及びHTTPサーバモジュール51を介してエラーメッセージを情報処理装置50に送信して処理を終了する。ここでは、リソースオブジェクトが空データではないものとする。この場合、サービス設定記述登録部54cは、当該処理要求によって登録が要求されているサービスが登録可能であると判断して、登録内容検証処理を終了して、図4のステップS8に進む。
ステップS8では、サービス設定記述登録部54cは、サービス登録処理を行う。図6は、サービス登録処理の詳細な手順を示すフローチャートである。サービス設定記述登録部54cは、上述の処理要求に基づいて設定記述ファイルを生成する(ステップS40)。図7は、設定記述ファイルを例示する図である。同図に示されるように、設定記述ファイルは、登録されたサービスの名称(サービス名)K3と、サービスを提供する際に用いるリソースオブジェクトのリソース識別子K4,K5と、リソースの表現形式K6と、リソースに対する操作子K7と、サービスのURLK8と、リソースの名称K9,K10とを含む。サービス設定記述登録部54cは、このような設定記述ファイルを生成後、これを記憶装置59に記憶することをデータ管理モジュール56に要求する。データ管理モジュール56は、設定記述ファイルの記憶が要求されると、当該設定記述ファイルを記憶装置59に記憶させる(ステップS41)。このときの設定記述ファイルは、処理要求に含まれるURLと対応付けられて記憶装置59に記憶される。その後、データ管理モジュール56は、設定記述ファイルの記憶が完了したことをサービス設定記述登録部54cに通知して(ステップS42)、サービス登録処理を終了する。このサービス登録処理の結果、処理要求によって登録が要求されたサービスが情報処理装置50において登録される。
図4に戻り、ステップS8の後、ステップS9に進み、ここでは、サービス登録プロバイダモジュール54のサービス設定記述登録部54cは、処理要求に応じたサービスの登録されたことを示す登録内容情報を生成してこれをWebサービスサーバモジュール52に渡す。Webサービスサーバモジュール52は、登録内容情報を受け取ると、これをHTTPサーバモジュール51に渡す(ステップS10)。HTTPサーバモジュール51は、当該登録内容情報を受け取ると、これをHTTPの形式に変換して他の情報処理装置100に送信する(ステップS11)。図8は、図2に示した処理要求に応じて他の情報処理装置100に送信される登録内容情報を例示する図である。同図に示されるように、登録内容情報は、上述の設定記述ファイルに基づいてXML形式により表現され、登録されたサービスの名称(サービス名)K3と、サービスのURLK8と、リソースの名称K9,K10と、リソースオブジェクトのリソース識別子K4,K5と、リソースの表現形式K6と、リソースに対する操作子K7とを含む。他の情報処理装置100は、このような登録内容情報を受信する(ステップS12)。
以上のような構成により、サービスの登録を要求する上述の処理要求を他の情報処理装置100から情報処理装置50に送信することで、情報処理装置50において、実行モジュールの動的な追加やシステムの再起動等の必要なく、サービスが動的に登録される。このため、登録対象のサービスのための実行モジュールを新たにインストールしたり、また、登録したサービスを利用可能にするために、情報処理装置50を再起動したりする必要もない。また、サービスの登録に際し、登録内容検証処理で、登録可能なサービスの登録のみ行うことで、安全性を確保することができる。そして、登録されたサービスの利用は、既存の他のサービスと同様の手順で利用することができる。その手順について、以下で説明する。
<サービスの利用>
情報処理装置50において登録されたサービスを利用する場合として、まず、情報を参照するサービスを利用する場合の手順について図9を用いて説明する。他の情報処理装置100は、ユーザからの入力に応じて、情報を参照するサービスの利用を要求する処理要求を情報処理装置50に送信する(ステップS60)。当該処理要求は、リソースに対する操作子と、利用対象のサービスのURLとを示す。図10は、情報を参照するサービスの利用を要求する処理要求を例示する図である。同図においては、リソースに対する操作子として情報の参照を示す「GET」(K20)と、利用対象のサービスのURLとして「http://mfp001.XXXX.co.jp/webservice/newservice」(同図に示されるK21とK22とからなる)とが示されている。
情報処理装置50のHTTPサーバモジュール51は、当該処理要求を受信すると(ステップS61)、これをWebサービスサーバモジュール52に渡す。Webサービスサーバモジュール52は、当該処理要求を受け付けると(ステップS62)、当該処理要求を解釈して、処理要求の振分け先を決定する(ステップS63)。この処理の内容は上述のステップS4と同様である。ここでは、処理要求がサービスの利用を要求するものであるから、Webサービスサーバモジュール52は、処理要求の振分け先を動的サービスプロバイダモジュール55に決定し、当該処理要求を動的サービスプロバイダモジュール55に渡す(ステップS64)。
動的サービスプロバイダモジュール55は、当該処理要求を受け付けると(ステップS65)、情報参照サービス提供処理を行う(ステップS66)。図11は、情報参照サービス提供処理の詳細な手順を示すフローチャートである。動的サービスプロバイダモジュール55は、当該処理要求に含まれるURLと対応付けられて記憶装置59に記憶されている設定記述ファイルをデータ管理モジュール56に要求する(ステップS80)。データ管理モジュール56は、当該設定記述ファイルが要求されると、該当の設定記述ファイルを記憶装置59から読み出し(ステップS81)、これを動的サービスプロバイダモジュール55に渡す(ステップS82)。動的サービスプロバイダモジュール55は、設定記述ファイルを受け取ると(ステップS83)、当該設定記述ファイルに含まれるリソース識別子を取得し(ステップS84)、当該リソース識別子に対応付けられて記憶装置59に記憶されているリソースオブジェクトをデータ管理モジュール56に要求する(ステップS85)。データ管理モジュール56は、リソースオブジェクトが要求されると、該当のリソースオブジェクトを記憶装置59から読み出し(ステップS86)、これを動的サービスプロバイダモジュール55に渡す(ステップS87)。動的サービスプロバイダモジュール55は、リソースオブジェクトを受け取ると(ステップS88)、これを中間表現形式のデータに変換するよう中間データ変換モジュール57に要求する(ステップS89)。中間データ変換モジュール57は、当該要求に応じて、該当のリソースオブジェクトを中間表現形式のデータ(中間表現形式データ)に変換して(ステップS90)、これを動的サービスプロバイダモジュール55に渡す(ステップS91)。
動的サービスプロバイダモジュール55は、中間表現形式データを受け取ると(ステップS92)、これを出力表現形式のデータに変換するよう表現変換モジュール58に要求する(ステップS93)。ここでは、動的サービスプロバイダモジュール55は、出力表現形式として、上述の設定記述ファイルに含まれる、リソースの表現形式によって示される形式のデータにリソースオブジェクトを変換することを要求する。図7の例では、要求される出力表現形式は、「entry」形式となる。表現変換モジュール58は、当該要求に応じて、中間表現形式データを、出力表現形式のデータ(出力データ)に変換して(ステップS94)、これを動的サービスプロバイダモジュール55に渡す(ステップS95)。動的サービスプロバイダモジュール55は、出力データを受け取ると(ステップS96)、これをWebサービスサーバモジュール52に渡す(図9のステップS67)。Webサービスサーバモジュール52は、出力データを受け取ると、これをHTTPサーバモジュール51に渡す(ステップS68)。HTTPサーバモジュール51は、出力データを受け取ると、これをHTTPの形式に変換して他の情報処理装置100に送信する(ステップS69)。図12は、他の情報処理装置100に送信される出力データを例示する図である。同図では、リソース名がタグにより示され、当該タグにより囲まれた情報が、参照対象の情報となる。ここでは、リソース「ipv4」に対して、「133.139.221.29」が参照対象の情報であり、リソース「ipv6」に対して、「20:3:4::3」が参照対象の情報である。他の情報処理装置100は、このような出力データを受信する(ステップS70)。この結果、他の情報処理装置100は、上述の処理要求に応じて、参照対象の情報を取得することができ、情報を参照するサービスを利用することができる。
<情報の設定>
次に、情報を設定するサービスを利用する処理の手順について図13を用いて説明する。他の情報処理装置100は、ユーザからの入力に応じて、情報を設定するサービスの利用を要求する処理要求を情報処理装置50に送信する(ステップS100)。当該処理要求は、リソースに対する操作子と、利用対象のサービスのURLと、対象のリソースに対する設定値とを示す。図14は、情報を設定するサービスの利用を要求する処理要求を例示する図である。同図においては、リソースに対する操作子として情報の設定を示す「PUT」(K30)と、利用対象のサービスのURLとして「http://mfp001.XXXX.co.jp/webservice/newservice」(K31)とが示されている。また、リソース名がタグにより示され、当該タグにより囲まれた情報が、設定対象の情報となる。ここではリソース名がリソース「ipv4」(K32)のリソースに対する設定値として、「133.139.221.111」(K33)が示され、リソース名が「ipv6」(K34)のリソースに対する設定値として、「20:3:4::9」(K35)が示されている。
情報処理装置50のHTTPサーバモジュール51は、当該処理要求を受信すると(ステップS101)、これをWebサービスサーバモジュール52に渡す。Webサービスサーバモジュール52は、当該処理要求を受け付けると(ステップS102)、当該処理要求を解釈して、処理要求の振分け先を決定する(ステップS103)。処理の内容は上述のステップS4と同様である。ここでは、処理要求がサービスの利用を要求するものであるから、Webサービスサーバモジュール52は、処理要求の振分け先を動的サービスプロバイダモジュール55に決定し、当該処理要求を動的サービスプロバイダモジュール55に渡す(ステップS104)。
動的サービスプロバイダモジュール55は、当該処理要求を受け付けると(ステップS105)、情報設定サービス提供処理を行う(ステップS106)。図15は、情報設定サービス提供処理の詳細な手順を示すフローチャートである。動的サービスプロバイダモジュール55は、当該処理要求に含まれるURLと対応付けられて記憶装置59に記憶されている設定記述ファイルをデータ管理モジュール56に要求する(ステップS120)。データ管理モジュール56は、当該設定記述ファイルが要求されると、該当の設定記述ファイルを記憶装置59から読み出し(ステップS121)、これを動的サービスプロバイダモジュール55に渡す(ステップS122)。動的サービスプロバイダモジュール55は、設定記述ファイルを受け取ると(ステップS123)、当該設定記述ファイルに含まれるリソース識別子を取得する(ステップS124)。そして、動的サービスプロバイダモジュール55は、当該リソース識別子と、処理要求に含まれ当該リソース識別子に対する設定値とをデータ管理モジュール56に渡して、情報の設定を要求する(ステップS125)。データ管理モジュール56は、当該要求に応じて、該当のリソース識別子に対応付けられて記憶装置59に記憶されているリソースオブジェクトの値を、動的サービスプロバイダモジュール55から渡された設定値に更新することにより(ステップS126)、情報の設定を行う。尚、データ管理モジュール56は、設定対象のリソースオブジェクトが複数ある場合、その数だけ情報の設定を行う。データ管理モジュール56は、情報の設定が終了すると、その旨を動的サービスプロバイダモジュール55に通知する(ステップS127)。
図13に戻り、動的サービスプロバイダモジュール55は、情報の設定が終了した旨が通知されると、情報の設定が終了した旨をWebサービスサーバモジュール52に通知し(ステップS107)、Webサービスサーバモジュール52は情報の設定が終了した旨をHTTPサーバモジュール51に通知する(ステップS108)。HTTPサーバモジュール51は、情報の設定が終了した旨を示すメッセージ(例えば、「HTTP/1.1 200 OK」)を他の情報処理装置100に送信する(ステップS109)。他の情報処理装置100はこのメッセージを受信する(ステップS110)。
以上のように、動的に登録されたサービスについても、ユーザの利便性を損ねずに、利用可能となる。
[第2の実施の形態]
次に、画像形成装置の第2の実施の形態について説明する。なお、上述の第1の実施の形態と共通する部分については、同一の符号を使用して説明したり、説明を省略したりする。
(1)構成
上述の第1の実施の形態においては、サービスの形態として、情報の参照と情報の設定との2つを取り扱ったが、本実施の形態においては、更に、情報の変更と情報の削除とを取り扱う。
このため、本実施の形態にかかる情報処理装置50のHTTPサーバモジュール51は、上述の追加要求や利用要求の他、サービスの変更を要求する変更要求やサービスの削除を要求する削除要求などの処理要求を他の情報処理装置100から受信し、これをWebサービスサーバモジュール52に渡す。
図16は、サービスの変更を要求する処理要求を例示する図である。同図に示されるように、処理要求は、リソースに対する操作子K40と、変更対象のサービスを指定する変更指定情報K41と、対象のサービスのURLを示す情報と、対象のサービスのサービス名K3と、対象のサービスを提供するために用いるリソースのリソース識別子K4と、サービスの変更内容として、リソース識別子K4から変更される新たなリソース識別子K42と、リソースの表現形式K6と、リソースに対する処理内容を示す操作子K7とを含む。ここでは、リソースに対する操作子K40として、情報の設定を示す「PUT」が示される。変更指定情報K41として、サービス名「newservice」が示されている。対象のサービスのURLを示す情報については上述の第1の実施の形態と同様である。サービスの変更内容として、リソース識別子K41が示されることにより、サービスで利用されるリソースオブジェクトについて、リソース識別子K4によって識別されるリソースオブジェクトから、リソース識別子K42によって識別されるリソースオブジェクトへの変更が要求されていることが示される。リソースに対する処理内容を示す操作子K7においては、情報の参照を示す操作子として、「GET」を用いる。
図17は、サービスの削除を要求する処理要求を例示する図である。同図においては、リソースに対する操作子として削除を示す「DELETE」(K50)と、削除対象のサービスのURLとして「http://mfp001.XXXX.co.jp/webservice/newservice」(同図に示されるK52とK1とK51とからなる)とが示されている。
そして、サービス登録プロバイダモジュール54は、Webサービスサーバモジュール52の制御の下、HTTPサーバモジュール51が受信した処理要求に基づいて、サービスの変更を行ったり、サービスの削除を行ったりする。その他の構成については、上述の第1の実施の形態と略同様であるため、その説明を省略する。
(2)動作
<サービスの変更>
次に、本実施の形態にかかる情報処理装置50の行う処理について説明する。まず、サービスの変更を行う処理の手順について図18を用いて説明する。他の情報処理装置100は、ユーザからの入力に応じて、例えば図16に示されるような、サービスの変更を要求する処理要求を情報処理装置50に送信する(ステップS140)。情報処理装置50のHTTPサーバモジュール51は、当該処理要求を受信すると、これをWebサービスサーバモジュール52に渡す(ステップS141)。Webサービスサーバモジュール52は、当該処理要求を受け付けると(ステップS142)、当該処理要求を解釈して、処理要求の振分け先を決定する(ステップS143)。具体的には、Webサービスサーバモジュール52は、まず、URLテーブルを参照して、当該処理要求に含まれる登録対象のサービスのURLが、提供可能なサービスのURLであるか否かを判断する。当該判断結果が否定的である場合には、Webサービスサーバモジュール52は、HTTPサーバモジュール51を介してエラーメッセージを情報処理装置50に送信する。当該処理要求に含まれる登録対象のサービスのURLが、提供可能なサービスのURLである場合、Webサービスサーバモジュール52は、次いで、処理要求が、サービスに対して登録、利用、変更及び削除のうちいずれの処理を要求するものかを判断する。処理要求がサービスの変更を要求するものである場合、Webサービスサーバモジュール52は、処理要求の振分け先をサービス登録プロバイダモジュール54に決定し、当該処理要求をサービス登録プロバイダモジュール54に渡す(ステップS144)。
サービス登録プロバイダモジュール54は、当該処理要求を受け付けると(ステップS145)、変更内容検証処理を行う(ステップS146)。図19は、変更内容検証処理の詳細な手順を示すフローチャートである。サービス登録プロバイダモジュール54のサービス設定記述登録部54cは、当該処理要求に含まれる変更対象のサービスが、登録が既に行われたサービスであるか否かを検証するために、登録済URLリストをデータ管理モジュール56に要求する(ステップS160)。データ管理モジュール56は、登録済URLリストが要求されると、当該登録済URLリストを記憶装置59から読み出し(ステップS161)、これをサービス設定記述登録部54cに渡す(ステップS162)。サービス設定記述登録部54cは、登録済URLリストを受け取ると(ステップS163)、当該登録済URLリストに記憶されているURLと、処理要求に含まれる変更対象のサービスのURLとを照合し、一致するものが存在するか否かを判断する(ステップS164)。当該判断結果が否定的である場合、当該サービスは登録が未だ行われていないサービスである。この場合、サービス登録プロバイダモジュール54は、Webサービスサーバモジュール52及びHTTPサーバモジュール51を介してエラーメッセージを情報処理装置50に送信して処理を終了する。
ここでは、処理要求に含まれる変更対象のサービスのURLと一致するURLが登録済URLリストに記憶されているものとし、当該サービスは既に登録されているサービスであるものとする。この場合、サービス設定記述登録部54cは、処理を続行し、次いで、処理要求に含まれるリソース識別子によって識別されるリソースオブジェクトを検証するために、当リソースオブジェクトをデータ管理モジュール56に要求する(ステップS165)。データ管理モジュール56は、当該リソースオブジェクトが要求されると、当該リソース識別子に対応付けられて記憶装置59に記憶されているリソースオブジェクトを記憶装置59から読み出し(ステップS166)、これをサービス設定記述登録部54cに渡す(ステップS167)。サービス設定記述登録部54cは、当該リソースオブジェクトを受け取ると(ステップS168)、当該リソースオブジェクトが空データではないか否かを検証する(ステップS169)。尚、データ管理モジュール56は、サービスで利用するリソースオブジェクトが複数ある場合、即ち、サービスの登録を要求する処理要求に含まれるリソース識別子が複数ある場合、リソースオブジェクト毎にその検証を行う。そして、検証の結果、リソースオブジェクトが空データである場合、サービス設定記述登録部54cは、当該処理要求によって登録が要求されているサービスが登録可能ではないと判断し、Webサービスサーバモジュール52及びHTTPサーバモジュール51を介してエラーメッセージを情報処理装置50に送信して処理を終了する。ここでは、リソースオブジェクトが空データではないものとする。この場合、サービス設定記述登録部54cは、当該処理要求によって変更が要求されているサービスが変更可能であると判断して、変更内容検証処理を終了して、図18のステップS147に進む。
ステップS147では、サービス設定記述登録部54cは、サービス変更処理を行う。図20は、サービス変更処理の詳細な手順を示すフローチャートである。サービス設定記述登録部54cは、上述の処理要求に含まれるURLと対応付けられて記憶装置59に記憶されている設定記述ファイルを、処理要求に含まれる変更内容に変更することをデータ管理モジュール56に要求する(ステップS180)。データ管理モジュール56は、当該要求に応じて、該当の設定記述ファイルを記憶装置59から読み出し(ステップS181)、この設定記述ファイルを、当該変更内容に変更して、変更した設定記述ファイルを記憶装置59に記憶する(ステップS182)。例えば、データ管理モジュール56は、設定記述ファイルにおいて、サービス名「newservice」について、図16に示されるリソース識別子K4の記述をリソース識別子K42の記述に変更する。この結果、サービス名「newservice」において利用されるリソースオブジェクトについて、リソース識別子K4によって識別されるリソースオブジェクトから、リソース識別子K42によって識別されるリソースオブジェクトに変更される。その後、データ管理モジュール56は、設定記述ファイルの変更が完了したことをサービス設定記述登録部54cに通知して(ステップS183)、サービス変更処理を終了する。このサービス変更処理の結果、処理要求によって変更が要求されたサービスが情報処理装置50において変更される。
図18に戻り、ステップS147の後、ステップS148に進み、ここでは、サービス登録プロバイダモジュール54のサービス設定記述登録部54cは、処理要求に応じたサービスが変更されたことを示す変更内容情報を生成してこれをWebサービスサーバモジュール52に渡す。Webサービスサーバモジュール52は、変更内容情報を受け取ると、これをHTTPサーバモジュール51に渡す(ステップS149)。HTTPサーバモジュール51は、当該変更内容情報を受け取ると、これをHTTPの形式に変換して他の情報処理装置100に送信する(ステップS150)。ここで他の情報処理装置100に送信される登録内容情報は、例えば、「HTTP/1.1 200 OK」などのHTTPメッセージ等である。他の情報処理装置100は、このような登録内容情報を受信する(ステップS151)。
以上のような構成により、サービスの変更を要求する上述の処理要求を情報処理装置50から情報処理装置50に送信することで、情報処理装置50において、実行モジュールの動的な追加やシステムの再起動等の必要なく、サービスが動的に変更される。例えば、情報処理装置100の構成が変更され、登録したサービスで情報の参照や設定を行っていたのにそれらができなくなった場合でも、サービスの変更を要求する処理要求を情報処理装置50に送信することにより、サービスを変更することができる。即ち、変更対象のサービスのための実行モジュールを新たにインストールしたり、また、変更したサービスを利用可能にするために、情報処理装置50を再起動したりする必要もない。また、サービスの変更に際し、変更内容検証処理で、変更可能なサービスの変更のみ行うことで、安全性を確保することができる。そして、変更されたサービスの利用は、上述の第1の実施の形態と同様にして行うことができる。
<サービスの削除>
次に、サービスを削除する処理の手順について図21を用いて説明する。他の情報処理装置100は、ユーザからの入力に応じて、例えば図17に示されるような、サービスの削除を要求する処理要求を情報処理装置50に送信する(ステップS200)。情報処理装置50のHTTPサーバモジュール51は、当該処理要求を受信すると、これをWebサービスサーバモジュール52に渡す(ステップS201)。Webサービスサーバモジュール52は、当該処理要求を受け付けると(ステップS202)、当該処理要求を解釈して、上述と同様にして、処理要求の振分け先を決定する(ステップS203)。処理要求がサービスの削除を要求するものである場合、Webサービスサーバモジュール52は、処理要求の振分け先をサービス登録プロバイダモジュール54に決定し、当該処理要求をサービス登録プロバイダモジュール54に渡す(ステップS204)。
サービス登録プロバイダモジュール54は、当該処理要求を受け付けると(ステップS205)、サービス存在検証処理を行う(ステップS206)。図22は、サービス存在検証処理の詳細な手順を示すフローチャートである。サービス登録プロバイダモジュール54のサービス設定記述登録部54cは、当該処理要求に含まれる削除対象のサービスが、登録が既に行われたサービスであるか否かを検証するために、登録済URLリストをデータ管理モジュール56に要求する(ステップS220)。データ管理モジュール56は、登録済URLリストが要求されると、当該登録済URLリストを記憶装置59から読み出し(ステップS221)、これをサービス設定記述登録部54cに渡す(ステップS222)。サービス設定記述登録部54cは、登録済URLリストを受け取ると(ステップS223)、当該登録済URLリストに記憶されているURLと、処理要求に含まれる削除対象のサービスのURLとを照合し、一致するものが存在するか否かを判断する(ステップS224)。当該判断結果が否定的である場合、当該サービスは登録が未だ行われていないサービスである。この場合、サービス登録プロバイダモジュール54は、Webサービスサーバモジュール52及びHTTPサーバモジュール51を介してエラーメッセージを情報処理装置50に送信して処理を終了する。ここでは、処理要求に含まれる変更対象のサービスのURLと一致するURLが登録済URLリストに記憶されているものとし、当該サービスは既に登録されているサービスであるものとする。この場合、サービス設定記述登録部54cは、当該処理要求によって削除が要求されているサービスが削除可能であると判断して、サービス存在検証処理を終了して、図21のステップS207に進む。
ステップS207では、サービス設定記述登録部54cは、サービス削除処理を行う。図23は、サービス削除処理の詳細な手順を示すフローチャートである。サービス設定記述登録部54cは、上述の処理要求に含まれるURLと対応付けられて記憶装置59に記憶されている設定記述ファイルにおいて、当該URLを削除することをデータ管理モジュール56に要求する(ステップS240)。データ管理モジュール56は、当該要求に応じて、該当の設定記述ファイルを記憶装置59から読み出し(ステップS241)、この設定記述ファイルから当該URLを削除して、当該URLを削除した設定記述ファイルを記憶装置59に記憶する(ステップS242)。その後、データ管理モジュール56は、対象のサービスの削除が完了したことをサービス設定記述登録部54cに通知して(ステップS243)、サービス削除処理を終了する。このサービス削除処理の結果、処理要求によって削除が要求されたサービスが情報処理装置50において削除される。この後、当該サービスは利用することができなくなる。
図21に戻り、ステップS207の後、ステップS208に進み、ここでは、サービス登録プロバイダモジュール54のサービス設定記述登録部54cは、処理要求に応じたサービスが削除されたことを示す削除完了情報を生成してこれをWebサービスサーバモジュール52に渡す。Webサービスサーバモジュール52は、変更内容情報を受け取ると、これをHTTPサーバモジュール51に渡す(ステップS209)。HTTPサーバモジュール51は、当該削除完了情報を受け取ると、これをHTTPの形式に変換して他の情報処理装置100に送信する(ステップS210)。ここで他の情報処理装置100に送信される削除完了情報は、例えば、「HTTP/1.1 200 OK」などのHTTPメッセージ等である。他の情報処理装置100は、このような削除完了情報を受信する(ステップS211)。
以上のような構成により、サービスの削除を要求する上述の処理要求を他の情報処理装置100から情報処理装置50に送信することで、情報処理装置50において、実行モジュールの動的な追加やシステムの再起動等の必要なく、サービスが削除される。即ち、削除対象のサービスのための実行モジュールを削除したり、また、サービスの削除を有効にするために、情報処理装置50を再起動したりする必要もない。
[変形例]
なお、本発明は前記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、前記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。また、以下に例示するような種々の変形が可能である。
<変形例1>
上述した各実施の形態において、情報処理装置50は組込み型の情報処理装置であるとしたが、各種モジュールなどの各種プログラム自体を追加する場合には、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良い。また当該各種プログラムを、インストール可能な形式又は実行可能な形式のファイルでCD−ROM、フレキシブルディスク(FD)、CD−R、DVD(Digital Versatile Disk)等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成しても良い。
<変形例2>
上述した各実施の形態において、本発明の情報処理装置を情報処理装置50に適用した例を示したが、これに限定されるものではなく、コピー機、プリンタ、ファクシミリ等の画像処理装置にも適用することが可能である。
<変形例3>
また、上述した第1の実施の形態においては、サービスの形態として、情報の参照と情報の設定とを取り扱い、第2の実施の形態においては、情報の変更と情報の削除とを取り扱ったが、サービスの形態は、これらに限らない。
また、上述の第1の形態の一部又は全部及び第2の実施の形態の一部又は全部を組み合わせても良い。
尚、例えば、サービスの形態として、情報の登録と情報の変更と情報の削除とのみを取り扱う場合、情報処理装置50のソフトウェア構成においては動的サービスプロバイダモジュール55を有さない構成であっても良い。
<変形例4>
上述した各実施の形態においては、リソースオブジェクトにアクセス権を設定するようにしても良く、データ管理モジュール56は、情報処理装置50において予め設定したアクセス権に応じて、リソースオブジェクトへのアクセスを制御するようにしても良い。この場合、上述の追加要求は、リソース同士のリンク関係やリソースのアクセス権を示す情報を含んでも良い。
第1の実施の形態にかかる情報処理装置のソフトウェア構成を例示する図である。 サービスの登録を要求する処理要求を例示する図である。 Webサービスモジュール52、サービス登録プロバイダモジュール54及び動的サービスプロバイダモジュール55の詳細な構成を例示する図である。 サービスの登録を行う処理の手順を示すフローチャートである。 登録内容検証処理の詳細な手順を示すフローチャートである。 サービス登録処理の詳細な手順を示すフローチャートである。 設定記述ファイルを例示する図である。 図2に示した処理要求に応じて他の情報処理装置100に送信される登録内容情報を例示する図である。 情報を参照するサービスを利用する場合の手順を示すフローチャートである。 情報を参照するサービスの利用を要求する処理要求を例示する図である。 情報参照サービス提供処理の詳細な手順を示すフローチャートである。 他の情報処理装置100に送信される出力データを例示する図である。 情報を設定するサービスを利用する処理の手順を示すフローチャートである。 情報を設定するサービスの利用を要求する処理要求を例示する図である。 情報設定サービス提供処理の詳細な手順を示すフローチャートである。 第2の実施の形態にかかるサービスの変更を要求する処理要求を例示する図である。 同実施の形態にかかるサービスの削除を要求する処理要求を例示する図である。 同実施の形態にかかるサービスの変更を行う処理の手順手順を示すフローチャートである。 同実施の形態にかかる変更内容検証処理の詳細な手順を示すフローチャートである。 同実施の形態にかかるサービス変更処理の詳細な手順を示すフローチャートである。 同実施の形態にかかるサービスを削除する処理の手順手順を示すフローチャートである。 同実施の形態にかかるサービス存在検証処理の詳細な手順を示すフローチャートである。 同実施の形態にかかるサービス削除処理の詳細な手順を示すフローチャートである。
符号の説明
50 情報処理装置
51 HTTPサーバモジュール(受信手段)
52 Webサービスサーバモジュール
52a サービス振分け部
52c サービスハンドラ部
52b URL確認部
53 サービスプロバイダモジュール
54 サービス登録プロバイダモジュール(設定記述情報生成手段、記憶制御手段)
54a 登録受付部
54b サービス検証部
54c サービス設定記述登録部
55 動的サービスプロバイダモジュール(読出手段、提供手段)
55a 管理部
55b 情報操作部
55c 中間データ保持部
55d 表現変換出力部
56 データ管理モジュール(記憶制御手段、読出手段)
57 中間データ変換モジュール
58 表現変換モジュール
59 記憶装置(記憶手段)
100 情報処理装置
NT ネットワーク

Claims (10)

  1. ネットワークを介して他の情報処理装置と通信可能であり、実現可能な機能が予め組み込まれた情報処理装置であって、
    他の情報処理装置に対して提供するサービスとして追加可能なサービスに対して予め割り当てられた格納場所を示す格納場所情報と、サービスで利用するデータであり当該データを一意に識別可能なデータ識別子が対応付けられたデータとを予め記憶する記憶手段と、
    前記格納場所情報と前記データ識別子とを含み、サービスに対する処理を要求する処理要求を他の情報処理装置から受信する受信手段と、
    前記受信手段が受信した前記処理要求が、前記サービスの追加を要求する追加要求であるか前記サービスの利用を要求する利用要求であるかを判断する要求判断手段と、
    前記要求判断手段により前記処理要求が前記追加要求と判断された場合、前記処理要求に含まれる前記格納場所情報が示す前記格納場所と前記データ識別子とを含む設定記述情報を生成する設定記述情報生成手段と、
    前記設定記述情報生成手段が生成した前記設定記述情報を、前記処理要求に含まれる前記格納場所情報が示す前記格納場所と対応付けて前記記憶手段に記憶する記憶制御手段と
    前記要求判断手段により前記処理要求が前記利用要求と判断された場合、前記処理要求に含まれる前記格納場所情報が示す前記格納場所と対応付けられて前記記憶手段に記憶されている前記設定記述情報を用いて、前記処理要求に含まれる前記データ識別子が対応付けられた前記データを前記記憶手段から読み出す読出手段と、
    前記読出手段が読み出した前記データを用いて、前記サービスを提供する提供手段とを備える
    ことを特徴とする情報処理装置。
  2. 前記設定記述情報生成手段は、前記要求判断手段により前記処理要求が前記追加要求と判断された場合、前記処理要求に含まれる前記格納場所情報が前記記憶手段に記憶されているか否かを判断する第1判断を行い、前記第1判断の結果が肯定的である場合、前記処理要求に含まれる前記データ識別子によって識別される前記データが前記記憶手段に記憶されているか否かを判断する第2判断を行い、前記第2判断の結果が肯定的である場合、前記処理要求に応じて、前記設定記述情報を生成す
    ことを特徴とする請求項1に記載の情報処理装置。
  3. 前記処理要求は、前記サービスの形態を示す操作子を更に含み、
    前記設定記述情報生成手段は、前記処理要求に含まれる前記操作子を含む前記設定記述情報を生成し、
    前記提供手段は、前記読出手段が読み出した前記データを用いて、前記処理要求に含まれる前記操作子によって示される形態に応じて、前記サービスを提供する
    ことを特徴とする請求項1又は2に記載の情報処理装置。
  4. 前記サービスの形態は、前記データの値の参照及び前記データの値の設定のうち少なくとも一方であり、
    前記提供手段は、前記操作子が前記データの値の参照を示す場合、前記読出手段が読み出した前記データの値を前記他の情報処理装置に送信することにより、前記サービスを提供する
    ことを特徴とする請求項に記載の情報処理装置。
  5. 前記提供手段は、前記操作子が前記データの値の設定を示す場合、前記読出手段が読み出した前記データの値を、前記処理要求に含まれる前記データの値を設定するための設定値に更新することにより、前記サービスを提供する
    ことを特徴とする請求項に記載の情報処理装置。
  6. 前記処理要求は、既に追加された前記サービスの変更を要求する変更要求である場合、前記データ識別子が対応付けられた記データから変更される変更後のデータを一意に識別可能なデータ識別子を更に含み
    前記要求判断手段は、前記受信手段が受信した前記処理要求が、前記変更要求であるかを更に判断し、
    前記要求判断手段により前記処理要求が前記変更要求と判断された場合、前記処理要求に含まれる前記格納場所情報が示す記格納場所と対応付けられて前記記憶手段に記憶されている前記設定記述情報を読み出す第1設定読出手段と、
    前記第1設定読出手段が読み出した前記設定記述情報に含まれ且つ前処理要求に含まれる前記データ識別子を、前記処理要求に含まれる前記変更後のデータを一意に識別可能なデータ識別子に変更する変更手段とを更に備える
    ことを特徴とする請求項1乃至のいずれか一項に記載の情報処理装置。
  7. 前記第1設定読出手段は、前記要求判断手段により前記処理要求が前記変更要求と判断された場合、前記処理要求に含まれる前記格納場所情報が前記記憶手段に記憶されているか否かを判断する第1判断を行い、前記第1判断の結果が肯定的である場合、前記処理要求に含まれる前記データ識別子によって識別される前記データが前記記憶手段に記憶されているか否かを判断する第2判断を行い、前記第2判断の結果が肯定的である場合、前記設定記述情報を読み出す
    ことを特徴とする請求項6に記載の情報処理装置。
  8. 前記要求判断手段は、前記受信手段が受信した前記処理要求が、既に追加された前記サービスの削除を要求する削除要求であるかを更に判断し、
    前記要求判断手段により前記処理要求が前記削除要求と判断された場合、前記処理要求に含まれる前記格納場所情報が示す記格納場所と対応付けられて前記記憶手段に記憶されている前記設定記述情報を読み出す第2設定読出手段と、
    前記第2設定読出手段が読み出した前記設定記述情報に含まれ且つ前処理要求に含まれる前記格納場所情報を、当該設定記述情報から削除する削除手段とを更に備える
    ことを特徴とする請求項1乃至のいずれか一項に記載の情報処理装置。
  9. ネットワークを介して他の情報処理装置と通信可能であり、実現可能な機能が予め組み込まれた情報処理装置で実行されるサービス制御方法であって、
    前記情報処理装置は、他の情報処理装置に対して提供するサービスとして追加可能なサービスに対して予め割り当てられた格納場所を示す格納場所情報と、サービスで利用するデータであり当該データを一意に識別可能なデータ識別子が対応付けられたデータとを予め記憶する記憶手段を備え、
    信手段が、前記格納場所情報と前記データ識別子とを含み、サービスに対する処理を要求する処理要求を他の情報処理装置から受信する受信工程と、
    要求判断手段が、前記受信工程で受信した前記処理要求が、前記サービスの追加を要求する追加要求であるか前記サービスの利用を要求する利用要求であるかを判断する要求判断工程と、
    定記述情報生成手段が、前記要求判断工程で前記処理要求が前記追加要求と判断された場合、前記処理要求に含まれる前記格納場所情報が示す前記格納場所と前記データ識別子とを含む設定記述情報を生成する設定記述情報生成工程と、
    憶制御手段が、前記設定記述情報生成工程で生成した前記設定記述情報を、前記処理要求に含まれる前記格納場所情報が示す前記格納場所と対応付けて前記記憶手段に記憶する記憶制御工程と
    読出手段が、前記要求判断工程で前記処理要求が前記利用要求と判断された場合、前記処理要求に含まれる前記格納場所情報が示す前記格納場所と対応付けられて前記記憶手段に記憶されている前記設定記述情報を用いて、前記処理要求に含まれる前記データ識別子が対応付けられた前記データを前記記憶手段から読み出す読出工程と、
    提供手段が、前記読出工程で読み出した前記データを用いて、前記サービスを提供する提供工程とを含む
    ことを特徴とするサービス制御方法。
  10. ネットワークを介して他の情報処理装置と通信可能であり、実現可能な機能が予め組み込まれたコンピュータで実行されるサービス制御プログラムであって、
    前記コンピュータは、他の情報処理装置に対して提供するサービスとして追加可能なサービスに対して予め割り当てられた格納場所を示す格納場所情報と、サービスで利用するデータであり当該データを一意に識別可能なデータ識別子が対応付けられたデータとを予め記憶する記憶手段を備え、
    前記格納場所情報と前記データ識別子とを含み、サービスに対する処理を要求する処理要求を他の情報処理装置から受信する受信工程と、
    前記受信工程で受信した前記処理要求が、前記サービスの追加を要求する追加要求であるか前記サービスの利用を要求する利用要求であるかを判断する要求判断工程と、
    前記要求判断工程で前記処理要求が前記追加要求と判断された場合、前記処理要求に含まれる前記格納場所情報が示す前記格納場所と前記データ識別子とを含む設定記述情報を生成する設定記述情報生成工程と、
    前記設定記述情報生成工程で生成した前記設定記述情報を、前記処理要求に含まれる前記格納場所情報が示す前記格納場所と対応付けて前記記憶手段に記憶する記憶制御工程と、
    前記要求判断工程で前記処理要求が前記利用要求と判断された場合、前記処理要求に含まれる前記格納場所情報が示す前記格納場所と対応付けられて前記記憶手段に記憶されている前記設定記述情報を用いて、前記処理要求に含まれる前記データ識別子が対応付けられた前記データを前記記憶手段から読み出す読出工程と、
    前記読出工程で読み出した前記データを用いて、前記サービスを提供する提供工程と、
    を前記コンピュータに実行させるためのサービス制御プログラム。
JP2008111260A 2008-01-29 2008-04-22 情報処理装置、サービス制御方法及びサービス制御プログラム Expired - Fee Related JP5078726B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008111260A JP5078726B2 (ja) 2008-01-29 2008-04-22 情報処理装置、サービス制御方法及びサービス制御プログラム

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2008017506 2008-01-29
JP2008017506 2008-01-29
JP2008111260A JP5078726B2 (ja) 2008-01-29 2008-04-22 情報処理装置、サービス制御方法及びサービス制御プログラム

Publications (2)

Publication Number Publication Date
JP2009205664A JP2009205664A (ja) 2009-09-10
JP5078726B2 true JP5078726B2 (ja) 2012-11-21

Family

ID=41147811

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008111260A Expired - Fee Related JP5078726B2 (ja) 2008-01-29 2008-04-22 情報処理装置、サービス制御方法及びサービス制御プログラム

Country Status (1)

Country Link
JP (1) JP5078726B2 (ja)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4141209B2 (ja) * 2002-03-25 2008-08-27 株式会社リコー Webサービス機能を有する画像形成装置
US7590988B2 (en) * 2005-03-08 2009-09-15 Microsoft Corporation Dynamic service generation for legacy components
JP2006252481A (ja) * 2005-03-14 2006-09-21 Ricoh Co Ltd 機能提供装置、機能提供方法、機能提供プログラム及び記録媒体

Also Published As

Publication number Publication date
JP2009205664A (ja) 2009-09-10

Similar Documents

Publication Publication Date Title
KR101505234B1 (ko) 원격 리소스들의 웹 액세스를 위한 xml-기반 웹 피드
KR101850582B1 (ko) 정보 처리 단말, 정보 처리 단말의 제어 방법, 및 컴퓨터 판독가능 기억 매체
US7779409B2 (en) Device-to-device software distribution
JP4353487B2 (ja) ローカル・プロキシにより通信情報を共有する方法
JP5026430B2 (ja) ソフトウェア・アドイン・コンポーネントの発見、資格認定、および起動すること
US20150128121A1 (en) Dynamic application version selection
US20140372970A1 (en) Method to auto generate jax-rs rest service implementation classes from existing interfaces
JP5384646B2 (ja) ウェブサイトについての代替ユーザエクスペリエンスを発見する方法
US20050160153A1 (en) Publishing multipart WSDL files to URL
WO2016057108A1 (en) Dynamic loading of routes in a single-page application
US9307010B2 (en) Data upload method using shortcut
JP5638761B2 (ja) 画面生成方法、画面表示方法、画面生成装置、及びプログラム
JP5488349B2 (ja) 中継装置、中継方法及び中継プログラム
JP2004303218A (ja) 情報提供装置及び情報表示装置
JP5610654B2 (ja) 端末管理パッケージを提供する装置及び前記端末管理パッケージを受信する方法
JP5078726B2 (ja) 情報処理装置、サービス制御方法及びサービス制御プログラム
JP2011175461A (ja) 通信システム及びサーバ及び端末装置及び通信システムの通信方法及びサーバ用プログラム及び端末用プログラム
JPWO2013098925A1 (ja) 情報処理装置、情報処理システム、情報処理方法およびプログラム
WO2005114400A1 (en) Method and apparatus for supporting multiple versions of a web services protocol
JP6323081B2 (ja) 情報処理システム及び情報処理方法
JP2005039557A (ja) ソフトウェア無線機
JP6128259B2 (ja) 情報処理システム及び情報処理方法
US8825686B2 (en) Expression evaluation over multiple data models
JP5927930B2 (ja) 情報処理装置及びプログラム
US10523630B2 (en) Information processing apparatus, storage medium, and control method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20101206

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120518

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120529

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120719

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: 20120807

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: 20120828

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

Free format text: PAYMENT UNTIL: 20150907

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5078726

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees