JP2006020341A - Image forming apparatus including web service functions - Google Patents

Image forming apparatus including web service functions Download PDF

Info

Publication number
JP2006020341A
JP2006020341A JP2005209322A JP2005209322A JP2006020341A JP 2006020341 A JP2006020341 A JP 2006020341A JP 2005209322 A JP2005209322 A JP 2005209322A JP 2005209322 A JP2005209322 A JP 2005209322A JP 2006020341 A JP2006020341 A JP 2006020341A
Authority
JP
Japan
Prior art keywords
web service
processing
image forming
request
forming apparatus
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.)
Pending
Application number
JP2005209322A
Other languages
Japanese (ja)
Inventor
Tatsuo Ito
達雄 伊藤
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 JP2005209322A priority Critical patent/JP2006020341A/en
Publication of JP2006020341A publication Critical patent/JP2006020341A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Accessory Devices And Overall Control Thereof (AREA)
  • Facsimiles In General (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide an image forming apparatus capable of offering Web services without installing a plurality of drivers for utilizing a plurality of image forming functions in a computer terminal that a user uses, and without depending on a machine type of the computer terminal or its operating system. <P>SOLUTION: In an image forming apparatus, a network communication control means controls communications by a process request from a device connected through a network and a process response to the device, and a Web service providing process part performs processing for controlling the image forming apparatus based on a message described in accordance with a predetermined message exchange protocol within the process request and generates the process response, in accordance with the predetermined message exchange protocol, showing a process result. <P>COPYRIGHT: (C)2006,JPO&NCIPI

Description

本発明は、利用者が使用するコンピュータ端末に、複数の画像形成機能を利用するために複数のドライバ・ソフトウェアをインストールすることなく、標準的なWebサービス対応ソフトウェアをインストールするだけでよく、また、該コンピュータ端末の機種又はオペレーティングシステムに依存することなく、Webサービスの提供を可能とし、他の機器からの処理要求も統一的に処理することが可能となる画像形成装置を提供するものである。   In the present invention, it is only necessary to install standard Web service compatible software on a computer terminal used by a user without installing a plurality of driver software in order to use a plurality of image forming functions. It is an object of the present invention to provide an image forming apparatus that can provide a Web service without depending on the model or operating system of the computer terminal and can uniformly process processing requests from other devices.

近年、プリンタ、コピー、ファクシミリ、スキャナなどの各装置の機能を1つの筐体内に収納した画像形成装置が一般的に知られている。このような複合型の画像形成装置は、1つの筐体内に表示部、印刷部および撮像部などを設けるとともに、プリンタ、コピーおよびファクシミリ装置にそれぞれ対応する3種類のアプリケーションを設け、アプリケーションの切り替えによって、当該装置をプリンタ、コピー、スキャナまたはファクシミリ装置として動作させるものである。   2. Description of the Related Art In recent years, image forming apparatuses in which functions of apparatuses such as a printer, a copy machine, a facsimile machine, and a scanner are housed in a single casing are generally known. Such a composite-type image forming apparatus is provided with a display unit, a printing unit, an imaging unit, and the like in one casing, and three types of applications corresponding to a printer, a copy unit, and a facsimile device, respectively. The apparatus is operated as a printer, a copy, a scanner, or a facsimile apparatus.

しかしながら、上記従来の複合型画像形成装置においては、ネットワークを介して接続される複数のPC(パーソナルコンピュータ)からプリンタ、コピー、ファクシミリ、スキャナ等の機能を利用する場合、各PCに各画像形成機能に応じたドライバ等のソフトウェアをインストールする必要があった。また、PCにインストールされるそれらソフトウェアは、該PCの機種及びオペレーティングシステムに対応したものでなければならない。また、同様な要求がサーバー等の機器との間でも要求されることがあるが、要求される処理のプロトコルや処理単位が異なるため、実装時には両方の要求を満たすようにする必要があった。更に、従来の利用形態では、ドライバによって決まった処理しか行うことができない等の制限があった。   However, in the conventional composite image forming apparatus, when functions such as a printer, a copy, a facsimile, and a scanner are used from a plurality of PCs (personal computers) connected via a network, each image forming function is assigned to each PC. It was necessary to install software such as drivers according to The software installed in the PC must be compatible with the model and operating system of the PC. In addition, similar requests may be requested between devices such as servers. However, since the required processing protocol and processing unit are different, it is necessary to satisfy both requirements at the time of mounting. Furthermore, in the conventional usage mode, there is a restriction that only processing determined by the driver can be performed.

そこで、本発明の課題は、利用者が使用するコンピュータ端末に複数の画像形成機能を利用するための複数のドライバ・ソフトウェアをインストールすることなく、該コンピュータ端末の機種又はオペレーティングシステムに依存することなく、画像形成装置の機能をネットワークを介してインターネット標準の各種Webプロトコルを利用してアクセス可能なプログラマブルなアプリケーションコンポーネントとして利用できる画像形成装置を提供することである。また、画像形成装置内又は画像形成装置と他装置間とにおいて、Webサービスが他Webサービスとやり取りする分散環境を実現する画像形成装置を提供する。   Therefore, an object of the present invention is to install a plurality of driver software for using a plurality of image forming functions in a computer terminal used by a user and without depending on a model or operating system of the computer terminal. Another object of the present invention is to provide an image forming apparatus that can be used as a programmable application component in which the functions of the image forming apparatus can be accessed using various Internet standard Web protocols via a network. Also provided is an image forming apparatus that realizes a distributed environment in which a Web service interacts with another Web service within the image forming apparatus or between the image forming apparatus and another apparatus.

上記課題を解決するため、本発明は、ネットワークを介して接続された機器からの処理リクエスト及び該機器への処理レスポンスの通信制御を行うネットワーク通信制御手段と、上記処理リクエスト内に所定記述形式に従って記述されたメッセージに基づいて、画像形成装置に関する内部情報を処理し、その処理結果を示す処理レスポンスを生成するWebサービス手段とを有ように構成される。   In order to solve the above problems, the present invention provides a network communication control means for performing communication control of a processing request from a device connected via a network and a processing response to the device, and a predetermined description format in the processing request. Web service means for processing internal information related to the image forming apparatus based on the described message and generating a processing response indicating the processing result is provided.

このような画像形成装置では、SOAPを利用せずにWebサービスの提供を行うことができる。上記所定記述形式は、機器との間で取り決められた記述形式であって、例えば、XMLである。   Such an image forming apparatus can provide a Web service without using SOAP. The predetermined description format is a description format negotiated with the device, and is, for example, XML.

また、本発明は、上記画像処理装置での処理を行う画像形成方法とすることもできる。   The present invention may also be an image forming method for performing processing in the image processing apparatus.

更に、上記課題を解決するため、本発明は、利用者による処理要求に応じて、所定記述形式に従って、該処理要求を示す処理リクエストを生成する処理リクエスト生成手段と、所定記述形式に従って上記画像形成装置から送信された上記処理リクエストに対する処理レスポンスによって示される処理結果の出力を制御する出力制御手段とを有するように構成される。   Furthermore, in order to solve the above-described problem, the present invention provides a processing request generation means for generating a processing request indicating the processing request according to a predetermined description format in response to a processing request by a user, and the image formation according to the predetermined description format. Output control means for controlling the output of the processing result indicated by the processing response to the processing request transmitted from the apparatus.

このような利用者端末では、機種又はオペレーティングシステムに依存することなく、複数のWebサービスを提供する装置から所望のWebサービスの提供を受けることができる。   Such a user terminal can receive a desired Web service from an apparatus that provides a plurality of Web services without depending on the model or operating system.

本願発明によれば、利用者が使用するコンピュータ端末に複数の画像形成機能を利用するために複数のドライバ・ソフトウェアをインストールすることなく、標準的なWebサービス対応ソフトウェアをインストールするだけでよい。また、該コンピュータ端末の機種又はオペレーティングシステムに依存することなく、複数の画像形成機能を有する融合機への処理要求を行うこと可能となるだけでなく、他の機器からの処理要求も統一的に処理することが可能となる。   According to the present invention, it is only necessary to install standard Web service compatible software without installing a plurality of driver software in order to use a plurality of image forming functions in a computer terminal used by a user. In addition, it is possible not only to make a request for processing to a multi-function peripheral having a plurality of image forming functions, but also to uniformly request processing from other devices, without depending on the model or operating system of the computer terminal. It becomes possible to process.

以下、本発明の実施の形態を図面に基づいて説明する。   Hereinafter, embodiments of the present invention will be described with reference to the drawings.

多種の画像形成機能を融合する本発明の実施の一形態に係る画像形成装置(以下、融合機と言う)は、例えば、図1に示すような機能構成を成す。図1は、本発明の一実施例に係る多種の画像形成機能を融合する融合機の機能構成を示すブロック図である。   An image forming apparatus according to an embodiment of the present invention (hereinafter referred to as a fusion machine) that fuses various image forming functions has a functional configuration as shown in FIG. FIG. 1 is a block diagram showing a functional configuration of a multi-function apparatus that fuses various image forming functions according to an embodiment of the present invention.

図1において、融合機1200は、プロッタ1201と、スキャナ1202と、ファクシミリなどのハードウェアリソース1203などを有するとともに、プラットフォーム1220とアプリケーション1230とから構成されるソフトウェア群1210と、融合機起動部1240とを備えている。   In FIG. 1, the MFP 1200 includes a plotter 1201, a scanner 1202, a hardware resource 1203 such as a facsimile, and the like, a software group 1210 including a platform 1220 and an application 1230, and a MFP starter 1240. It has.

融合機起動部1240は、融合機1200の電源投入時に先ず始めに実行され、プラットフォーム1220やアプリケーション1230を起動する。   The MFP starter 1240 is first executed when the MFP 1200 is turned on to start the platform 1220 and the application 1230.

プラットフォーム1220は、アプリケーション1230からの処理要求を解釈して、ハードウェア資源の獲得要求を発生させる下記に示すコントロールサービス1250と、一または複数のハードウェア資源の管理をおこない、コントロールサービス1250からの獲得要求を調停するシステムリソースマネージャー(SRM(System Resource Manager)1223)と、OS1221とを有する。   The platform 1220 interprets a processing request from the application 1230, generates a hardware resource acquisition request, and manages one or a plurality of hardware resources, and acquires from the control service 1250. It has a system resource manager (SRM (System Resource Manager) 1223) that arbitrates requests, and an OS 1221.

このコントロールサービス1250は、複数のサービスモジュールにより形成され、具体的には、SCS(System Control Service)1222と、ECS((Engine Control Service)1224と、MCS(Memory Control Service)1225と、OCS(Operation panel Control Service)1226と、FCS(FAX Control Service)1227と、NCS(Network Control Service)1228と、IMH(Imaging Memory Handler)1229とがある。なお、このプラットフォーム1220は、あらかじめ定義された関数により前記アプリケーションからの処理要求を受信可能とするアプリケーションプログラムインターフェースを有する。   The control service 1250 is formed by a plurality of service modules. Specifically, an SCS (System Control Service) 1222, an ECS (Engine Control Service) 1224, an MCS (Memory Control Service) 1225, and an OCS (Operation panel control service) 1226, FCS (FAX Control Service) 1227, NCS (Network Control Service) 1228, and IMH (Imaging Memory Handler) 1229. Note that the platform 1220 has a function defined in advance. It has an application program interface that can receive a processing request from an application.

OS1221は、UNIX(登録商標)などのオペレーティング・システムであり、プラットフォーム1220並びにアプリケーション1230の各ソフトウェアをそれぞれプロセスとして並列実行する。オープンソースのUNIX(登録商標)を用いることにより、プログラムの安全性を確保できるとともに、ネットワーク対応可能となり、ソースコードの入手も容易となる。さらに、OS、TCP/IPのロイヤリティが不要であり、アウトソーシングも容易となる。   The OS 1221 is an operating system such as UNIX (registered trademark), and executes the software of the platform 1220 and the application 1230 in parallel as processes. By using open source UNIX (registered trademark), the safety of the program can be secured, the network can be supported, and the source code can be easily obtained. Furthermore, OS and TCP / IP royalties are unnecessary, and outsourcing is easy.

SRM1223は、SCS1222とともにシステムの制御およびリソースの管理をおこなうものであり、スキャナやプロッタなどのエンジン部、メモリ、HDDファイル、ホストI/O(セントロI/F、ネットワークI/F、IEEE1394I/F、RS232CI/Fなど)のハードウェア資源を利用する上位層からの要求にしたがって調停をおこない、実行制御する。   The SRM 1223, together with the SCS 1222, performs system control and resource management, and includes engine units such as scanners and plotters, memory, HDD files, host I / O (Centro I / F, network I / F, IEEE 1394 I / F, RS232CI / F, etc.) arbitration is performed according to a request from a higher layer using hardware resources, and execution control is performed.

具体的には、このSRM1223は、要求されたハードウェア資源が利用可能であるかどうか(他の要求により利用されていないかどうか)を判断し、利用可能であれば要求されたハードウェア資源が利用可能である旨を上位層に伝える。また、上位層からの要求に対してハードウェア資源の利用スケジューリングをおこない、要求内容(たとえば、プリンタエンジンによる紙搬送と作像動作、メモリ確保、ファイル生成など)を直接実施するようにしてもよい。   Specifically, the SRM 1223 determines whether the requested hardware resource is available (whether it is not used by another request). If it is available, the requested hardware resource is Tell the upper layer that it is available. Also, hardware resource usage scheduling may be performed in response to a request from an upper layer, and the requested contents (for example, paper conveyance and image forming operation by the printer engine, memory allocation, file generation, etc.) may be directly executed. .

SCS1222は、アプリ管理(機能1)、操作部制御(機能2)、システム画面表示(ジョブリスト画面、カウンタ表示画面など)(機能3)、LED表示(機能4)、リソース管理(機能5)、割り込みアプリ制御(機能6)等の複数の機能を行なう。具体的には、アプリ管理(機能1)では、アプリの登録と、その情報を他のアプリに通知する処理をおこなう。操作部制御(機能2)では、アプリの操作部使用権の排他制御をおこなう。システム画面表示(機能3)では、操作部使用権を持つアプリからの要求内容に応じて、エンジン部の状態に対応する警告画面の表示をおこなう。LED表示(機能4)では、警告LED、アプリキーなどのシステムLEDの表示制御をおこなう。リソース管理(機能5)では、アプリ(ECS)がジョブを実行するにあたって、排他しなければならないエンジンリソース(スキャナ、ステープルなど)の排他制御のためのサービスをおこなう。割り込みアプリ制御(機能6)では、特定のアプリを優先動作させるための制御及びサービスをおこなう。   The SCS 1222 includes application management (function 1), operation unit control (function 2), system screen display (job list screen, counter display screen, etc.) (function 3), LED display (function 4), resource management (function 5), A plurality of functions such as interrupt application control (function 6) are performed. Specifically, in application management (function 1), application registration and processing for notifying other applications of the information are performed. In the operation unit control (function 2), exclusive control of the operation unit use right of the application is performed. In the system screen display (function 3), a warning screen corresponding to the state of the engine unit is displayed according to the request content from the application having the operation unit usage right. In LED display (function 4), display control of system LEDs such as warning LEDs and application keys is performed. Resource management (function 5) provides services for exclusive control of engine resources (scanners, staples, etc.) that must be excluded when an application (ECS) executes a job. In the interrupt application control (function 6), control and service for preferential operation of a specific application are performed.

ECS1224は、プロッタ1201と、スキャナ1202と、その他ハードウェアリソース1203などのエンジン部を制御するものであり、画像読み込みと印刷動作、状態通知、ジャムリカバリなどをおこなう。   The ECS 1224 controls engine units such as the plotter 1201, the scanner 1202, and other hardware resources 1203, and performs image reading and printing operations, status notification, jam recovery, and the like.

MCS1225は、メモリ制御をおこなうものであり、具体的には、画像メモリの取得および開放、ハードディスク装置(HDD)の利用、画像データの圧縮および伸張などをおこなう。   The MCS 1225 performs memory control. Specifically, the MCS 1225 acquires and releases an image memory, uses a hard disk device (HDD), compresses and decompresses image data, and the like.

OCS1226は、オペレータと本体制御間の情報伝達手段となる操作パネルを制御するモジュールであり、オペレータのキー操作イベントを本体制御に通知する処理、各アプリがGUIを構築するためのライブラリ関数を提供する処理、構築されたGUI情報をアプリ別に管理する処理、操作パネル上への表示反映処理などをおこなう。   The OCS 1226 is a module that controls an operation panel serving as information transmission means between the operator and the main body control, and provides a process for notifying the main body control of an operator's key operation event and a library function for each application to construct a GUI. Processing, processing for managing the constructed GUI information for each application, display reflection processing on the operation panel, and the like are performed.

FCS1227は、システムコントローラの各アプリ層からPSTN/ISDN網を使ったファクシミリ送受信、BKM(バックアップSRAM)で管理されている各種ファクシミリデータの登録/引用、ファクシミリ読み取り、ファクシミリ受信印刷、融合送受信をおこなうためのAPI(Application Program Interface)を提供する。   The FCS 1227 performs facsimile transmission / reception using PSTN / ISDN network from each application layer of the system controller, registration / quotation of various facsimile data managed by BKM (backup SRAM), facsimile reading, facsimile reception printing, and fusion transmission / reception. API (Application Program Interface).

NCS1228は、ネットワークI/Oを必要とするアプリケーションに対して共通に利用できるサービスを提供するためのモジュール群であり、ネットワーク側から各プロトコルによって受信したデータを各アプリケーションに振り分けたり、アプリケーションからデータをネットワーク側に送信する際の仲介をおこなう。   The NCS 1228 is a module group for providing a service that can be commonly used for applications that require network I / O. The NCS 1228 distributes data received by each protocol from the network side to each application, and distributes data from the application. Mediates when sending to the network side.

本実施例において、例えば、NCS1228で、複数のプロトコルのうちhttpd(Hypertext Transfer Protocol Daemon)によって、インターネットを介して接続されるネットワーク機器とのデータ通信をHTTP(Hypertext Transfer Protocol)で制御し、HTTPリクエストヘッダで指定されるWebサービスに対応する処理部を関数コールによって起動し、そのWebサービスによる処理結果をHTTPレスポンスで該ネットワーク機器へ通知するように構成しても良い。Webサービスは、例えば、XML(eXtensible Markup Language)によって記述されたメッセージに従って提供される。   In this embodiment, for example, NCS 1228 controls data communication with a network device connected via the Internet by HTTP (Hypertext Transfer Protocol Daemon) out of a plurality of protocols by HTTP (Hypertext Transfer Protocol), and makes an HTTP request. A processing unit corresponding to the Web service specified by the header may be activated by a function call, and the processing result by the Web service may be notified to the network device by an HTTP response. The Web service is provided according to a message described in XML (eXtensible Markup Language), for example.

IMH1229は、イメージデータを仮想メモリ領域(ユーザ仮想空間)から物理メモリへマップする。プロセスの起動に応じて、システムコールを行ない、プロセス用の仮想メモリ領域をマップしたり、マップした仮想メモリ領域をプロセスの終了時に開放する処理等を行なう。   The IMH 1229 maps image data from a virtual memory area (user virtual space) to a physical memory. In response to the process activation, a system call is performed to map a virtual memory area for the process, or to release the mapped virtual memory area when the process ends.

アプリケーション1230は、ページ記述言語(PDL)、PCLおよびポストスクリプト(PS)を有するプリンタ用のアプリケーションであるプリンタアプリ1211と、コピー用アプリケーションであるコピーアプリ1212と、ファクシミリ用アプリケーションであるファックスアプリ1213と、スキャナ用アプリケーションであるスキャナアプリ1214と、WebサービスアプリケーションであるWebサービス処理アプリ1215と、工程検査用アプリケーションである工程検査アプリ1216とを有する。各アプリケーション1211〜1216は、プラットフォーム1220上の各プロセスを利用して動作実行し得るため、画面制御、キー操作制御およびジョブ生成などをおこなう画面表示制御プログラムがその主体となる。なお、NCS1228により接続されたネットワークを介して新たなアプリケーションをネットワーク経由で搭載することもできる。また、各アプリケーションはアプリケーションごとに追加または削除することができる。   The application 1230 includes a printer application 1211 that is a printer application having a page description language (PDL), PCL, and postscript (PS), a copy application 1212 that is a copy application, and a fax application 1213 that is a facsimile application. A scanner application 1214 that is a scanner application, a Web service processing application 1215 that is a Web service application, and a process inspection application 1216 that is a process inspection application. Each of the applications 1211 to 1216 can execute an operation by using each process on the platform 1220. Therefore, a screen display control program that performs screen control, key operation control, job generation, and the like is the main component. Note that a new application can also be installed via the network via the network connected by the NCS 1228. Each application can be added or deleted for each application.

Webサービス処理アプリ1215は、SOAP(Simple Object Access Protocol)に従ってメッセージ交換を行うSOAP処理部70と、API(Application Program Interface)を介してコントロールサービス1250を利用して所定処理を行い、その処理結果をWS−API(Web Service Application Program Interface)を介してWebサービスとして提供するWebサービスファンクション(WSF)1400とを有する。   The Web service processing application 1215 performs predetermined processing using a SOAP processing unit 70 that exchanges messages according to SOAP (Simple Object Access Protocol) and a control service 1250 via an API (Application Program Interface), and the processing result is obtained. A Web service function (WSF) 1400 provided as a Web service via a WS-API (Web Service Application Program Interface).

このように、融合機1200は、各アプリで共通的に必要となる処理をプラットフォーム1220で一元的に処理する。   As described above, the MFP 1200 centrally processes the processing that is commonly required for each application by the platform 1220.

次に、融合機1200のハードウェア構成について説明する。図2は、図1に示す融合機1200のハードウェア構成を示すブロック図である。図2に示すように、この融合機1200は、オペレーションパネル1310、FAXコントロールユニット1530、USB(Universal Serial Bus)1330、IEEE13941340およびエンジン部1350(プロッタ1201、スキャナ1202等が接続される)とコントローラ1300のASIC1301とをPCI(Peripheral Component Interconnect)バス等で接続した構成となる。   Next, the hardware configuration of the MFP 1200 will be described. FIG. 2 is a block diagram showing a hardware configuration of the MFP 1200 shown in FIG. As shown in FIG. 2, the MFP 1200 includes an operation panel 1310, a FAX control unit 1530, a USB (Universal Serial Bus) 1330, an IEEE 1394 1340, an engine unit 1350 (a plotter 1201, a scanner 1202, etc. are connected) and a controller 1300. The ASIC 1301 is connected via a PCI (Peripheral Component Interconnect) bus or the like.

コントローラ1300は、ASIC1301にMEM−C1302、HDD(Hard Disk Drive)1303などを接続するとともに、このASIC1301とCPU1304とをCPUチップセットのNB1305を介して接続している。このように、NB1305を介して接続する理由は、CPU1304自体のインターフェースが公開されていないためである。   The controller 1300 connects the ASIC 1301 to the MEM-C 1302, HDD (Hard Disk Drive) 1303, and the like, and connects the ASIC 1301 and the CPU 1304 via the NB 1305 of the CPU chipset. Thus, the reason for connecting via the NB 1305 is that the interface of the CPU 1304 itself is not disclosed.

ここで、このASIC1301とNB1305は、単にPCIを介して接続されているのではなく、AGP1308を介して接続されている。このようにAGP1308を介して接続することとした理由は、この融合機1200が図12に示したプラットフォーム1220やアプリケーション1230を形成する複数のプロセスを実行制御する関係上、これらを低速のPCIで接続したのでは、パフォーマンスが低下するからである。   Here, the ASIC 1301 and the NB 1305 are not connected via the PCI, but are connected via the AGP 1308. The reason for connecting through the AGP 1308 in this way is that the MFP 1200 executes and controls a plurality of processes forming the platform 1220 and the application 1230 shown in FIG. This is because performance decreases.

CPU1304は、融合機1200の全体制御をおこなうものであり、具体的には、OS1221上でプラットフォーム1220を形成するSCS1222、SRM1223、ECS1224、MCS1225、OCS1226、FCS1227、NCS1228をそれぞれプロセスとして起動して実行させるとともに、アプリケーション1230を形成するプリンタアプリ1211、コピーアプリ1212、ファックスアプリ1213、スキャナアプリ1214、Webサービス処理アプリ1215、工程検査アプリ1216を起動して実行させる。   The CPU 1304 performs overall control of the MFP 1200. Specifically, the SCS 1222, SRM 1223, ECS 1224, MCS 1225, OCS 1226, FCS 1227, and NCS 1228 that form the platform 1220 on the OS 1221 are started and executed as processes. At the same time, the printer application 1211, the copy application 1212, the fax application 1213, the scanner application 1214, the Web service processing application 1215, and the process inspection application 1216 that form the application 1230 are activated and executed.

NB1305は、CPU1304とMEM−P1306、SB1307、ASIC1301とを接続するためのブリッジであり、MEM−P1306は、融合機の描画用メモリなどとして用いるシステムメモリであり、SB1307は、NB1305とROM、PCIデバイス、周辺デバイスとを接続するためのブリッジである。MEM−C1302は、コピー用画像バッファ、符号バッファとして用いるローカルメモリであり、ASIC1301は、画像処理用のハードウェア要素を有する画像処理用途向けのICである。   The NB 1305 is a bridge for connecting the CPU 1304 to the MEM-P 1306, SB 1307, and ASIC 1301, and the MEM-P 1306 is a system memory used as a drawing memory for the multifunction peripheral. The SB 1307 is an NB 1305, ROM, and PCI device This is a bridge for connecting peripheral devices. The MEM-C 1302 is a local memory used as an image buffer for copying and a code buffer, and the ASIC 1301 is an IC for image processing applications having hardware elements for image processing.

HDD1310は、画像データの蓄積、プログラムの蓄積、フォントデータの蓄積、フォームの蓄積を行うためのストレージであり、オペレーションパネル1310は、操作者からの入力操作の受け付け並びに操作者に向けた表示をおこなう操作部である。   The HDD 1310 is a storage for accumulating image data, accumulating programs, accumulating font data, and accumulating forms. The operation panel 1310 accepts input operations from an operator and displays them for the operator. It is an operation unit.

したがって、ASIC1301には、MEM−C1302を接続するためのRAMインターフェースと、HDD1303を接続するためのハードディスクインターフェースが設けられ、これらの記憶部に対して画像データの入出力をおこなう場合には、入出力先がRAMインターフェースまたはハードディスクインターフェースに切り替えられる。   Accordingly, the ASIC 1301 is provided with a RAM interface for connecting the MEM-C 1302 and a hard disk interface for connecting the HDD 1303. When inputting / outputting image data to / from these storage units, the input / output The destination is switched to the RAM interface or the hard disk interface.

AGP1308は、グラフィック処理を高速化するために提案されたグラフィックスアクセラレーターカード用のバスインターフェースであり、システムメモリに高スループットで直接アクセスすることにより、グラフィックスアクセラレーターカードを高速にする。   The AGP 1308 is a bus interface for a graphics accelerator card that has been proposed to speed up graphics processing, and makes the graphics accelerator card faster by directly accessing the system memory with high throughput.

以下、上述したような図1に示す機能構成、及び、図2に示すハードウェア構成を有する融合機1200がWebサービスを提供するための機能構成例について説明する。ここで、Webサービスとは、ネットワーク機器からのHTTPリクエストによるサービス要求に応じて、融合機1200が所定の処理を行ない、その処理結果をHTTPレスポンスとしてネットワーク機器へ提供することを言う。   Hereinafter, a functional configuration example for providing the Web service by the MFP 1200 having the above-described functional configuration illustrated in FIG. 1 and the hardware configuration illustrated in FIG. 2 will be described. Here, the Web service means that the MFP 1200 performs a predetermined process in response to a service request by an HTTP request from a network device and provides the processing result to the network device as an HTTP response.

先ず、ネットワークを介して、融合機1200からWebサービスが提供される仕組みについて図3で説明する。図3は、Webサービスが提供されるネットワークの構成例を示す図である。図3中、Webサービスが提供される仕組みの概要を説明するため、詳細な機能構成の説明は省略される。   First, a mechanism for providing a Web service from the MFP 1200 via a network will be described with reference to FIG. FIG. 3 is a diagram illustrating a configuration example of a network in which a Web service is provided. In FIG. 3, a detailed description of the functional configuration is omitted in order to explain an outline of a mechanism for providing a Web service.

図3において、融合機1200は、ネットワーク機器10との通信制御を行うWebサーバー1101と、ネットワーク機器10との間でSOAPに従ってWebサービスの要求及び応答のメッセージ交換を行うSOAP処理部70と、インターフェイス定義211に基づいて所定のWebサービスファンクション1400を起動し、Webサービスファンクション1400から応答を受け取るハンドラ1103と、Webサーバー1101によって起動され、処理を実行することによってWebサービスを提供するWebサービスファンクション(WSF)1400とを有する。SOAP処理部70は、後述するような機能構成において、ハンドラ1103に含まれるようにしても良い。   In FIG. 3, the MFP 1200 includes a Web server 1101 that controls communication with the network device 10, a SOAP processing unit 70 that exchanges Web service request and response messages with the network device 10 according to SOAP, and an interface. A Web service function (WSF) that starts a predetermined Web service function 1400 based on the definition 211 and receives a response from the Web service function 1400 and a Web service function (WSF) that is started by the Web server 1101 and provides a Web service by executing processing. ) 1400. The SOAP processing unit 70 may be included in the handler 1103 in a functional configuration described later.

インターフェイス定義211は、UDDIサーバー100へ登録されるWebサービスのサービス仕様を示すWSDL(Web Service Description Language)であって、ハンドラ1103は、そのWSDLに記述されるWebサービス仕様を実現するものである。融合機1200は、また、インターフェイス定義211に基づいてハンドラ1103を自動的に生成するハンドラ自動生成部210を有するように構成することができる。   The interface definition 211 is WSDL (Web Service Description Language) indicating the service specification of a Web service registered in the UDDI server 100, and the handler 1103 realizes the Web service specification described in the WSDL. The multi-function apparatus 1200 can also be configured to include an automatic handler generator 210 that automatically generates a handler 1103 based on the interface definition 211.

UDDIサーバー100は、融合機1200から融合機1200が行うWebサービスのサービス仕様を示すWSDLを管理し、検索要求に応じて発見したWSDLを提供する機能を有し、融合機1200とネットワーク機器10との仲介を行うサービスブローカー110と、融合機1200から登録されたWSDLを管理するUDDIレジストリ112とを有する。   The UDDI server 100 has a function of managing WSDL indicating the service specifications of the Web service performed by the MFP 1200 from the MFP 1200 and providing the WSDL found in response to the search request. And a service broker 110 that mediates and a UDDI registry 112 that manages WSDL registered from the MFP 1200.

サービスブローカー110によって、ネットワーク機器10が所望するWebサービスが提供される場合について説明する。サービスブローカー110は、ネットワーク機器10からのWebサービスの要求に応じて、その要求に対応するWSDLをUDDIレジストリ112から検索して、UDDIレジストリ112にて発見したWSDLに記述されたWebサービス仕様に基づいて、SOAPに従って、Webサービスの要求を示す要求メッセージを融合機1200に対して送信する。融合機1200のWebサーバー1101がWebサービスの要求を受信すると、SOAP処理部70によって要求メッセージが処理され、ハンドラ1103はそのメッセージに応じた処理を行うWebサービスファンクション1400を起動する。ハンドラ1103がWebサービスファンクション1400から応答を受けると、SOAP処理部70によってその応答はSOAPに従った応答メッセージとして処理され、Webサーバー1101によってサービスブローカー110へ送信される。   A case where the service broker 110 provides a Web service desired by the network device 10 will be described. In response to a web service request from the network device 10, the service broker 110 searches the WSDL corresponding to the request from the UDDI registry 112 and is based on the web service specification described in the WSDL found in the UDDI registry 112. Then, according to SOAP, a request message indicating a request for the Web service is transmitted to the MFP 1200. When the Web server 1101 of the MFP 1200 receives a Web service request, the SOAP processing unit 70 processes the request message, and the handler 1103 activates a Web service function 1400 that performs processing according to the message. When the handler 1103 receives a response from the Web service function 1400, the response is processed as a response message according to SOAP by the SOAP processing unit 70, and is transmitted to the service broker 110 by the Web server 1101.

サービスブローカー110は、Webサーバー1101からWebサービスの応答を示す応答メッセージを受信すると、更に、その応答をネットワーク機器10へ送信する。このように、ネットワーク機器10と融合機1200とを仲介するサービスブローカー110によって、ネットワーク機器10は、WSDLを取得することなく、融合機1200に対してWebサービスを要求することができる。   When the service broker 110 receives a response message indicating a response of the Web service from the Web server 1101, the service broker 110 further transmits the response to the network device 10. As described above, the network broker 10 can request a Web service from the MFP 1200 without acquiring the WSDL by the service broker 110 that mediates between the network device 10 and the MFP 1200.

また、ネットワーク機器10が、UDDIサーバー100から所望のWebサービスに対応するWSDLを取得するようにしても良い。この場合、ネットワーク機器10は、UDDIサーバー100に対して、所望のWebサービスに対応するWSDLを検索させて、UDDIサーバー100がUDDIレジストリにて発見したWSDLを取得する。そして、ネットワーク機器10は、取得したWSDLによって記述されるWebサービスの仕様に基づいて、SOAPに従って、Webサービスの要求を示す要求メッセージを融合機1200に対して送信する。   Further, the network device 10 may acquire WSDL corresponding to a desired Web service from the UDDI server 100. In this case, the network device 10 causes the UDDI server 100 to search for the WSDL corresponding to the desired Web service, and acquires the WSDL that the UDDI server 100 has found in the UDDI registry. Then, the network device 10 transmits a request message indicating a request for the Web service to the multi-function apparatus 1200 according to SOAP, based on the specification of the Web service described by the acquired WSDL.

融合機1200のWebサーバー1101がWebサービスの要求を受信すると、SOAP処理部70及びハンドラ1103によって上記同様の処理が行われた後、Webサービスの要求を示す要求メッセージに応じた処理を行うWebサービスファンクション(WSF)1400が起動される。そして、処理を実行したWebサービスファンクション(WSF)1400は、ハンドラ1103にその処理に対する応答を返す。ハンドラ1103及びSOAP処理部70での処理を経てWebサーバー1101が応答を受けると、SOAPに従ったWebサービスの応答を示す応答メッセージをネットワーク機器10へ送信する。このように、ネットワーク機器10が、取得したWSDLに基づいて、SOAPに従って所望のWebサービスを融合機1200に要求するようにしても良い。   When the Web server 1101 of the MFP 1200 receives a Web service request, the SOAP processing unit 70 and the handler 1103 perform the same process as described above, and then perform a process corresponding to the request message indicating the Web service request. A function (WSF) 1400 is activated. Then, the Web service function (WSF) 1400 that executed the process returns a response to the process to the handler 1103. When the Web server 1101 receives a response through the processing of the handler 1103 and the SOAP processing unit 70, the response message indicating the response of the Web service according to SOAP is transmitted to the network device 10. As described above, the network device 10 may request a desired Web service from the MFP 1200 according to SOAP based on the acquired WSDL.

また、融合機1200において、Webサービスファンクション(WSF)1400が、WSDLによって記述可能な構成を有するようにしても良い。つまり、WSDLに基づいたWebサービスの要求を処理可能とすると共に、ネットワーク機器10と融合機1200間における所定手順によるWebサービスの要求をも処理可能とする。   Further, in the MFP 1200, the Web service function (WSF) 1400 may have a configuration that can be described in WSDL. In other words, a Web service request based on WSDL can be processed, and a Web service request according to a predetermined procedure between the network device 10 and the MFP 1200 can be processed.

このWebサービスが提供されるネットワークの構成例において、メッセージ交換手順であるSOAPを利用した場合について説明するが、Webサービスを提供可能とするメッセージ交換手順は、SOAPに限定されるものではなく、融合機1200とネットワーク10との間で取り決めた所定のメッセージ交換手順によって実現しても良い。   In the configuration example of the network where the Web service is provided, a case where SOAP, which is a message exchange procedure, is used will be described. However, the message exchange procedure capable of providing the Web service is not limited to SOAP, and is integrated. It may be realized by a predetermined message exchange procedure negotiated between the device 1200 and the network 10.

融合機1200は、また、インターフェイス定義211に基づいてハンドラ1103を自動的に生成するハンドラ自動生成部210を有することによって、上記Webサービスファンクション(WSF)1400は、UDDIサーバー100に登録したWebサービスの仕様を記述するWSDLに基づいて、自動的に生成されるようにしても良い。この場合、新たに登録されたWSDLに基づいて、融合機1200自身が、随時ハンドラ1103を動的に生成することが可能となる。例えば、ハンドラ1103の動作環境をJava(登録商標)プログラムが動作可能な環境とすることで実現できる。また、ハンドラ自動生成部210を開発環境において利用し、その生成されたハンドラ1103のオブジェクトコードを融合機1200に搭載するようにしても良い。この場合、ハンドラ1103を開発する工数を削減することができる。   The MFP 1200 also has an automatic handler generation unit 210 that automatically generates a handler 1103 based on the interface definition 211, so that the Web service function (WSF) 1400 can execute the Web service registered in the UDDI server 100. It may be automatically generated based on WSDL describing the specification. In this case, the MFP 1200 itself can dynamically generate the handler 1103 as needed based on the newly registered WSDL. For example, it can be realized by setting the operating environment of the handler 1103 as an environment in which a Java (registered trademark) program can operate. Alternatively, the handler automatic generation unit 210 may be used in the development environment, and the generated object code of the handler 1103 may be mounted on the MFP 1200. In this case, the man-hour for developing the handler 1103 can be reduced.

ハンドラ1103を生成するハンドラ自動生成部210での自動生成処理について図4から図8で説明する。例えば、Webサービスファンクション1400は、ファイル管理処理を行い、その結果を提供するWebサービスを提供するものとする。この場合、Webサービスファンクション1400のためのインターフェイス定義211は、例えば、図4及び図5に示すように記述される。また、要求メッセージ及び応答メッセージは、XMLで記述されるものとする。   The automatic generation processing in the handler automatic generation unit 210 that generates the handler 1103 will be described with reference to FIGS. For example, it is assumed that the Web service function 1400 provides a Web service that performs file management processing and provides the result. In this case, the interface definition 211 for the Web service function 1400 is described, for example, as shown in FIGS. The request message and the response message are described in XML.

図4及び図5は、WSDLによるインターフェイス定義の記述例を示す図である。図4において、データ型を定義する<type>タグ240は、メッセージを記述するためのデータタイプを定義し、スキーマの定義が設定される。この例の場合、</type>のみ記述され、XMLのスキーマの基本型のみであることを示す。   4 and 5 are diagrams showing examples of description of interface definition by WSDL. In FIG. 4, a <type> tag 240 defining a data type defines a data type for describing a message, and a schema definition is set. In this example, only </ type> is described, indicating that it is only the basic type of the XML schema.

メッセージの書式を定義する<message>タグ241(記述<message name="filemanagementInput">)によって定義される定義情報242において、記述<part name="fileId" type="xs:unsignedInt"/>及び記述<part name="operationCode" type="xs:unsignedInt"/>によって、ファイル管理要求の入力パラメータ(filemanagementInput)は、符号なし整数(unsignedInt)のfileId及び符号なし整数(unsignedInt)のoperationCodeによって構成されることを定義する。また、メッセージの書式を定義する<message>タグ243(記述<message name="filemanagementOnput">)によって定義される定義情報244において、記述<part name="requestId" type="xs:unsignedInt"/>によって、ファイル管理要求の出力パラメータ(filemanagementOnput)は、符号なし整数(unsignedInt)のrequestIdによって構成されることを定義する。   In the definition information 242 defined by the <message> tag 241 (description <message name = "filemanagementInput">) that defines the message format, the description <part name = "fileId" type = "xs: unsignedInt" /> and the description By <part name = "operationCode" type = "xs: unsignedInt" />, the file management request input parameter (filemanagementInput) is composed of unsigned integer (unsignedInt) fileId and unsigned integer (unsignedInt) operationCode. Define that. Also, in the definition information 244 defined by the <message> tag 243 (description <message name = "filemanagementOnput">) that defines the message format, the description <part name = "requestId" type = "xs: unsignedInt" /> Defines that the output parameter (filemanagementOnput) of the file management request is composed of a requestId of an unsigned integer (unsignedInt).

操作(operation)の集合を定義する<portType>タグ245(記述<portType name="netdocPortType">)によって定義される定義情報246において、操作毎の入力メッセージ及び出力メッセージが定義される。例えば、<operation>タグ247(記述<operation name="filemanagement">)によって定義される定義情報248において、記述<input message="tns:filemanagementInput"/>によって入力メッセージはfilemanagementInputであることが定義され、また、記述<output message="tns:filemanagementOutput"/>によって出力メッセージはfilemanagementOutputであることが定義される。この場合、ファイル管理(filemanagement)のみが定義される。   In the definition information 246 defined by the <portType> tag 245 (description <portType name = "netdocPortType">) that defines a set of operations, an input message and an output message for each operation are defined. For example, in the definition information 248 defined by the <operation> tag 247 (description <operation name = "filemanagement">), the description <input message = "tns: filemanagementInput" /> defines that the input message is filemanagementInput. Also, the description <output message = "tns: filemanagementOutput" /> defines that the output message is filemanagementOutput. In this case, only file management is defined.

<portType>タグ245によって定義された操作とメッセージを具体的なプロトコルとデータフォーマットにマップする<binding>タグ249(記述<binding name="netdocHttpBinding" type="tns:netdocPortType">)によって定義される定義情報250において、netdocPortTypeで定義されるポートタイプについて、操作とメッセージのプロトコルとデータフォーマットへのマップが定義される。   Defined by <binding> tag 249 (description <binding name = "netdocHttpBinding" type = "tns: netdocPortType">) that maps operations and messages defined by <portType> tag 245 to specific protocols and data formats In the definition information 250, for the port type defined by netdocPortType, a map to the operation and message protocol and data format is defined.

定義情報50において、<sb:binding>タグ51(記述<sb:binding transport="http://schemas.xmlsoap.org/soap/http" style="rpc"/>)によって、SOAP HTTPバインディングによるRPC(Remote Procedure Call)の使用が定義される。<operation>タグ52(記述<operation name="filemanagement">)によって、以下にファイル管理(filemanagement)に関するSOAPメッセージが定義される。   In the definition information 50, an RPC with a SOAP HTTP binding is performed by a <sb: binding> tag 51 (description <sb: binding transport = "http://schemas.xmlsoap.org/soap/http" style = "rpc" />). Use of (Remote Procedure Call) is defined. The <operation> tag 52 (description <operation name = "filemanagement">) defines a SOAP message regarding file management (filemanagement) below.

先ず、<sb:operation>タグ253(記述<sb:operation soapAction="http://foo.bar.com/netdoc/filemanagement"/>)によって、ファイル管理(filemanagement)要求時のSOAPActionヘッダの値が「
http://foo.bar.com/netdoc/filemanagement」であることを定義する。
First, the value of the SOAPAction header at the time of file management request is determined by the <sb: operation> tag 253 (description <sb: operation soapAction = "http://foo.bar.com/netdoc/filemanagement"/>)."
http://foo.bar.com/netdoc/filemanagement ”.

次に、<input>タグ254によって定義される定義情報255において、記述<sb:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" use="literal" namespace="http://foo.bar.com/netdoc/"/>によって、入力時のエンコーディング形式を定義し、記述<sb:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" use="literal" namespace="http://foo.bar.com/netdoc/"/>によって、出力時のエンコーディング形式を定義する。   Next, in the definition information 255 defined by the <input> tag 254, the description <sb: body encodingStyle = "http://schemas.xmlsoap.org/soap/encoding/" use = "literal" namespace = "http: //foo.bar.com/netdoc / "/> defines the input encoding format and describes <sb: body encodingStyle =" http://schemas.xmlsoap.org/soap/encoding/ "use =" literal "namespace =" http://foo.bar.com/netdoc/ "/> defines the output encoding format.

そして、ネットワークの端点の集まりを定義する<service>タグ258(記述<service name="netdoc">)によって定義される定義情報259において、<port>タグ260(記述<port name="netdocPort" binding="tns:netdocHttpBinding">)によってネットワークの端点の1つとなるnetdocPortが定義され、更に、記述<sb:address location="http://printer.foo.bar.com/netdoc"/>によって、そのネットワークの端点のアドレス位置が定義される。つまり、サービス名「netdoc」のバインディングは「netdocHttpBinding」であり、サービスのURL(Uniform Resource Locator)は「http://printer.foo.bar.com/netdoc」であることが定義される。   Then, in the definition information 259 defined by the <service> tag 258 (description <service name = "netdoc">) that defines a collection of network endpoints, the <port> tag 260 (description <port name = "netdocPort" binding = "tns: netdocHttpBinding">) defines a netdocPort that is one of the network endpoints, and the description <sb: address location = "http://printer.foo.bar.com/netdoc" /> The address location of the end point of the network is defined. That is, it is defined that the binding of the service name “netdoc” is “netdocHttpBinding” and the service URL (Uniform Resource Locator) is “http://printer.foo.bar.com/netdoc”.

このようにWSDLで定義されたインターフェイス定義211によって、データ型が決定され、操作が決定され、また、URL及びSOAPActionヘッダが決定される。   As described above, the interface definition 211 defined in WSDL determines the data type, determines the operation, and determines the URL and SOAPAction header.

このようなインターフェイス定義211に基づいて、ハンドラ自動生成部210によって行われる自動生成処理について、図7及び図8を参照しつつ、図6に示すフローチャート図に基づいて説明する。図6は、ハンドラのソースコードを生成する自動生成処理を説明するためのフローチャート図である。図7は、生成された構造体定義のコードの例を示す図である。図8は、Webサービスファンクションをコールする関数の例を示す図である。   The automatic generation processing performed by the handler automatic generation unit 210 based on the interface definition 211 will be described based on the flowchart shown in FIG. 6 with reference to FIGS. 7 and 8. FIG. 6 is a flowchart for explaining automatic generation processing for generating the source code of the handler. FIG. 7 is a diagram illustrating an example of the generated structure definition code. FIG. 8 is a diagram illustrating an example of a function that calls a Web service function.

図6において、ハンドラ自動生成部210は、構造体定義のコードを生成する(ステップS150)。この場合、図8に示すファイル管理処理を実行するファイル管理関数301へ入力される引数30として使用される構造体「Netdoc_filemanagementInput」を定義するコードを生成する。宣言文として、例えば、「typedef struct _netdoc_filemanagementInput」のようなコードを生成し、続けて、図4の<message>タグ241によって定義される定義情報242に基づいて、図7に示すコード261を生成する。つまり、図4の定義情報242において、name=”fileId”によって構成要素「fileId」が、type=”unsignedInt”によって符号なし整数として、「unsigned int fileId;」のようなコードを生成する。また、name=”operationCode”によって構成要素「operationCode」が、type=”unsignedInt”によって符号なし整数として、「unsigned int operationCode;」のようなコードを生成する。そして、構造体「Netdoc_filemanagementInpput」にこの構造体定義「_nnetdoc_filemanagementInput」を適用するコードを生成する。コード261の生成によって入力用の構造体が定義される。   In FIG. 6, the handler automatic generation unit 210 generates a structure definition code (step S150). In this case, a code defining the structure “Netdoc_filemanagementInput” used as the argument 30 input to the file management function 301 that executes the file management process shown in FIG. 8 is generated. For example, a code such as “typedef struct _netdoc_filemanagementInput” is generated as a declaration statement, and subsequently, a code 261 shown in FIG. 7 is generated based on the definition information 242 defined by the <message> tag 241 in FIG. . That is, in the definition information 242 of FIG. 4, a code such as “unsigned int fileId;” is generated with name = “fileId” as the component “fileId” and type = “unsignedInt” as an unsigned integer. Also, a code such as “unsigned int operationCode;” is generated as a component “operationCode” by name = “operationCode” and an unsigned integer by type = “unsignedInt”. Then, a code for applying the structure definition “_nnetdoc_filemanagementInput” to the structure “Netdoc_filemanagementInput” is generated. A structure for input is defined by generating the code 261.

次に、ファイル管理関数301から出力される引数31として使用される構造体「Netdoc_filemanagementOutput」を定義するコードを生成する。宣言文として、例えば、「typedef struct _netdoc_filemanagementOutput」のようなコードを生成し、続けて、図4の<message>タグ241によって定義される定義情報242に基づいて、図7に示すコード262を生成する。つまり、図4の定義情報244において、name=”requestId”によって構成要素「requestId」が、type=”unsignedInt”によって符号なし整数として、「unsigned int requestId;」のようなコードを生成する。そして、構造体「Netdoc_filemanagementOutput」にこの構造体定義「_netdoc_filemanagementOutput」を適用するコードを生成する。コード262の生成によって出力用の構造体が定義される。   Next, a code defining a structure “Netdoc_filemanagementOutput” used as an argument 31 output from the file management function 301 is generated. For example, a code such as “typedef struct_netdoc_filemanagementOutput” is generated as a declaration statement, and subsequently, a code 262 shown in FIG. 7 is generated based on the definition information 242 defined by the <message> tag 241 in FIG. . That is, in the definition information 244 of FIG. 4, a code such as “unsigned int requestId;” is generated with name = “requestId” as the component “requestId” and type = “unsignedInt” as an unsigned integer. Then, a code for applying the structure definition “_netdoc_filemanagementOutput” to the structure “Netdoc_filemanagementOutput” is generated. An output structure is defined by generating the code 262.

ハンドラ自動生成部210は、ファイル管理関数301をコールするための関数宣言を生成する(ステップS151)。この場合、図4の<operation>タグ247によって定義される定義情報248に基づいて、例えば、ファイル管理関数301をコールするために、「SoapFault netdoc_filemanagement (Netdoc_filemanagementInput *in, Netdoc_filemanagementOutput *out);」のようなコードを生成する。   The handler automatic generation unit 210 generates a function declaration for calling the file management function 301 (step S151). In this case, in order to call the file management function 301 based on the definition information 248 defined by the <operation> tag 247 in FIG. 4, for example, “SoapFault netdoc_filemanagement (Netdoc_filemanagementInput * in, Netdoc_filemanagementOutput * out);” The correct code.

ハンドラ自動生成部210は、SOAP処理部70によって処理された要求メッセージをXMLで記述する際のタグ間の関連をツリー構造で示すDOM(Document Object Model)ツリーに変換するコードを生成し(ステップS153)、Webサービスファンクション1400をコールするコードを生成する(ステップS154)。つまり、ハンドラ自動生成部210は、ステップS151で生成した関数宣言のコードを使用してファイル管理関数301のコードを生成する。   The handler automatic generation unit 210 generates a code for converting a request message processed by the SOAP processing unit 70 into a DOM (Document Object Model) tree indicating a relation between tags when the request message is described in XML (step S153). ), A code for calling the Web service function 1400 is generated (step S154). That is, the handler automatic generation unit 210 generates the code of the file management function 301 using the function declaration code generated in step S151.

続けて、ハンドラ自動生成部210は、Webサービスファンクション1400からの処理結果がエラーであるか否かを判断するコードと、エラーの場合の処理を行なうコードを生成する(ステップS155)。更に、ハンドラ自動生成部210は、DOMツリーから応答メッセージへ変換するコードを生成する(ステップS156)。   Subsequently, the handler automatic generation unit 210 generates a code for determining whether or not the processing result from the Web service function 1400 is an error, and a code for performing a process in the case of an error (step S155). Furthermore, the handler automatic generation unit 210 generates a code for converting the DOM tree into a response message (step S156).

このように、ハンドラ自動生成部210は、インターフェイス定義211に基づいて、ハンドラ1103を生成することができる。このような構成にすることによって、ハンドラ1103を実現するソースコードを自動生成することができるため、単純で繰り返しの多いDOMプログラミングを作成する必要がない。従って、短期間で品質の高いソフトウェア開発を行うことができる。また、Webサービスファンクション1400は、入出力ともにプログラミング言語で扱いやすい形式とすることができるため、開発者にXML又はHTTPについての深い知識を必要としない。従って、開発者の教育に要するコストを削減することができる。更に、プロトコルの追加や変更が生じた際にも、インターフェイス定義211を変更するだけでハンドラ1103のソースコードを自動生成することができる。従って、高い保守性を実現することができる。   As described above, the handler automatic generation unit 210 can generate the handler 1103 based on the interface definition 211. With such a configuration, the source code for realizing the handler 1103 can be automatically generated, so that it is not necessary to create a simple and repetitive DOM programming. Therefore, high-quality software development can be performed in a short period of time. In addition, since the Web service function 1400 can be in a format that can be handled easily in a programming language for both input and output, the developer does not need deep knowledge about XML or HTTP. Therefore, the cost required for developer education can be reduced. Furthermore, even when a protocol is added or changed, the source code of the handler 1103 can be automatically generated simply by changing the interface definition 211. Therefore, high maintainability can be realized.

以下、Webサービスの提供を可能とする融合機1200の機能構成例について、融合機1200とネットワーク機器10とで説明する。   Hereinafter, an example of the functional configuration of the MFP 1200 capable of providing a Web service will be described with the MFP 1200 and the network device 10.

先ず、メッセージ交換手順であるSOAPを利用せずにXMLにて記述されたメッセージに基づいて、ネットワークを介して接続されるネットワーク機器に、Webサービスを提供する融合機1200について説明する。図9は、Webサービスを提供する融合機の第一機能構成例を示す図である。図9において、図1に示す融合機1200の機能構成のうち主要な機能構成のみが図示され、他の機能構成は省略される。   First, the MFP 1200 that provides a Web service to a network device connected via a network based on a message described in XML without using SOAP, which is a message exchange procedure, will be described. FIG. 9 is a diagram illustrating a first functional configuration example of a multi-function peripheral that provides a Web service. In FIG. 9, only the main functional configuration is shown in the functional configuration of the multi-functional apparatus 1200 shown in FIG. 1, and other functional configurations are omitted.

図9において、融合機1200は、HTTPに従った通信制御を行うと共に、内部のWebサービス提供処理部に処理を分配するWebサーバー500と、複数のWebサービス提供処理部としてファイル管理Webサービス提供処理部40及び他Webサービス提供処理部49と、処理を振り分けるハンドラ1103と、スキャナ1202と、HDD1303と、プロッタ1201と、オペレーションパネル1310と、FAXコントロールユニット1530等とを有する。Webサーバー500は、HTTPに従った通信制御を行うhttpd2と、HTTPリクエストに対応するWebサービス提供処理部へ処理を分配するディストリビューター(Distributor)30とを有する。   In FIG. 9, the MFP 1200 performs communication control according to HTTP, distributes the processing to the internal Web service providing processing unit, and file management Web service providing processing as a plurality of Web service providing processing units. Unit 40 and other Web service provision processing unit 49, handler 1103 for distributing processing, scanner 1202, HDD 1303, plotter 1201, operation panel 1310, FAX control unit 1530, and the like. The Web server 500 includes httpd 2 that performs communication control according to HTTP, and a distributor 30 that distributes processing to a Web service providing processing unit corresponding to the HTTP request.

ファイル管理Webサービス提供処理部40は、例えば、Webサービスを実行するWebサービスファンクション1400(図3)としてHDD1303への文書の蓄積等のファイル管理を制御するファイル管理実行部400を有する。   The file management Web service provision processing unit 40 includes, for example, a file management execution unit 400 that controls file management such as storage of documents in the HDD 1303 as a Web service function 1400 (FIG. 3) that executes a Web service.

ハンドラ1103は、図3に示すように、インターフェイス定期211によって提供される各Webサービス提供処理部40及び49のWebサービスファンクションを記述したWSDLに基づいて、ハンドラ自動生成部210によって生成された処理部であり、複数のWebサービス提供処理部40及び49とで共有されるXML処理部50と、XML処理部50によって解析されたWebサービスの処理内容を示す処理メッセージに基づいてファイル管理実行部400に振り分けるディスパッチャー(Dispatcher)60とを有する。   As shown in FIG. 3, the handler 1103 is a processing unit generated by the automatic handler generation unit 210 based on WSDL describing the Web service functions of the Web service provision processing units 40 and 49 provided by the interface regular 211. The XML processing unit 50 shared by the plurality of Web service providing processing units 40 and 49, and the file management execution unit 400 based on the processing message indicating the processing content of the Web service analyzed by the XML processing unit 50. The dispatcher (Dispatcher) 60 which distributes is provided.

なお、融合機1200において、説明の便宜上、複数のWebサービス提供処理部として、ファイル管理Webサービス提供処理部40と他Webサービス提供処理部49のみが示されるが、更に多くのWebサービス提供処理部を有する構成とすることもできる。この場合、ハンドラ1103は、複数のWebサービス提供処理部の夫々の実行部に処理を振り分ける複数のディスパッチャー60を備えるようにする。また、それら複数のWebサービス提供処理部によって、ハンドラ1103においてXML処理部50は共有される。   In the MFP 1200, for convenience of explanation, only the file management web service provision processing unit 40 and the other web service provision processing unit 49 are shown as a plurality of web service provision processing units, but more web service provision processing units are shown. It can also be set as the structure which has these. In this case, the handler 1103 includes a plurality of dispatchers 60 that distribute the processing to the execution units of the plurality of Web service providing processing units. Further, the XML processing unit 50 is shared in the handler 1103 by the plurality of Web service providing processing units.

また、ネットワーク15を介して融合機1200と接続されるネットワーク機器10は、キーボード又はマウス等の入力装置からの入力データを制御すると共に、モニタ9に表示させる出力データとを制御する入出力制御部11と、融合機1200に対するWebサービスの処理内容及び融合機1200からのWebサービスの処理結果をXMLによって処理するXML処理部13と、HTTPに従ったリクエストの生成及びレスポンスを解析するリクエスト/レスポンス処理部14とを有する。ここで、HTTPリクエストはHTTPに従ったデータ通信によって、Webサービスを要求することを示し、HTTPレスポンスは該Webサービスの処理結果を通知する応答を示す。また、この第一機能構成例では、HTTPリクエスト及びHTTPレスポンスのボディ部はXMLによって記述される例を示している。   The network device 10 connected to the MFP 1200 via the network 15 controls input data from an input device such as a keyboard or a mouse, and also controls output data to be displayed on the monitor 9. 11, the XML processing unit 13 that processes the processing contents of the Web service for the MFP 1200 and the processing results of the Web service from the MFP 1200 by XML, and the request / response processing that analyzes the generation and response of a request according to HTTP Part 14. Here, the HTTP request indicates that a Web service is requested by data communication in accordance with HTTP, and the HTTP response indicates a response that notifies the processing result of the Web service. Further, in this first functional configuration example, the body part of the HTTP request and the HTTP response is described in XML.

このようなネットワーク機器10を利用する利用者は、所望のWebサービスを融合機1200へ要求するための画面から融合機1200へ要求する(ステップS1)。利用者によるWebサービスの要求に応じて、入出力制御部11は、リクエスト/レスポンス処理部14へ要求データを通知する(ステップS2)。リクエスト/レスポンス処理部14は、入出力制御部11からの要求データに基づいてHTTPリクエストを生成し(ステップS3)、XML処理部13が処理内容をXMLによってHTTPリクエストのボディ部に記述すると、HTTPリクエストがネットワーク15を介して融合機1200へ送信される(ステップS4)。   A user who uses such a network device 10 requests the MFP 1200 from a screen for requesting the MFP 1200 for a desired Web service (step S1). In response to the web service request from the user, the input / output control unit 11 notifies the request / response processing unit 14 of the request data (step S2). The request / response processing unit 14 generates an HTTP request based on the request data from the input / output control unit 11 (step S3). When the XML processing unit 13 describes the processing content in the body of the HTTP request by XML, the request / response processing unit 14 The request is transmitted to the MFP 1200 via the network 15 (step S4).

融合機1200のWebサーバー500は、httpd2によってHTTPリクエストを受信すると、ディストリビューター30によって、HTTPリクエストのヘッダ部で指定されるWebサービス提供処理部へ受信したHTTPリクエストを分配する(ステップS5)。例えば、HTTPリクエストのヘッダ部でファイル管理Webサービス提供処理部40が指定されていた場合、ファイル管理Webサービス提供処理部40がディストリビューター30によって関数コールされる。   When the Web server 500 of the MFP 1200 receives the HTTP request by httpd2, the distributor 30 distributes the received HTTP request to the Web service provision processing unit specified by the header part of the HTTP request (step S5). For example, when the file management Web service provision processing unit 40 is specified in the header part of the HTTP request, the file management Web service provision processing unit 40 is function-called by the distributor 30.

ファイル管理Webサービス提供処理部40において、ハンドラ1103は、XML処理部50によってHTTPリクエストのXMLで記述されたボディ部から処理内容を取得し(ステップS6)、取得した処理内容をディスパッチャー60に通知する(ステップS7)。ディスパッチャー60は通知された処理内容に従って、Webサービスによる処理をファイル管理実行部400に振り分ける(ステップS8)。ファイル管理実行部400は、処理内容に従ってHDD1303に対して処理を実行し、その処理結果を取得する(ステップS9)。例えば、処理内容に指定される文書の追加、更新、又は削除等の処理を実行する。ファイル管理実行部400は処理結果をXML処理部50へ通知する(ステップS10)。XML処理部50は、通知された処理結果をXMLで記述したHTTPレスポンスのボディ部を生成する(ステップS11)。そして、ファイル管理Webサービス提供処理部40から通知を受けたWebサーバー500は、httpd2を介してXMLで記述された処理結果をボディ部とするHTTPレスポンスをネットワーク機器10に送信する。   In the file management Web service provision processing unit 40, the handler 1103 acquires the processing content from the body part described in the XML of the HTTP request by the XML processing unit 50 (step S6), and notifies the dispatcher 60 of the acquired processing content. (Step S7). The dispatcher 60 distributes the processing by the Web service to the file management execution unit 400 according to the notified processing content (step S8). The file management execution unit 400 executes processing on the HDD 1303 according to the processing content, and acquires the processing result (step S9). For example, processing such as addition, update, or deletion of a document designated as processing content is executed. The file management execution unit 400 notifies the processing result to the XML processing unit 50 (step S10). The XML processing unit 50 generates a body part of an HTTP response in which the notified processing result is described in XML (step S11). Then, the Web server 500 that has received the notification from the file management Web service provision processing unit 40 transmits an HTTP response having the processing result described in XML as a body part to the network device 10 via httpd2.

ネットワーク機器10にてHTTPレスポンスが受信されると、XML処理部13は、HTTPレスポンスのボディ部を解析して処理結果を取得し(ステップS13)、リクエスト/レスポンス処理部14は、その取得した処理結果をモニタ9に表示させる出力データとして入出力制御部11に渡す(ステップS14)。そして、入出力制御部11は、受け取った出力データをモニタ9に表示させるように制御する(ステップS15)。   When the network device 10 receives the HTTP response, the XML processing unit 13 analyzes the body part of the HTTP response and acquires the processing result (step S13), and the request / response processing unit 14 acquires the acquired processing. The result is passed to the input / output control unit 11 as output data to be displayed on the monitor 9 (step S14). Then, the input / output control unit 11 performs control so that the received output data is displayed on the monitor 9 (step S15).

上記第一機能構成例において、ネットワーク機器10は、予め取り決めておいたXMLによる記述形式に従ってHTTPリクエストのボディ部に処理内容を記述することによって、融合機1200に対して遠隔地からWebサービスの要求を行うことができる。また、融合機1200は、予め取り決めておいたXMLによる記述形式に従ってHTTPレスポンスのボディ部に処理結果を記述することによって、遠隔地にあるネットワーク機器10に対してWebサービスの提供を行うことが可能となる。融合機1200は、ネットワーク15を介して、複数のネットワーク機器10に対して、Webサービスを提供することも可能である。   In the above first functional configuration example, the network device 10 requests the Web service from the remote location to the MFP 1200 by describing the processing contents in the body part of the HTTP request according to the XML description format decided in advance. It can be performed. Further, the MFP 1200 can provide a Web service to the network device 10 at a remote location by describing the processing result in the body part of the HTTP response according to the XML description format determined in advance. It becomes. The multi-functional apparatus 1200 can also provide a Web service to a plurality of network devices 10 via the network 15.

次に、SOAPに従ってWebサービスを提供可能とする融合機1200の機能構成例について説明する。以下、例示される各Webサービス提供処理部は、WSDLによって記述されたサービス仕様に基づいて記述された処理(サービス)を実行する関数である。   Next, a functional configuration example of the MFP 1200 that can provide a Web service according to SOAP will be described. Hereinafter, each exemplified Web service provision processing unit is a function that executes a process (service) described based on a service specification described in WSDL.

以下、SOAPを利用したWebサービスを提供する融合機1200の機能構成例について説明する。図10は、Webサービスを提供する融合機の第二機能構成例を示す図である。図10中、図9と同一構成には同一符号を付し、その説明は省略する。また、処理フローも同様であるためその説明は省略する。図10に示される第二機能構成例において、融合機1200が、ファイル管理Webサービス提供処理部40及び他Webサービス提供処理部49等の複数のWebサービス提供処理部に対応するハンドラ1103において、複数のWebサービス提供処理部によって共有されるSOAP処理部70を有し、XML処理部50とディスパッチャー60とがSOAP処理部70に含まれる点において、上記第一機能構成例と異なった構成となっている。また、ネットワーク機器10は、SOAPに従って融合機1200とメッセージ交換するためのSOAP処理部12を有し、XMLで記述されたメッセージを処理するXML処理部13がSOAP処理部12に含まれる点において、上記第一機能構成例と異なった構成となっている。   Hereinafter, a functional configuration example of the MFP 1200 that provides a Web service using SOAP will be described. FIG. 10 is a diagram illustrating a second functional configuration example of a multifunction peripheral that provides a Web service. 10, the same components as those in FIG. 9 are denoted by the same reference numerals, and the description thereof is omitted. Since the processing flow is the same, the description thereof is omitted. In the second functional configuration example shown in FIG. 10, the MFP 1200 has a plurality of handlers 1103 corresponding to a plurality of Web service providing processing units such as the file management Web service providing processing unit 40 and the other Web service providing processing unit 49. The SOAP processing unit 70 is shared by the Web service providing processing unit, and the XML processing unit 50 and the dispatcher 60 are included in the SOAP processing unit 70, which is different from the first functional configuration example. Yes. In addition, the network device 10 includes a SOAP processing unit 12 for exchanging messages with the MFP 1200 according to SOAP, and the SOAP processing unit 12 includes an XML processing unit 13 that processes a message described in XML. The configuration is different from the first functional configuration example.

このような融合機1200において、SOAP処理部70は、HTTPリクエストのヘッダ部を解析し、ディスパッチャー60によって処理を振り分け、XML処理部50によってHTTPリクエストのボディ部のXMLで記述されたメッセージから処理内容を取得する。例えば、ディスパッチャー60は、Webサービスによる処理をファイル管理実行部400に振り分ける。その後、処理を実行したファイル管理実行部400からその処理結果を受け取ったSOAP処理部70は、XML処理部50によってHTTPリクエストのボディ部にその処理結果をXMLで記述し、SOAPに従って、そのHTTPリクエストをネットワーク機器10に送信する。   In such a multi-function apparatus 1200, the SOAP processing unit 70 analyzes the header part of the HTTP request, distributes the process by the dispatcher 60, and the XML processing unit 50 processes the processing content from the message described in XML of the body part of the HTTP request. To get. For example, the dispatcher 60 distributes processing by the Web service to the file management execution unit 400. After that, the SOAP processing unit 70 that has received the processing result from the file management execution unit 400 that executed the processing describes the processing result in XML in the body part of the HTTP request by the XML processing unit 50, and the HTTP request in accordance with SOAP. Is transmitted to the network device 10.

上記第二機能構成例において、ディスパッチャー60をXML処理部50に含むようにしても良い。   In the second functional configuration example, the dispatcher 60 may be included in the XML processing unit 50.

上記説明より、SOAPが適用された融合機1200及びネットワーク機器10とにおいて、ネットワーク機器10は、融合機1200に対してXMLを使ったRPC(Remote Procedure Call)を実現することができる。   As described above, in the MFP 1200 and the network device 10 to which SOAP is applied, the network device 10 can realize RPC (Remote Procedure Call) using XML for the MFP 1200.

融合機1200とネットワーク機器10との間でSOAPに従ってメッセージ交換するHTTPリクエスト及びHTTPレスポンスについて図11で説明する。図11は、HTTPリクエスト及びHTTPレスポンスの例を示す図である。図11(A)は、HTTPリクエストの例を示す図である。図11(A)に示すHTTPリクエストにおいて、URI(Uniform Resource Indicator)16は、POSTメソッドによってHTTPリクエストが送信されるURIを示し、例えば、「netdoc」である。更に、SOAPAction17でリクエストの目的を表すURIが示され、例えば、「http://foo.bar.com/netdoc/filemanagement」によって「ファイル管理」が指定される。   An HTTP request and an HTTP response for exchanging messages between the MFP 1200 and the network device 10 according to SOAP will be described with reference to FIG. FIG. 11 is a diagram illustrating an example of an HTTP request and an HTTP response. FIG. 11A is a diagram illustrating an example of an HTTP request. In the HTTP request shown in FIG. 11A, a URI (Uniform Resource Indicator) 16 indicates a URI to which an HTTP request is transmitted by the POST method, and is “netdoc”, for example. Further, a URI indicating the purpose of the request is shown in SOAPAction 17, and “file management” is designated by “http://foo.bar.com/netdoc/filemanagement”, for example.

図10の融合機1200のhttpd2のディストリビューター30は、SOAPAction17で指定される「filemanagement」により、ファイル管理Webサービス提供処理部40を関数コールする。ファイル管理Webサービス提供処理部40は、SOAP処理部70によってSOAPに従ってHTTPリクエストを処理する。SOAP処理部70において、ディスパッチャー60は、SOAPAction17で指定される「filemanagement」により、ファイル管理実行部400に処理を振り分ける。また、XML処理部50は、SOAPエンベロープのボディ(<SOAP-ENV:Body>から</SOAP-ENV:Body>まで)にXMLによって記述されるメッセージ18を解析する。例えば、メッセージ18は、<ns:filemanagement>から</ns:filemanagement>までに示される。「filemanagement」は、コマンドを示す。メッセージ18によって要求される処理内容は、<fileId>から</fileId>によって指定されるファイルID「123」を、<operationCode>から</operationCode>によって指定されるオペレーションコード「3」の処理を行うことを示している。例えば、オペレーションコード「3」はファイル削除、オペレーションコード「1」はファイル追加、オペレーションコード「2」はファイル編集を要求する。   The distributor 30 of httpd2 of the MFP 1200 in FIG. 10 calls the file management Web service provision processing unit 40 as a function by “filemanagement” specified by SOAPAction17. The file management Web service provision processing unit 40 processes the HTTP request according to the SOAP by the SOAP processing unit 70. In the SOAP processing unit 70, the dispatcher 60 distributes the process to the file management execution unit 400 according to “filemanagement” specified by the SOAPAction 17. Further, the XML processing unit 50 analyzes the message 18 described in XML in the body of the SOAP envelope (from <SOAP-ENV: Body> to </ SOAP-ENV: Body>). For example, the message 18 is shown from <ns: filemanagement> to </ ns: filemanagement>. “Filemanagement” indicates a command. The processing content requested by the message 18 performs processing of the file ID “123” specified by <fileId> to </ fileId> and the operation code “3” specified by <operationCode> to </ operationCode>. It is shown that. For example, operation code “3” requests file deletion, operation code “1” requests file addition, and operation code “2” requests file editing.

この場合、ディスパッチャー60によって処理が振り分けられたファイル管理実行部400は、XML処理部50によって解析された処理内容に従って、HDD1303からフィルID「123」の文書を削除する。   In this case, the file management execution unit 400 to which the process is distributed by the dispatcher 60 deletes the document with the fill ID “123” from the HDD 1303 according to the processing content analyzed by the XML processing unit 50.

なお、上記例は、一つのコマンド「filemanagement」で、<operationCode>の設定によってファイルの管理方法を指定しているが、ファイル管理の処理を細分し、例えば、ファイル追加Webサービス、ファイル編集Webサービス、及び、ファイル削除Webサービス等のように複数のWebサービスをWebサービスファンクション1400としてWebサービス処理アプリ1215に備えるようにしても良い。この場合、例えば、「fileadd」、「fileedit」、「filedelete」のように、Webサービス毎に一意に対応するコマンドがXMLメッセージ18に設定されるようにすることによって、<operationCode>によるオペレーションコードが不要となる。   In the above example, the file management method is specified by the setting of <operationCode> with one command “filemanagement”. However, the file management process is subdivided into, for example, a file addition Web service and a file editing Web service. A plurality of Web services such as a file deletion Web service may be included in the Web service processing application 1215 as the Web service function 1400. In this case, for example, the command corresponding to each Web service, such as “fileadd”, “fileedit”, and “filedelete”, is set in the XML message 18 so that the operation code by <operationCode> is changed. It becomes unnecessary.

図11(B)は、HTTPレスポンスの例を示す図である。図11(B)に示すHTTPレスポンスは、ファイル管理Webサービス提供処理部40のSOAP処理部70によって、ファイル管理Webサービス提供処理部40の処理結果に基づいて作成される。図11(B)に示すHTTPレスポンスにおいて、SOAP処理部70は、ファイル管理Webサービス提供処理部40の処理結果に基づいて、ステータスコード20として「200」と、説明句21として「OK」を設定する。更に、XML処理部50は、SOAPエンベロープのボディ(<SOAP-ENV:Body>から</SOAP-ENV:Body>まで)にXMLによって記述されるメッセージ22を生成する。コマンド「filemanagement」のレスポンスは、<ns:filemanagementResponse>から</ns:filemanagementResponse>で示され、例えば、<requestId>と</requestId>とのよってリクエストID「10」が設定される。このHTTPレスポンスを受信したネットワーク機器10は、XML処理部13によるXMLによって記述されたメッセージ22を処理することによって、処理が正常に行われたことを確認する。   FIG. 11B is a diagram illustrating an example of an HTTP response. The HTTP response shown in FIG. 11B is created by the SOAP processing unit 70 of the file management Web service provision processing unit 40 based on the processing result of the file management Web service provision processing unit 40. In the HTTP response shown in FIG. 11B, the SOAP processing unit 70 sets “200” as the status code 20 and “OK” as the explanatory phrase 21 based on the processing result of the file management Web service provision processing unit 40. To do. Further, the XML processing unit 50 generates a message 22 described in XML in the body of the SOAP envelope (from <SOAP-ENV: Body> to </ SOAP-ENV: Body>). The response of the command “filemanagement” is indicated by <ns: filemanagementResponse> to </ ns: filemanagementResponse>. For example, the request ID “10” is set by <requestId> and </ requestId>. The network device 10 that has received this HTTP response processes the message 22 described in XML by the XML processing unit 13 to confirm that the processing has been performed normally.

次に、SOAP処理部70とXML処理部50とが個別に複数のWebサービス提供処理部によって共有される融合機1200の機能構成について説明する。図12は、Webサービスを提供する融合機の第三機能構成例を示す図である。図12中、図10と同一構成には同一符号を付し、その説明は省略する。また、処理フローも同様であるためその説明は省略する。図12に示される第三機能構成例において、融合機1200は、図10に示される第二機能構成例と同様に、ファイル管理Webサービス提供処理部40及び他Webサービス提供処理部49等の複数のWebサービス提供処理部に対応するハンドラ1103において、複数のWebサービス提供処理部によって共有されるSOAP処理部70を有するが、XML処理部50は、SOAP処理部70とは独立して複数のWebサービス提供処理部によって共有される点が、上記第二機能構成例と異なっている。この第三機能構成例では、第二機能構成例と同様に、ディスパッチャー60がSOAP処理部70に含まれる構成となっているが、XML処理部50に含まれる構成としても良い。ネットワーク機器10は、図10に示されるネットワーク機器10と同様の機能構成を有する。   Next, a functional configuration of the MFP 1200 in which the SOAP processing unit 70 and the XML processing unit 50 are individually shared by a plurality of Web service providing processing units will be described. FIG. 12 is a diagram illustrating a third functional configuration example of a multi-function peripheral that provides a Web service. In FIG. 12, the same components as those in FIG. 10 are denoted by the same reference numerals, and the description thereof is omitted. Since the processing flow is the same, the description thereof is omitted. In the third functional configuration example shown in FIG. 12, the multi-function apparatus 1200 includes a plurality of file management web service provision processing units 40 and other web service provision processing units 49, as in the second functional configuration example shown in FIG. The handler 1103 corresponding to the Web service providing processing unit includes a SOAP processing unit 70 shared by a plurality of Web service providing processing units. The XML processing unit 50 includes a plurality of Web services independent of the SOAP processing unit 70. The point shared by the service providing processing unit is different from the second functional configuration example. In the third functional configuration example, the dispatcher 60 is included in the SOAP processing unit 70 as in the second functional configuration example, but the configuration may be included in the XML processing unit 50. The network device 10 has the same functional configuration as the network device 10 shown in FIG.

上記説明より、SOAPが適用された融合機1200及びネットワーク機器10とにおいて、ネットワーク機器10は、融合機1200に対してXMLを使ったRPC(Remote Procedure Call)を実現することができる。   As described above, in the MFP 1200 and the network device 10 to which SOAP is applied, the network device 10 can realize RPC (Remote Procedure Call) using XML for the MFP 1200.

融合機1200は、複数の機能の夫々に対応させて複数のWebサービス提供処理部を有するように構成することができる。図13は、Webサービスを提供する融合機の第四機能構成例を示す図である。図13中、図10と同一構成には同一符号を付し、その説明は省略する。図12に示される第三機能構成例において、融合機1200は、HDD1303に蓄積された文書を管理するWebサービスを提供するファイル管理Webサービス提供処理部40と、スキャナ1202を制御するWebサービスを提供するスキャナ制御Webサービス提供処理部41と、プロッタ1201を制御するWebサービスを提供する印刷Webサービス提供処理部42と、オペレーションパネル1310を制御するWebサービスを提供する操作部制御Webサービス提供処理部43とを有する。また、ファイル管理Webサービス提供処理部40はHDD1303に対して処理を実行するファイル管理実行部400を有し、スキャナ制御Webサービス提供処理部41はスキャナ1202に対して処理を実行するスキャナ制御実行部401を有し、印刷Webサービス提供処理部42はプロッタ1201に対して処理を実行するプロッタ制御実行部402を有し、操作部制御Webサービス提供処理部43はオペレーションパネル1310に対して処理を実行する操作部制御実行部403を有する。   The multi-function apparatus 1200 can be configured to have a plurality of Web service provision processing units corresponding to each of a plurality of functions. FIG. 13 is a diagram illustrating a fourth functional configuration example of a multi-function peripheral that provides a Web service. In FIG. 13, the same components as those in FIG. 10 are denoted by the same reference numerals, and the description thereof is omitted. In the third functional configuration example shown in FIG. 12, the MFP 1200 provides a file management Web service provision processing unit 40 that provides a Web service for managing documents stored in the HDD 1303 and a Web service that controls the scanner 1202. A scanner control web service provision processing unit 41 that performs a print web service provision processing unit that provides a web service that controls the plotter 1201, and an operation unit control web service provision processing unit 43 that provides a web service that controls the operation panel 1310. And have. The file management Web service provision processing unit 40 includes a file management execution unit 400 that executes processing for the HDD 1303, and the scanner control Web service provision processing unit 41 performs scanner processing for the scanner 1202. 401, the print Web service provision processing unit 42 has a plotter control execution unit 402 that executes processing for the plotter 1201, and the operation unit control Web service provision processing unit 43 executes processing for the operation panel 1310. An operation unit control execution unit 403 is provided.

更に、第三機能構成例と同様に、ハンドラ1103において、XML処理部50とSOAP処理部70とは夫々独立して複数のWebサービス提供処理部40〜43によって共有される。また、ディスパッチャー60〜63が、複数のWebサービス提供処理部40〜43の夫々に対応するように構成される。   Further, similarly to the third functional configuration example, in the handler 1103, the XML processing unit 50 and the SOAP processing unit 70 are independently shared by the plurality of Web service providing processing units 40 to 43. Further, the dispatchers 60 to 63 are configured to correspond to the plurality of Web service provision processing units 40 to 43, respectively.

また、ネットワーク機器10は、図10に示されるネットワーク機器10と同様の機能構成を有する。   The network device 10 has the same functional configuration as that of the network device 10 shown in FIG.

このような第四機能構成例において、SOAPが適用された融合機1200及びネットワーク機器10とにおいて、ネットワーク機器10は、融合機1200に対してXMLを使ったRPC(Remote Procedure Call)を実現することができる。また、ネットワーク機器10は、複数のWebサービス提供処理部40〜43を有する融合機1200から所望のWebサービスに対応したHTTPリクエストを送信することによって、該所望のWebサービスの提供を受けることができる。従って、ネットワーク機器10は、スキャナ1202、HDD1303、プロッタ1201、オペレーションパネル1310等の画像形成装置の機能を利用するための複数のドライバをインストールすることなく、これらの機能をWebサービスとして利用することができる。   In such a fourth functional configuration example, in the MFP 1200 and the network device 10 to which SOAP is applied, the network device 10 realizes RPC (Remote Procedure Call) using XML for the MFP 1200. Can do. Further, the network device 10 can receive provision of the desired Web service by transmitting an HTTP request corresponding to the desired Web service from the multi-functional apparatus 1200 having the plurality of Web service providing processing units 40 to 43. . Accordingly, the network device 10 can use these functions as a Web service without installing a plurality of drivers for using the functions of the image forming apparatus such as the scanner 1202, the HDD 1303, the plotter 1201, and the operation panel 1310. it can.

次に、ネットワーク機器10の一回のHTTPリクエストに応じて、複数のWebサービス提供処理部を組み合せて実行する融合機1200の機能構成例について説明する。図14は、Webサービスを提供する融合機の第五機能構成例を示す図である。図14中、図12及び図13と同一構成には同一符号を付し、その説明は省略する。図14に示される第五機能構成例において、図12に示す第三機能構成例と異なる点は、融合機1200が、ファイル管理Webサービス提供処理部40と、印刷Webサービス提供処理部42とを有すると共に、ファイル管理Webサービス提供処理部40と印刷Webサービス提供処理部42とを組み合せて制御する複合Webサービス提供処理部90を有し、ファイル管理Webサービス提供処理部40と、印刷Webサービス提供処理部42と、複合Webサービス提供処理部90と、他Webサービス提供処理部49とがハンドラ1103においてXML処理部50とSOAP処理部70とを共有するように構成される点である。更に、SOAP処理部70は各実行部400、412、80等に処理を振り分けるディスパッチャー60、62、68及び69等を有する。   Next, an example of a functional configuration of the MFP 1200 that executes a combination of a plurality of Web service provision processing units in response to a single HTTP request of the network device 10 will be described. FIG. 14 is a diagram illustrating a fifth functional configuration example of a multi-function peripheral that provides a Web service. 14, the same components as those in FIGS. 12 and 13 are denoted by the same reference numerals, and the description thereof is omitted. The fifth functional configuration example shown in FIG. 14 is different from the third functional configuration example shown in FIG. 12 in that the MFP 1200 includes a file management Web service provision processing unit 40 and a print Web service provision processing unit 42. And a composite web service provision processing unit 90 that controls the file management web service provision processing unit 40 and the print web service provision processing unit 42 in combination. The file management web service provision processing unit 40 and the print web service provision The processing unit 42, the composite web service provision processing unit 90, and the other web service provision processing unit 49 are configured to share the XML processing unit 50 and the SOAP processing unit 70 in the handler 1103. Furthermore, the SOAP processing unit 70 includes dispatchers 60, 62, 68, 69, and the like that distribute the processing to the execution units 400, 412, 80, and the like.

Webサービスファンクション1400(図3)としてのファイル管理Webサービス提供処理部40のファイル管理実行部400は、ディスパッチャー60によって振り分けられた処理に基づいて、HDD1303へのファイル管理処理を実行すると共に、複合Webサービス実行部80によって指定されるファイル管理処理を実行する。また、Webサービスファンクション1400としての印刷Webサービス提供処理部42のファイル印刷実行部412は、ディスパッチャー62によって振り分けられた処理に基づいて、ファイルの印刷を実行すると共に、複合Webサービス実行部80によって指定されるファイルの印刷を実行する。   The file management execution unit 400 of the file management Web service provision processing unit 40 as the Web service function 1400 (FIG. 3) executes the file management processing to the HDD 1303 based on the processing distributed by the dispatcher 60 and the composite Web. A file management process designated by the service execution unit 80 is executed. Further, the file print execution unit 412 of the print Web service provision processing unit 42 as the Web service function 1400 executes file printing based on the processing distributed by the dispatcher 62 and is designated by the composite Web service execution unit 80. Prints the file that is created.

複合Webサービス提供処理部90は、ファイル管理Webサービス提供処理部40と、印刷Webサービス提供処理部42とを組み合せて実行する複合Webサービス実行部80を有する。   The composite web service provision processing unit 90 includes a composite web service execution unit 80 that executes the file management web service provision processing unit 40 and the print web service provision processing unit 42 in combination.

また、ネットワーク機器10は、図10に示されるネットワーク機器10と同様の機能構成を有する。   The network device 10 has the same functional configuration as that of the network device 10 shown in FIG.

図14において、融合機1200は、ネットワーク機器10から、例えば、文書をHDD1303に蓄積して印刷する蓄積印刷を要求するHTTPリクエストを受信すると、複合Webサービス提供処理部90は複合Webサービス実行部80をコールし、ファイル管理実行部400に文書をHDD1303に蓄積させ、続けて、蓄積した文書のファイルIDを指定することによってファイル印刷実行部412に印刷処理を実行させる一連の処理を行う。   In FIG. 14, when the MFP 1200 receives, for example, an HTTP request that requests storage printing for storing and printing a document in the HDD 1303 from the network device 10, the composite Web service provision processing unit 90 displays the composite Web service execution unit 80. The file management execution unit 400 stores the document in the HDD 1303, and then performs a series of processes for causing the file print execution unit 412 to execute the printing process by specifying the file ID of the stored document.

このように、複合Webサービス実行部80が、ファイル管理実行部400とファイル印刷実行部412とに連続して処理を行わせることにより、ネットワーク15を介して接続されるネットワーク機器10は、一回のHTTPリクエストを送信するのみで、2つ以上のWebサービス提供処理部による一連のWebサービスの提供を受けることが可能となる。また、複合Webサービス実行部80自身はファイルを管理する処理及び印刷処理を行うWebサービスファンクション1400としての実体を備える必要がないため、開発効率を大幅に削減することができる。更に、ネットワーク機器10は、ファイル管理Webサービス提供処理部40のみによるWebサービスの提供、及び、印刷Webサービス提供処理部42のみによるWebサービスの提供を要求することもできる。   As described above, the composite Web service execution unit 80 causes the file management execution unit 400 and the file print execution unit 412 to perform processing in succession, so that the network device 10 connected via the network 15 is connected once. It is possible to receive a series of web services provided by two or more web service provision processing units simply by transmitting the HTTP request. Further, since the composite Web service execution unit 80 itself does not need to have an entity as the Web service function 1400 that performs file management processing and printing processing, development efficiency can be greatly reduced. Furthermore, the network device 10 can also request the provision of a web service only by the file management web service provision processing unit 40 and the provision of the web service only by the print web service provision processing unit 42.

このように、融合機1200は、画像を形成すると共に、実際にWebサービスを提供するための処理を行う複数の実行部と、それらの組み合せによって、幅広いWebサービスを提供することができる。   As described above, the MFP 1200 can provide a wide range of Web services by combining a plurality of execution units that form an image and perform processing for actually providing a Web service, and combinations thereof.

上記第一〜第五機能構成例において、融合機1200が一台のネットワーク機器10へWebサービスを提供する構成について説明したが、複数のネットワーク機器10とネットワーク15を介して接続される場合には、各ネットワーク機器10へ所望のWebサービスを提供することが可能である。   In the above first to fifth functional configuration examples, the configuration has been described in which the MFP 1200 provides a Web service to one network device 10, but in the case of being connected to a plurality of network devices 10 via the network 15. It is possible to provide a desired Web service to each network device 10.

また、融合機1200への処理内容をXMLで記述することができ、また、メッセージ交換手順をSOAPとすることによって、ネットワーク機器10の機種又はオペレーティングシステムに依存することなく、ネットワーク機器10は、Webサービスの提供を受けることが可能となる。   Further, the processing content to the MFP 1200 can be described in XML, and the message exchange procedure is set to SOAP, so that the network device 10 can be connected to the Web without depending on the model or operating system of the network device 10. It is possible to receive service provision.

更に、利用者は、使用するコンピュータ端末に複数の画像形成機能を利用するための複数のドライバ・ソフトウェアをインストールすることなく、画像形成装置の機能を、ネットワークを介してインターネット標準の各種Webプロトコルを利用してアクセス可能なプログラマブルなアプリケーションコンポーネントとして利用することができる。   Further, the user can use various Internet standard web protocols via the network without installing a plurality of driver software for using a plurality of image forming functions in a computer terminal to be used. It can be used as a programmable application component that can be accessed and used.

また、融合機1200内又は融合機1200と他装置間とにおいて、Webサービスが他Webサービスとやり取りする分散環境を実現することができる。   Further, it is possible to realize a distributed environment in which a Web service communicates with another Web service in the MFP 1200 or between the MFP 1200 and another device.

上記実施例により、画像を形成する融合機1200は、オペレーションパネルの制御、印刷処理、ファイル管理、スキャナ制御等、画像処理に関する種々の内部情報を処理し、その処理結果を要求元へ提供するWebサービスを実現することができる。ここで言う内部情報とは、画像情報、画像情報についてのステータス情報、及び、機器本体の設定を変更したりネットワークIPを変更したりする制御パラメータ等の情報等の画像処理及び融合機1200に関する多種多様の情報を示しており、それら内部情報に対して所定処理を行い、その処理結果をWebサービスとして提供することは、上記実施例により実現可能である。   According to the above embodiment, the MFP 1200 that forms an image processes various internal information related to image processing such as operation panel control, print processing, file management, scanner control, and the like, and provides the processing result to the request source. Service can be realized. The internal information here refers to various types of image processing, such as image information, status information about the image information, and information such as control parameters for changing the settings of the device main body or changing the network IP, and the multifunction device 1200. Various types of information are shown, and it is possible to perform predetermined processing on the internal information and provide the processing result as a Web service according to the above embodiment.

なお、上記実施例において、httpd2は、ネットワーク通信制御手段に対応し、Webサービス提供処理部40から43、49及び90の夫々は、Webサービス提供処理手段に対応し、ファイル管理実行部400、スキャナ制御実行部401、プロッタ制御実行部402及び操作部制御実行部403の夫々は、Webサービス実行手段に対応する。また、SOAP処理部70は、プロトコル処理手段に対応し、XML処理部50はメッセージ処理手段に対応する。   In the above embodiment, httpd2 corresponds to the network communication control means, and each of the web service provision processing units 40 to 43, 49 and 90 corresponds to the web service provision processing means, the file management execution unit 400, the scanner. Each of the control execution unit 401, the plotter control execution unit 402, and the operation unit control execution unit 403 corresponds to a Web service execution unit. The SOAP processing unit 70 corresponds to a protocol processing unit, and the XML processing unit 50 corresponds to a message processing unit.

本発明の一実施例に係る多種の画像形成機能を融合する融合機の機能構成を示すブロック図である。1 is a block diagram showing a functional configuration of a multi-functional apparatus that fuses various image forming functions according to an embodiment of the present invention. FIG. 図1に示す融合機1200のハードウェア構成を示すブロック図である。FIG. 2 is a block diagram illustrating a hardware configuration of the MFP 1200 illustrated in FIG. 1. Webサービスが提供されるネットワークの構成例を示す図である。It is a figure which shows the structural example of the network by which a Web service is provided. WSDLによるインターフェイス定義の記述例を示す図である。It is a figure which shows the example of a description of the interface definition by WSDL. WSDLによるインターフェイス定義の記述例を示す図である。It is a figure which shows the example of a description of the interface definition by WSDL. ハンドラのソースコードを生成する自動生成処理を説明するためのフローチャート図である。It is a flowchart for demonstrating the automatic generation process which produces | generates the source code of a handler. 生成された構造体定義のコードの例を示す図である。It is a figure which shows the example of the code | symbol of the produced | generated structure definition. Webサービスファンクションをコールする関数の例を示す図である。It is a figure which shows the example of the function which calls a web service function. Webサービスを提供する融合機の第一機能構成例を示す図である。It is a figure which shows the example of 1st function structure of the compound machine which provides Web service. Webサービスを提供する融合機の第二機能構成例を示す図である。It is a figure which shows the 2nd function structural example of the compound machine which provides Web service. HTTPリクエスト及びHTTPレスポンスの例を示す図である。It is a figure which shows the example of an HTTP request and an HTTP response. Webサービスを提供する融合機の第三機能構成例を示す図である。It is a figure which shows the 3rd function structural example of the compound machine which provides a Web service. Webサービスを提供する融合機の第四機能構成例を示す図である。It is a figure which shows the 4th function structural example of the compound machine which provides Web service. Webサービスを提供する融合機の第五機能構成例を示す図である。It is a figure which shows the 5th function structural example of the compound machine which provides Web service.

符号の説明Explanation of symbols

2 httpd(Hypertext Transfer Protocol Daemon)
30 ディストリビューター
40〜49 Webサービス提供処理部
50 XML処理部、 60 ディスパッチャー
70 SOAP処理部
1200 融合機、
1201 プロッタ 1202 スキャナ
1210 ソフトウェア群
1230 アプリケーション、 1220 プラットフォーム
1221 OS、 1222 SCS
1223 SRM、 1224 ECS
1225 MCS、 1226 OCS
1227 FCS、 1228 NCS
1229 IMH、 1240 融合機起動部
1300 コントローラ、 1301 ASIC
1302 MEM−C、 1303 HDD
1304 CPU、 1305 NB
1306 MEM−P、 1307 SB
1308 AGP、 1310 オペレーションパネル
1330 USB、 1340 IEEE1394
1350 エンジン部、 1500 ネットワークI/F部
1530 FAXコントロールユニット
2 httpd (Hypertext Transfer Protocol Daemon)
30 Distributor 40-49 Web service provision processing unit 50 XML processing unit, 60 dispatcher 70 SOAP processing unit 1200 MFP,
1201 Plotter 1202 Scanner 1210 Software group 1230 Application, 1220 Platform 1221 OS, 1222 SCS
1223 SRM, 1224 ECS
1225 MCS, 1226 OCS
1227 FCS, 1228 NCS
1229 IMH, 1240 Fusion machine starter 1300 Controller, 1301 ASIC
1302 MEM-C, 1303 HDD
1304 CPU, 1305 NB
1306 MEM-P, 1307 SB
1308 AGP, 1310 Operation Panel 1330 USB, 1340 IEEE 1394
1350 Engine part, 1500 Network I / F part 1530 FAX control unit

Claims (6)

ネットワークを介して接続された機器からの処理リクエスト及び該機器への処理レスポンスの通信制御を行うネットワーク通信制御手段と、
上記処理リクエスト内に所定記述形式に従って記述されたメッセージに基づいて、画像形成装置を制御するための処理をし、その処理結果を示す上記所定記述形式に従った処理レスポンスを生成するWebサービス手段とを有することを特徴とする画像形成装置。
Network communication control means for performing communication control of a processing request from a device connected via a network and a processing response to the device;
Web service means for performing processing for controlling the image forming apparatus based on a message described according to a predetermined description format in the processing request, and generating a processing response according to the predetermined description format indicating the processing result; An image forming apparatus comprising:
上記Webサービス提供処理手段は、
上記メッセージを上記画像形成装置を制御するための処理に関するデータ構成に変換するハンドラ手段を有することを特徴とする請求項1記載の画像形成装置。
The web service provision processing means includes:
2. The image forming apparatus according to claim 1, further comprising handler means for converting the message into a data structure related to processing for controlling the image forming apparatus.
複数の上記Webサービス提供処理手段を有し、
上記ハンドラ手段は、
上記複数のWebサービス提供処理手段によって共有可能であって、上記メッセージを上記所定記述形式に従って処理するメッセージ処理手段と、
上記メッセージ処理手段によって処理された上記メッセージによって示されるWebサービスを特定する特定情報に対応するWebサービス実行手段に処理を振り分ける振分手段とを有することを特徴とする請求項2記載の画像形成装置。
A plurality of Web service provision processing means;
The handler means is:
Message processing means which can be shared by the plurality of Web service providing processing means and which processes the message in accordance with the predetermined description format;
3. The image forming apparatus according to claim 2, further comprising a distribution unit that distributes the process to a Web service execution unit corresponding to specific information for specifying the Web service indicated by the message processed by the message processing unit. .
上記ネットワーク通信制御手段によって受信した上記処理リクエストのリクエスト種別を解析し、その解析結果に基づいて、上記複数のWebサービス提供処理手段の一つに上記処理リクエストを分配する分配手段と、
上記複数のWebサービス提供処理手段は、夫々、上記処理リクエスト内のWebサービスを特定する特定情報を解析し、その解析結果に基づいて、該特定情報によって特性されるWebサービスを実行するWebサービス実行手段に処理を振り分ける振分手段とを有することを特徴とする請求項3項記載の画像形成装置。
A distribution unit that analyzes a request type of the processing request received by the network communication control unit and distributes the processing request to one of the plurality of Web service providing processing units based on the analysis result;
Each of the plurality of Web service providing processing means analyzes specific information specifying the Web service in the processing request, and executes a Web service characterized by executing the Web service characterized by the specific information based on the analysis result 4. The image forming apparatus according to claim 3, further comprising a distribution unit that distributes the processing to the unit.
上記Webサービス提供処理手段を有するアプリケーションと、
画像形成処理で利用されるハードウェア資源を管理すると共に、上記アプリケーションからの利用要求に応じて、該ハードウェア資源への利用を制御するコントロールサービスと、
該アプリケーションと該コントロールサービスとを制御するオペレーティングシステムとを有することを特徴とする請求項1乃至4のいずれか一項記載の画像形成装置。
An application having the Web service provision processing means;
A control service for managing hardware resources used in the image forming process and controlling use of the hardware resources in response to a use request from the application;
The image forming apparatus according to claim 1, further comprising an operating system that controls the application and the control service.
請求項1に記載の画像形成装置と通信する利用者端末であって、
利用者による処理要求に応じて、所定記述形式に従って、該処理要求を示す処理リクエストを生成する処理リクエスト生成手段と、
所定記述形式に従ってWebサービスを提供する装置から送信された上記処理リクエストに対する処理レスポンスによって示される処理結果の出力を制御する出力制御手段とを有することを特徴とする利用者端末。
A user terminal communicating with the image forming apparatus according to claim 1,
Processing request generation means for generating a processing request indicating the processing request according to a predetermined description format in response to a processing request by a user;
A user terminal comprising: output control means for controlling output of a processing result indicated by a processing response to the processing request transmitted from an apparatus that provides a Web service according to a predetermined description format.
JP2005209322A 2002-03-25 2005-07-19 Image forming apparatus including web service functions Pending JP2006020341A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005209322A JP2006020341A (en) 2002-03-25 2005-07-19 Image forming apparatus including web service functions

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2002084555 2002-03-25
JP2005209322A JP2006020341A (en) 2002-03-25 2005-07-19 Image forming apparatus including web service functions

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2002255333A Division JP4141209B2 (en) 2002-03-25 2002-08-30 Image forming apparatus having Web service function

Publications (1)

Publication Number Publication Date
JP2006020341A true JP2006020341A (en) 2006-01-19

Family

ID=35794078

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005209322A Pending JP2006020341A (en) 2002-03-25 2005-07-19 Image forming apparatus including web service functions

Country Status (1)

Country Link
JP (1) JP2006020341A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008243191A (en) * 2007-03-23 2008-10-09 Ricoh Co Ltd Print web portal
US8261291B2 (en) 2006-07-12 2012-09-04 Ricoh Company, Ltd. Network apparatus, terminal apparatus, program, and recording medium

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8261291B2 (en) 2006-07-12 2012-09-04 Ricoh Company, Ltd. Network apparatus, terminal apparatus, program, and recording medium
JP2008243191A (en) * 2007-03-23 2008-10-09 Ricoh Co Ltd Print web portal

Similar Documents

Publication Publication Date Title
JP5509754B2 (en) Software management apparatus, software distribution system, installation method and program
US20030225894A1 (en) Image forming apparatus including web service functions
US7743162B2 (en) Image forming apparatus, with connection request mediation, having web service functions
JP4444752B2 (en) Service providing apparatus, service providing program, recording medium, and service providing method
JP2005242994A (en) Device, method and program for providing service, device, method and program for processing information, and recording medium
JP4291856B2 (en) Image forming apparatus having Web service function
JP4141209B2 (en) Image forming apparatus having Web service function
JP2006285840A (en) Document management system
JP4097584B2 (en) Embedded device having WWW server function, web page providing method, and web page providing control program
JP4130108B2 (en) Image forming apparatus having Web service function
JP2006020341A (en) Image forming apparatus including web service functions
JP2008176789A (en) Incorporating equipment, request distribution method and request distribution program
JP4291855B2 (en) Image forming apparatus having Web service function
EP1988686B1 (en) Metadata communication system
JP4136738B2 (en) Image forming apparatus having Web service function
JP2004005505A (en) Computer readable program for letting computer execute program formation
JP2004005503A (en) Image forming device having web service function
JP4141210B2 (en) Image forming apparatus having Web service function
JP2009064108A (en) Conversion device, conversion method, and conversion system
JP4291854B2 (en) Image forming apparatus having Web service function
JP4130109B2 (en) Image forming apparatus having Web service function
JP4373692B2 (en) Image forming apparatus having Web service function
JP5046818B2 (en) Image forming apparatus, data processing method in image forming apparatus, and data processing program
JP4159869B2 (en) Information providing apparatus, information providing method, information providing system, and information providing program
JP2004272888A (en) Service providing device, user terminal equipment, service providing method, service using method, service provision program, service using program, and recording medium

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070327

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070417

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070615

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20071009