JP6417468B2 - Information processing apparatus, control method thereof, and program - Google Patents

Information processing apparatus, control method thereof, and program Download PDF

Info

Publication number
JP6417468B2
JP6417468B2 JP2017247980A JP2017247980A JP6417468B2 JP 6417468 B2 JP6417468 B2 JP 6417468B2 JP 2017247980 A JP2017247980 A JP 2017247980A JP 2017247980 A JP2017247980 A JP 2017247980A JP 6417468 B2 JP6417468 B2 JP 6417468B2
Authority
JP
Japan
Prior art keywords
screen
application
web
web application
transition
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.)
Active
Application number
JP2017247980A
Other languages
Japanese (ja)
Other versions
JP2018045731A (en
Inventor
黒田 茂樹
茂樹 黒田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2017247980A priority Critical patent/JP6417468B2/en
Publication of JP2018045731A publication Critical patent/JP2018045731A/en
Application granted granted Critical
Publication of JP6417468B2 publication Critical patent/JP6417468B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、WEBブラウザによって操作されるアプリケーション間の画面の遷移を制御する情報処理装置、その制御方法、及びプログラムに関する。   The present invention relates to an information processing apparatus that controls screen transition between applications operated by a WEB browser, a control method thereof, and a program.

Webブラウザで操作可能なWebサーバーが提供するWebアプリケーションでは、他のWebアプリケーションの画面にリンクを張り、所定の操作等に応じて別のアプリケーションの画面に遷移することが可能なアプリケーションが存在する。アプリケーションから他のアプリケーションの画面に遷移する際は、該当する画面上のメニューで遷移先画面のURLを直接指定することができる。また、他のアプリケーション画面に遷移した後、遷移元のアプリケーション画面に戻るメニューを備えるアプリケーションが存在し、例えば、遷移先のアプリケーションのメニューで、戻るべき遷移元の画面のURLを直接指定する方法が知られている。   In a web application provided by a web server that can be operated by a web browser, there is an application that links to a screen of another web application and can change to a screen of another application according to a predetermined operation or the like. When transitioning from an application to another application screen, the URL of the transition destination screen can be directly specified using a menu on the corresponding screen. In addition, there is an application that includes a menu that returns to another application screen and then returns to the transition source application screen. For example, there is a method of directly specifying the URL of the transition source screen to be returned in the menu of the transition destination application. Are known.

特許文献1では、ユーザーがWebブラウザを遷移させて処理を実行する場合に、Web画面ごとにユーザーが行った処理を特定する情報及び画面表示に必要となる属性情報等を遷移情報として蓄積し、当該遷移情報を用いて画面遷移を行う方法が開示されている。具体的には、過去のWeb画面がユーザーによって選択されて表示が求められた場合に、選択された画面の識別子を取得し、この識別子を用いてWeb画面の属性情報を取得し、選択されたWeb画面を表示している。   In Patent Literature 1, when a user performs a process by changing a Web browser, information specifying a process performed by the user for each Web screen, attribute information necessary for screen display, and the like are accumulated as transition information. A method of performing screen transition using the transition information is disclosed. Specifically, when a past Web screen is selected and requested to be displayed by the user, an identifier of the selected screen is acquired, and attribute information of the Web screen is acquired using this identifier, and the selected screen is selected. A web screen is displayed.

特開2012−889040号公報JP 2012-889040 A

しかしながら、上記従来技術には以下に記載する問題がある。例えば、遷移元の選択肢となる画面が複数存在し、それぞれの画面から一つの遷移先に画面遷移する場合、当該遷移先画面のメニュー等にURLを直接指定していると戻り先が固定されてしまう。そのため、ユーザーの意図した遷移元の画面に戻らない場合があり、ユーザーの利便性を損なうという問題がある。   However, the above prior art has the following problems. For example, if there are multiple screens that can be used as transition source options and each screen transitions to one transition destination, the return destination is fixed if the URL is directly specified in the menu or the like of the transition destination screen. End up. For this reason, there is a case where the screen does not return to the screen of the transition source intended by the user, and there is a problem that the convenience of the user is impaired.

また、予め戻り先として、遷移元へ戻るためのURLを直接定義してしまうと、遷移元の画面又はメニュー構成に変更があった場合には、お互いのアプリケーションを修正する必要があり、プログラムの保守性に問題がある。また、他のアプリケーションにリンクを張り遷移した後、遷移元のアプリケーションに戻る際、リンク先のURLを直接指定すると、URLを知られてしまい攻撃の対象になるなどセキュリティ上の問題がある。また、直接指定したリンク先のURLを、遷移先以外のアプリケーションから直接指定されると、遷移元のアプリケーションの画面が直接の攻撃の対象となる可能性があり、セキュリティ上の問題となる。   In addition, if the URL for returning to the transition source is directly defined as the return destination in advance, if there is a change in the transition source screen or menu configuration, it is necessary to modify each other's application. There is a problem with maintainability. In addition, when a link is established to another application and a transition is made, when a link destination URL is directly specified when returning to the transition source application, there is a security problem such that the URL is known and becomes an attack target. Further, if the link destination URL directly specified is directly specified by an application other than the transition destination, the screen of the transition source application may be a target of direct attack, which is a security problem.

本発明は、上述の問題に鑑みて成されたものであり、画面遷移の際に遷移元に複数の画面が存在する場合であっても、それぞれにおいて、好適に遷移先の画面からユーザーが意図する遷移元の画面へ戻るとともに、メンテナンス容易とする仕組みを提供することを目的とする。
The present invention has been made in view of the above-described problems, and even when a plurality of screens exist at the transition source at the time of screen transition, the user preferably intends from the transition destination screen in each case. together back to the transition source screen, and to provide a mechanism to facilitate maintenance.

本発明は、外部装置のWebブラウザから利用可能な複数のWebアプリケーションを有する情報処理装置であって、外部装置で動作するWebブラウザに、第のWebアプリケーションの画面を表示するための画面データを送信する第1の送信手段と、前記外部装置において前記第1のWebアプリケーションの画面から前記第1のWebアプリケーションとは異なる第2のWebアプリケーションの画面に遷移するための画面遷移を引き起こす指示がなされたことに応じて前記情報処理装置に対して送信される、前記第2のWebアプリケーションの画面を要求する指示を前記外部装置から受信する第1の受信手段と、前記第2のWebアプリケーションの画面を要求する指示を受信した場合に、前記第2のWebアプリケーションの画面を表示するための画面データとともに、前記Webブラウザに提供されていた前記第1のWebアプリケーションの画面を識別する識別情報を前記外部装置の前記Webブラウザに送信する第2の送信手段と、前記外部装置において前記第2のWebアプリケーションの画面から前記第1のWebアプリケーションの画面に遷移するための画面遷移を引き起こす指示がなされたことに応じて前記情報処理装置に対して送信される、前記第1のWebアプリケーションの画面を識別する識別情報に対応する情報を前記外部装置のWebブラウザから受信した場合に、前記受信した識別情報に対応する情報に基づいて前記第1のWebアプリケーションが提供する遷移先の画面に遷移するためのURLを決定する決定手段と、前記決定手段で決定したURLにリダイレクトするための情報を前記外部装置のWebブラウザに送信する第3の送信手段と、を有することを特徴とする。
The present invention is an information processing apparatus having a plurality of Web applications that can be used from a Web browser of an external device, and displays screen data for displaying a screen of the first Web application on a Web browser operating on the external device. a first transmission means, said instruction causing screen transition for transition to a screen of a different second Web application in the external device from the screen of the first Web application and the first Web application is made to send First receiving means for receiving from the external device an instruction for requesting the screen of the second Web application, which is transmitted to the information processing apparatus in response, and the screen of the second Web application when receiving an instruction for requesting, before Symbol of the second Web application Together with the screen data for displaying a face, and a second transmission means for transmitting identification information for identifying the screen of the first Web applications that were provided to the Web browser to the Web browser of the external device, wherein The first information is transmitted to the information processing apparatus in response to an instruction for causing a screen transition to transition from the second Web application screen to the first Web application screen in the external device . When the information corresponding to the identification information for identifying the screen of one Web application is received from the Web browser of the external device, the transition provided by the first Web application based on the information corresponding to the received identification information A determination means for determining a URL for transition to the previous screen, and the determination means And having a third transmitting means for transmitting information to redirect the boss was URL to the Web browser of the external device.

本発明によれば、画面遷移の際に遷移元に複数の画面が存在する場合であっても、それぞれにおいて、好適に遷移先の画面からユーザーが意図する遷移元の画面へ戻るとともに、メンテナンス容易することができる。
According to the present invention, even when there are a plurality of screens at the transition source at the time of screen transition, in each case, it is preferable to return from the transition destination screen to the transition source screen intended by the user and perform maintenance . it can be facilitated.

第1の実施形態に係る情報処理システムの全体図。1 is an overall view of an information processing system according to a first embodiment. 第1の実施形態に係るMFP101をハードウェア構成を示すブロック図。FIG. 2 is a block diagram showing a hardware configuration of the MFP 101 according to the first embodiment. 第1の実施形態に係る情報処理システムの制御構成を示す図。The figure which shows the control structure of the information processing system which concerns on 1st Embodiment. 第1の実施形態に係るWebサーバー部301のアプリケーションの情報処理システムのソフトウェア構成を示す図。The figure which shows the software structure of the information processing system of the application of the Web server part 301 which concerns on 1st Embodiment. 第1の実施形態に係る情報処理システムの動作を説明するシーケンス図。The sequence diagram explaining operation | movement of the information processing system which concerns on 1st Embodiment. 第1の実施形態に係るアプリケーション311の画面遷移時の動作を説明するフローチャート。8 is a flowchart for explaining the operation at the time of screen transition of the application 311 according to the first embodiment. 第1の実施形態に係るアプリケーション311の画面遷移後の動作を説明するフローチャート。8 is a flowchart for explaining an operation after a screen transition of the application 311 according to the first embodiment. 第1の実施形態に係るアプリケーション312の動作を説明するフローチャート。6 is a flowchart for explaining the operation of an application 312 according to the first embodiment. 第1の実施形態に係るパラメータデータ414として保存されたデータの内容を模試したデータテーブルを示す図。The figure which shows the data table which tried the content of the data preserve | saved as the parameter data 414 which concerns on 1st Embodiment. 第1の実施形態に係るパラメータデータ414として保存されたデータの内容を模試したデータテーブルを示す図。The figure which shows the data table which tried the content of the data preserve | saved as the parameter data 414 which concerns on 1st Embodiment. 第2の実施形態に係る情報処理システムの動作を説明するシーケンス図。The sequence diagram explaining operation | movement of the information processing system which concerns on 2nd Embodiment.

以下、添付図面を参照して本発明の実施形態を詳しく説明する。なお、以下の実施形態は特許請求の範囲に係る本発明を限定するものでなく、また本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。   Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. The following embodiments do not limit the present invention according to the claims, and all combinations of features described in the present embodiments are not necessarily essential to the solution means of the present invention. .

<第1の実施形態>
<情報処理システム>
以下では、図1乃至図10を参照して、本発明の第1の実施形態について説明する。まず、図1を参照して、本実施形態に係る情報処理装置を含む情報処理システム100の全体構成について説明する。情報処理システム100は、MFP101、MFP106、外部WEBサーバー104、及びクライアント端末(外部装置)105を含む。これらの装置は、LAN(ローカルエリアネットワーク)102やインターネット103によって構成されたネットワークを介して接続されている。
<First Embodiment>
<Information processing system>
In the following, a first embodiment of the present invention will be described with reference to FIGS. First, an overall configuration of an information processing system 100 including an information processing apparatus according to the present embodiment will be described with reference to FIG. The information processing system 100 includes an MFP 101, an MFP 106, an external WEB server 104, and a client terminal (external device) 105. These devices are connected via a network constituted by a LAN (local area network) 102 and the Internet 103.

また、クライアント端末105は、外部のWebサービスに接続し、Webアプリケーションを操作可能なWebブラウザ機能を備える。MFP101及びMFP106は、紙媒体をスキャンし、そのスキャンデータを元に用紙に画像を形成して印刷するコピー機能を有する。さらには、これらのMFPは、クライアント端末からアクセスし操作可能なアプリケーションを提供可能なWebサイト機能を有するWebサーバー部を備える。外部Webサーバー104も同様に、クライアント端末105からアクセスし操作可能なアプリケーションを提供可能なWebサイト機能を有するWebサーバー部を備える。   In addition, the client terminal 105 has a Web browser function that can connect to an external Web service and operate a Web application. The MFP 101 and the MFP 106 have a copy function of scanning a paper medium, forming an image on a sheet based on the scan data, and printing the image. Further, these MFPs include a Web server unit having a Web site function that can provide an application that can be accessed and operated from a client terminal. Similarly, the external Web server 104 includes a Web server unit having a Web site function that can provide an application that can be accessed and operated from the client terminal 105.

<MFPの構成>
次に、図2を参照して、MFP101の構成について説明する。MFP106も以下で説明するMFP101と同様の構成であるため、説明を省略する。MFP101は、スキャナ213及びプリンタ214を接続するとともに、操作表示部211、操作入力部212、及びLAN102を接続することが可能なコントローラユニット200を備える。コントローラユニット200は、CPU201、RAM202、ROM203、HDD204、操作部出力I/F205、操作部入力I/F206、ネットワークI/F207、スキャナI/F208、及びプリンタI/F209を備える。各種制御プログラムを実行するCPU(Central Processing Unit)201を有する。CPU201は、ROM(Read Only Memory)203に格納されているブートプログラムに基づきシステムを起動する。さらに、CPU201は、HDD(ハードディスクドライブ)204に格納されている制御プログラムを読み出してRAM(Random Access Memory)202をワークエリアとして所定の処理を実行する。HDD204には、WEBブラウザ402の機能を含む、各種制御プログラムが格納される。また、HDD204には、スキャナ213から読み込んだスキャンデータやネットワークI/F207を介して装置外から取得したデータが格納される。
<Configuration of MFP>
Next, the configuration of the MFP 101 will be described with reference to FIG. Since the MFP 106 has the same configuration as the MFP 101 described below, the description thereof is omitted. The MFP 101 includes a controller unit 200 to which a scanner 213 and a printer 214 are connected, and an operation display unit 211, an operation input unit 212, and a LAN 102 can be connected. The controller unit 200 includes a CPU 201, a RAM 202, a ROM 203, an HDD 204, an operation unit output I / F 205, an operation unit input I / F 206, a network I / F 207, a scanner I / F 208, and a printer I / F 209. A CPU (Central Processing Unit) 201 that executes various control programs is included. The CPU 201 activates the system based on a boot program stored in a ROM (Read Only Memory) 203. Further, the CPU 201 reads a control program stored in an HDD (Hard Disk Drive) 204 and executes a predetermined process using a RAM (Random Access Memory) 202 as a work area. Various control programs including the function of the WEB browser 402 are stored in the HDD 204. The HDD 204 stores scan data read from the scanner 213 and data acquired from outside the apparatus via the network I / F 207.

操作部出力I/F205は、操作表示部211へのデータ出力通信制御を行う。操作部入力I/F206は、操作入力部212からのデータ入力通信制御を行う。ネットワークI/F207は、LAN102に接続され、LAN102を介した情報の入出力制御を行う。スキャナI/F208は、スキャナ213から画像データを入力するとともに、スキャナ制御データの入出力を行う。プリンタI/F209は、プリンタ214へ出力画像データを出力するとともに、プリンタ制御データの入出力を行う。このように、各コンポーネント201〜209はシステムバス210上に配置される。   The operation unit output I / F 205 performs data output communication control to the operation display unit 211. The operation unit input I / F 206 performs data input communication control from the operation input unit 212. A network I / F 207 is connected to the LAN 102 and performs input / output control of information via the LAN 102. A scanner I / F 208 inputs image data from the scanner 213 and inputs / outputs scanner control data. A printer I / F 209 outputs output image data to the printer 214 and inputs / outputs printer control data. As described above, the components 201 to 209 are arranged on the system bus 210.

操作入力部212は、タッチパネルやハードキーなどの入力装置を備えた、ユーザーからの指示入力インターフェースである。操作表示部211は、LCD(Liquid Crystal Display)やLED(Light Emitting Diode)などの表示装置を備えた、ユーザーへの表示インターフェースである。   The operation input unit 212 is an instruction input interface from a user including input devices such as a touch panel and hard keys. The operation display unit 211 is a display interface for a user including a display device such as an LCD (Liquid Crystal Display) or an LED (Light Emitting Diode).

スキャナ213は、CCD(Charge Coupled Device)などの光学的な読み取り装置を備え、紙媒体を光学的に操作して、電子的な画像データとして読み取る機能を有する。プリンタ214は、電子的な画像データを、用紙などの記録媒体上に画像として形成する機能を有する。   The scanner 213 includes an optical reading device such as a CCD (Charge Coupled Device), and has a function of optically operating a paper medium to read it as electronic image data. The printer 214 has a function of forming electronic image data as an image on a recording medium such as paper.

<制御構成>
次に、図3を参照して、MFP101を例とした画像処理装置(情報処理装置)を含むシステム全体の制御構成について説明する。図3に示す各機能部は、MFP101内のCPU201が、ROM203又はHDD204に格納された制御プログラムをRAM202に読み出して実行することにより実現される。ここで、図1で説明したMFP106の構成はMFP101の構成と同様であるため、ここではMFP101について説明し、MFP106の説明は割愛する。また、外部Webサーバー104においても同様の制御構成とすることができるので、外部Webサーバー104の説明も割愛する。つまり、以下で説明するMFP101の構成は、外部Webサーバー104において実現してもよい。この場合、クライアント端末105へ提供するMFP101のサービス(機能)を提供するWebアプリケーションを外部Webサーバー104で管理する。
<Control configuration>
Next, a control configuration of the entire system including an image processing apparatus (information processing apparatus) taking the MFP 101 as an example will be described with reference to FIG. 3 is realized by the CPU 201 in the MFP 101 reading out the control program stored in the ROM 203 or the HDD 204 to the RAM 202 and executing it. Here, since the configuration of the MFP 106 described with reference to FIG. 1 is the same as the configuration of the MFP 101, only the MFP 101 will be described here, and the description of the MFP 106 will be omitted. Further, since the same control configuration can be used for the external Web server 104, the description of the external Web server 104 is also omitted. That is, the configuration of the MFP 101 described below may be realized in the external Web server 104. In this case, a Web application that provides the service (function) of the MFP 101 to be provided to the client terminal 105 is managed by the external Web server 104.

MFP101は、制御構成として、Webサーバー部301と前述のネットワークI/F207を有する。ネットワークI/F207は、外部のクライアント端末105へWebサービスを提供するために通信を行う。また、外部のWebサービスを利用するために、外部Webサーバー104や、さらにMFP106とも通信を行う。   The MFP 101 includes a Web server unit 301 and the network I / F 207 described above as a control configuration. The network I / F 207 performs communication in order to provide a Web service to the external client terminal 105. Further, in order to use an external Web service, communication is also performed with the external Web server 104 and the MFP 106.

外部のクライアント端末105は、Webサービスの提供を受けるためにWebブラウザ150を有する。具体的には、Webサービスを提供するWebサーバー部301にリクエストメッセージを送信するとともに、Webサーバー部301から送信されるレスポンスメッセージを受信しWebブラウザ150に画面を表示する。ここでWebサービスはWebサーバー部301の複数のアプリケーションプログラムという形で提供される。クライアント端末105のWebブラウザ150では、これらのアプリケーションのWebサービスを利用し、Webサーバーを有するMFP101の操作を行ったりすることも可能である。   The external client terminal 105 has a web browser 150 in order to receive provision of web services. Specifically, a request message is transmitted to the Web server unit 301 that provides the Web service, and a response message transmitted from the Web server unit 301 is received and a screen is displayed on the Web browser 150. Here, the Web service is provided in the form of a plurality of application programs in the Web server unit 301. The Web browser 150 of the client terminal 105 can operate the MFP 101 having the Web server by using the Web service of these applications.

次に、Webサーバー部301の構成について説明する。Webサーバー部301は、Webサービス処理部310、アプリケーション311、312、313を備える。なお、アプリケーション311は第1アプリケーションに対応し、アプリケーション312は第2アプリケーションに対応する。Webサービス処理部310は、クライアントであるWebブラウザ150からのリクエストメッセージを受け付け、リクエストメッセージに従って、どのWebアプリケーションのサービスと通信するかを決定する、HTTPサービスとしての機能を有する。具体的には、Webサービス処理部310は、リクエストメッセージとしてURLを受け付け、URLを解析し、URLに従って予め登録されている1つ以上のWebアプリケーションのうち、どのURLへのリクエストかを判断する。そしてリクエストに従って該当のWebアプリケーションをリクエストとともに呼び出す。前述のリクエストメッセージは、具体的にはHTTPのリクエストメッセージであり、URLに紐づいたWebブラウザからのパラメータの値も含むことができる。   Next, the configuration of the Web server unit 301 will be described. The web server unit 301 includes a web service processing unit 310 and applications 311, 312, and 313. The application 311 corresponds to the first application, and the application 312 corresponds to the second application. The Web service processing unit 310 has a function as an HTTP service that receives a request message from the Web browser 150 that is a client and determines which Web application service is to be communicated according to the request message. Specifically, the Web service processing unit 310 receives a URL as a request message, analyzes the URL, and determines to which URL of one or more Web applications registered in advance according to the URL. Then, the corresponding Web application is called together with the request according to the request. The above-described request message is specifically an HTTP request message, and can include a parameter value from a Web browser associated with a URL.

アプリケーション311、312、313は、Webサービスを提供するWebアプリケーションであり、それぞれ個別のプログラム構成となっている。各アプリケーションは、事前にWebサービス処理部310に登録することで、Webサービス処理部310での指示を受け、Webブラウザ150と通信し、クライアント端末105にWebサービスを提供することが可能である。   The applications 311, 312, and 313 are Web applications that provide Web services, and have individual program configurations. Each application can register with the Web service processing unit 310 in advance to receive an instruction from the Web service processing unit 310, communicate with the Web browser 150, and provide the Web service to the client terminal 105.

<アプリケーションの構成>
次に、図4を参照して、図3におけるアプリケーション311の構成について説明する。なお、図3で説明したアプリケーション312、313は、アプリケーション311の構成と同様であるため、説明を割愛する。
<Application configuration>
Next, the configuration of the application 311 in FIG. 3 will be described with reference to FIG. Note that the applications 312 and 313 described with reference to FIG.

アプリケーション311は、CGI処理部410、認証処理部411、画面生成部412、パラメータ処理部413、パラメータデータ414、及びデバイス処理部415を備える。CGI処理部410は、前述のWebサービス処理部310から呼び出され、Webサービス処理部310からのリクエストメッセージを受け付ける。その後、CGI処理部410は、アプリケーション311でWebサービスを提供すべく処理を実行し、その結果をWebサービス処理部310に送信する。また、CGI処理部410は、Webサービスを提供するために、前述のリクエストメッセージに基づいて、後述する認証処理、パラメータ処理、画面生成処理、及びデバイス制御処理等を実行する。   The application 311 includes a CGI processing unit 410, an authentication processing unit 411, a screen generation unit 412, a parameter processing unit 413, parameter data 414, and a device processing unit 415. The CGI processing unit 410 is called from the web service processing unit 310 described above and receives a request message from the web service processing unit 310. Thereafter, the CGI processing unit 410 executes processing to provide a Web service by the application 311 and transmits the result to the Web service processing unit 310. In addition, the CGI processing unit 410 executes authentication processing, parameter processing, screen generation processing, device control processing, and the like, which will be described later, based on the request message described above, in order to provide a Web service.

認証処理部411は、CGI処理部410から呼び出され、リクエストメッセージが有効か否かの判断や、改めて認証を要求するなどのセッションの処理や認証処理を実行する。具体的には、認証処理部411は、リクエストメッセージのURL、パラメータ、HTTPのヘッダやリクエスト又はCookieを解析する。さらに、認証処理部411は、リクエストの認証期限やセッションが期限内かどうか、改めて認証処理が必要か否かなどを判断し、その結果をCGI処理部410に通知する。   The authentication processing unit 411 is called from the CGI processing unit 410 and executes session processing and authentication processing such as determining whether the request message is valid or requesting authentication again. Specifically, the authentication processing unit 411 analyzes the URL, parameter, HTTP header, request, or cookie of the request message. Further, the authentication processing unit 411 determines whether or not the request authentication time limit or the session is within the time limit, whether or not the authentication processing is necessary, and notifies the CGI processing unit 410 of the result.

画面生成部412は、CGI処理部410から呼び出され、Webサービスを提供すべく画面生成処理を行う。具体的には、画面生成部412は、CGI処理部410で処理された各結果に基づいて、テンプレートのHTMLファイルから、サービスに必要なHTMLの画面を生成する。ここでの画面は、アプリケーション311の他のWebサービスを受けるべく配置されたメニューボタンを含んでいる。さらに、当該画面には、他のWebアプリケーション、例えばアプリケーション312を呼び出すためのメニューボタンが含まれてもよい。   The screen generation unit 412 is called from the CGI processing unit 410 and performs screen generation processing to provide a Web service. Specifically, the screen generation unit 412 generates an HTML screen necessary for the service from the HTML file of the template based on each result processed by the CGI processing unit 410. The screen here includes menu buttons arranged to receive other Web services of the application 311. Further, the screen may include a menu button for calling another Web application, for example, the application 312.

パラメータ処理部413は、CGI処理部410から呼び出され、前述のリクエストメッセージ中のパラメータを解析し、必要な処理を判断し、その結果をCGI処理部410に通知する。また、パラメータ処理部413は、CGI処理部410からのリクエストに応じて、必要なパラメータを生成し、そのパラメータをCGI処理部410に送付する。また、パラメータ処理部413は、当該リクエスト中のパラメータや、生成したパラメータをパラメータデータ414としてRAM202又はHDD204に保存することが可能である。また、パラメータ処理部413は、必要に応じで保存されたパラメータデータ414を呼び出すことも可能である。パラメータデータ414は、具体的には、当該リクエストメッセージ中のパラメータとして、画面に紐づく情報を生成したり、記憶したりする。CGI処理部410は、パラメータ処理部413の結果に基づいて、前述の認証処理を認証処理部411に実行させたり、必要な画面を画面生成部412に指示し処理することが可能である。   The parameter processing unit 413 is called from the CGI processing unit 410, analyzes the parameters in the request message described above, determines necessary processing, and notifies the CGI processing unit 410 of the result. Further, the parameter processing unit 413 generates a necessary parameter in response to a request from the CGI processing unit 410 and sends the parameter to the CGI processing unit 410. Further, the parameter processing unit 413 can store the parameter in the request and the generated parameter as parameter data 414 in the RAM 202 or the HDD 204. Further, the parameter processing unit 413 can call the saved parameter data 414 as necessary. Specifically, the parameter data 414 generates or stores information associated with the screen as a parameter in the request message. Based on the result of the parameter processing unit 413, the CGI processing unit 410 can cause the authentication processing unit 411 to execute the above-described authentication processing or can instruct the screen generation unit 412 to process a necessary screen.

デバイス処理部415は、CGI処理部410から呼び出され、指示に基づきMFP101の設定値の更新、参照、及び実際のMFP101を動作させるなどの処理を行う。また、参照された設定値及びMFP101の動作結果等をCGI処理部410に通知する。例えば、アプリケーションプログラムとしてMFP101の設定を参照、更新したり、MFP101のスキャナ213又はプリンタ214を動作させるアプリケーションプログラムが存在する。これらのアプリケーションは、提供する画面に、情報表示や設定メニューを表示する。また、MFP101の各機能を動作させるためのメニューを表示し、ユーザーの指示を受け付ける。その場合、前述のアプリケーションプログラムは、デバイス処理部415を利用しMFP101が有する機能を動作させることが可能となる。   The device processing unit 415 is called from the CGI processing unit 410 and performs processing such as updating and referring to the setting value of the MFP 101 and operating the actual MFP 101 based on the instruction. Further, the CGI processing unit 410 is notified of the reference setting value and the operation result of the MFP 101. For example, there is an application program that refers to or updates the setting of the MFP 101 as an application program, or causes the scanner 213 or the printer 214 of the MFP 101 to operate. These applications display information display and setting menus on the screens provided. In addition, a menu for operating each function of the MFP 101 is displayed, and a user instruction is accepted. In that case, the above-described application program can operate the functions of the MFP 101 using the device processing unit 415.

ここで各アプリケーションである、アプリケーション311、312、313は、事前にWebサーバー部301に登録されているアプリケーションプログラムでもよい。或いは、後からWebサーバー部301に追加インストールされるアプリケーションプログラムでもよい。その場合、インストールサービスプログラムがWebサーバー部301に登録された状態で、アプリケーションプログラムの追加インストール処理を実行することができる。追加インストールされたアプリケーションプログラムは、前述のインストールサービスプログラムによってWebサービス処理部310に登録され、同様のWebサービスを提供することが可能となる。   Here, the applications 311, 312, and 313, which are the respective applications, may be application programs registered in the Web server unit 301 in advance. Alternatively, an application program that is additionally installed in the Web server unit 301 later may be used. In that case, the additional installation process of the application program can be executed in a state where the installation service program is registered in the Web server unit 301. The additionally installed application program is registered in the Web service processing unit 310 by the above-described installation service program, and the same Web service can be provided.

<画面遷移の処理シーケンス>
次に、図5は、本実施形態におけるアプリケーション311、312の画面遷移の処理シーケンスについて説明する。図5のシーケンス図に示す各動作は、MFP101のCPU201が制御プログラムを実行することにより実現される。ここでは、ユーザーがアプリケーション311のWebサービスを受けるべく指示した例を説明する。
<Screen transition processing sequence>
Next, FIG. 5 describes a screen transition processing sequence of the applications 311 and 312 in the present embodiment. Each operation shown in the sequence diagram of FIG. 5 is realized by the CPU 201 of the MFP 101 executing a control program. Here, an example in which the user instructs to receive the Web service of the application 311 will be described.

S501において、ユーザーは、必要なWebアプリケーションのサービスを受けるべく、Webブラウザ150に表示された画面中のメニュー等をクリックしユーザー指示を行う。Webブラウザ501は、当該ユーザー指示を画面遷移指示として受け取る。続いて、S502において、Webブラウザ150は、リクエストメッセージとして、受け取った画面遷移指示をWebサービス処理部310に送信する。S503において、Webサービス処理部310は、リクエストメッセージを解析し、アプリケーション311を呼び出すべく、アプリケーション311に画面遷移指示を行う。   In step S <b> 501, the user clicks a menu or the like on the screen displayed on the web browser 150 to give a user instruction in order to receive a necessary web application service. The web browser 501 receives the user instruction as a screen transition instruction. In step S <b> 502, the web browser 150 transmits the received screen transition instruction to the web service processing unit 310 as a request message. In step S <b> 503, the Web service processing unit 310 analyzes the request message and issues a screen transition instruction to the application 311 to call the application 311.

S504において、アプリケーション311は、リクエストメッセージに応じた画面データを生成し、S505において、生成した画面データをWebサービス処理部310に送信する。S506において、Webサービス処理部310は、S504でアプリケーション311から受け取った画面データを、WebブラウザS505へ送信する。これによって当該ユーザーは、指示したアプリケーション311のWebサービスを受けることができる。   In step S504, the application 311 generates screen data corresponding to the request message, and in step S505, the generated screen data is transmitted to the web service processing unit 310. In step S506, the web service processing unit 310 transmits the screen data received from the application 311 in step S504 to the web browser S505. As a result, the user can receive the web service of the designated application 311.

S507において、ユーザーは、受け取った画面から新たなサービスを受けるべく、Webブラウザ506に対してユーザー指示を行う。具体的には、ユーザーはWebブラウザ150に表示された画面中のメニューボタン等をクリックすることで、ユーザー指示を行う。Webブラウザ150は、当該ユーザー指示を画面遷移指示として受け取る。ここでは、Webブラウザ150に表示された画面のメニューボタンのうちアプリケーション312のWebサービスを受けるためのメニューボタンがクリックされた例を説明する。S508において、Webブラウザ150は、前述のS506におけるユーザー指示に従い、Webサービス処理部310にリクエストメッセージとして画面遷移指示を送信する。   In step S507, the user instructs the web browser 506 to receive a new service from the received screen. Specifically, the user performs a user instruction by clicking a menu button or the like in the screen displayed on the Web browser 150. The web browser 150 receives the user instruction as a screen transition instruction. Here, an example will be described in which a menu button for receiving the Web service of the application 312 is clicked among the menu buttons displayed on the Web browser 150. In step S <b> 508, the web browser 150 transmits a screen transition instruction as a request message to the web service processing unit 310 in accordance with the user instruction in step S <b> 506 described above.

S509において、Webサービス処理部310は、アプリケーション311に画面遷移指示を行う。S510において、アプリケーション311は、リクエストされた画面遷移がアプリケーション312のメニューであるため、アプリケーション312の画面にリダイレクトすべく、対応するURLを生成する。さらに、アプリケーション311は、画面IDを生成し、URLのパラメータとして付加し、遷移先情報を生成する。遷移先情報とは、例えば当該画面遷移指示によって遷移するアプリケーション312の画面からの戻り先画面を示す情報である。ここでのパラメータ処理は、前述の図4のパラメータ処理部413で行われる。ここで、生成したパラメータを前述のパラメータデータ414として記憶する。続いて、S511において、アプリケーション311は、生成した遷移先情報を画面のリダイレクト処理としてWebサービス処理部310に送信する。   In step S <b> 509, the web service processing unit 310 issues a screen transition instruction to the application 311. In S510, since the requested screen transition is the menu of the application 312, the application 311 generates a corresponding URL to redirect to the screen of the application 312. Further, the application 311 generates a screen ID, adds it as a URL parameter, and generates transition destination information. The transition destination information is information indicating a return destination screen from the screen of the application 312 that transitions according to the screen transition instruction, for example. The parameter processing here is performed by the parameter processing unit 413 in FIG. 4 described above. Here, the generated parameter is stored as the parameter data 414 described above. Subsequently, in S511, the application 311 transmits the generated transition destination information to the Web service processing unit 310 as a screen redirection process.

S512において、Webサービス処理部310は、遷移先情報を一度Webブラウザ150に送信する。S513において、Webブラウザ150は、受け付けたリクエストがリダイレクトであるため、URLと画面IDで構成された遷移先情報を参照し、当該遷移先情報に基づいて、画面遷移指示をWebサービス処理部310に送信する。S514において、Webサービス処理部310は、送信されたリクエストメッセージ中のURLがアプリケーション312のメニューであるため、アプリケーション312に画面遷移指示を行うべく、アプリケーション312を呼び出す。その際、画面遷移指示のリクエストには、S509で生成された画面IDの情報を含むことが可能である。   In S512, the Web service processing unit 310 once transmits the transition destination information to the Web browser 150. In S513, since the received request is a redirect, the Web browser 150 refers to the transition destination information configured with the URL and the screen ID, and sends a screen transition instruction to the Web service processing unit 310 based on the transition destination information. Send. In step S <b> 514, since the URL in the transmitted request message is the menu of the application 312, the Web service processing unit 310 calls the application 312 to instruct the application 312 to perform screen transition. In this case, the screen transition instruction request can include the screen ID information generated in S509.

S515において、アプリケーション312は、S513でWebサービス処理部310から受け付けた画面ID(識別子)を記憶する。画面IDの記憶は、アプリケーション312が管理するRAM202又はHDD204の記憶領域に保存することが可能である。さらに、アプリケーション312は、リクエストメッセージに応じた画面データを生成する。S516において、アプリケーション312は、生成した画面データをWebサービス処理部310に送信する。S517において、Webサービス処理部310は、アプリケーション312から受信したWebブラウザ150に画面データを送信する。これにより、ユーザーは、Webブラウザ150より、アプリケーション312のWebサービスが受けられる。   In step S515, the application 312 stores the screen ID (identifier) received from the web service processing unit 310 in step S513. The screen ID can be stored in a storage area of the RAM 202 or the HDD 204 managed by the application 312. Furthermore, the application 312 generates screen data corresponding to the request message. In step S <b> 516, the application 312 transmits the generated screen data to the web service processing unit 310. In step S <b> 517, the web service processing unit 310 transmits screen data to the web browser 150 received from the application 312. As a result, the user can receive the Web service of the application 312 from the Web browser 150.

次に、ユーザーがアプリケーション312の画面から、遷移元であるアプリケーション311の画面に戻るための画面遷移指示を行う場合のフローを説明する。S518において、ユーザーは、元のアプリケーション311に戻るべく、Webブラウザ150に表示された画面中の、戻るためのメニューをクリックするなどして、ユーザー指示を行う。Webブラウザは、当該ユーザー指示を、画面遷移指示として受け付ける。   Next, a flow when the user issues a screen transition instruction for returning from the screen of the application 312 to the screen of the application 311 that is the transition source will be described. In S518, in order to return to the original application 311, the user issues a user instruction by clicking a menu for returning in the screen displayed on the Web browser 150. The web browser accepts the user instruction as a screen transition instruction.

S519において、Webブラウザ150は、画面遷移指示をWebサービス処理部310に送信する。S520において、Webサービス処理部310は、同様に画面遷移指示をアプリケーション312へ送信し、画面遷移指示をすべくアプリケーション312を呼び出す。S521において、アプリケーション312は、前述のS514で記憶領域に記憶した画面IDを参照し、遷移元(戻り先)であるアプリケーション311のテンポラリのURL(仮のURL:仮想画面)を設定し、画面IDをパラメータとして、遷移先情報を生成する。S522において、アプリケーション312は、設定したテンポラリのURLにリダイレクトさせるべく、遷移先情報をWebサービス処理部310に送信する。   In step S519, the web browser 150 transmits a screen transition instruction to the web service processing unit 310. In step S520, the Web service processing unit 310 similarly transmits a screen transition instruction to the application 312 and calls the application 312 to perform the screen transition instruction. In step S521, the application 312 refers to the screen ID stored in the storage area in step S514 described above, sets the temporary URL (temporary URL: virtual screen) of the application 311 that is the transition source (return destination), and sets the screen ID. Is used as a parameter to generate transition destination information. In step S <b> 522, the application 312 transmits the transition destination information to the Web service processing unit 310 in order to redirect to the set temporary URL.

S523において、Webサービス処理部310は、遷移先情報を一度Webブラウザ150に送信する。S524において、Webブラウザ150は、受け付けたリクエストがリダイレクトであるため、URLと画面IDで構成された遷移先情報を参照し、画面遷移指示をWebサービス処理部310に送信する。S525において、Webサービス処理部310は、送信されたリクエストメッセージ中のURLがアプリケーション311のメニューであるため、アプリケーション311に画面遷移指示を行うべく、アプリケーション311を呼び出す。その際、画面遷移指示のリクエストには、S509で生成され、S521でアプリケーション312で設定された画面IDの情報をパラメータとして含んでいる。   In S523, the Web service processing unit 310 once transmits the transition destination information to the Web browser 150. In S524, since the accepted request is a redirect, the Web browser 150 refers to the transition destination information configured with the URL and the screen ID, and transmits a screen transition instruction to the Web service processing unit 310. In S525, since the URL in the transmitted request message is the menu of the application 311, the Web service processing unit 310 calls the application 311 to instruct the application 311 to perform a screen transition. At that time, the screen transition instruction request includes the screen ID information generated in S509 and set by the application 312 in S521 as a parameter.

S526において、アプリケーション311は、URLの内容とパラメータを解析する。具体的には、URLが予め定義されたテンポラリのURLであれば、前述のS519で生成し記憶したパラメータデータ414を参照し、指定されたパラメータがどの画面に割り当てられているかを判断する。そして指定されたパラメータと一致したパラメータデータに紐づけられた画面を判断し、新たなURLを含む遷移先情報を生成する。S527において、アプリケーション311は、生成した遷移先情報を画面のリダイレクト処理としてWebサービス処理部310に送信する。S528において、Webサービス処理部310は、遷移先情報を一度Webブラウザ150に送信する。   In step S526, the application 311 analyzes the contents and parameters of the URL. Specifically, if the URL is a predefined temporary URL, the parameter data 414 generated and stored in S519 described above is referred to, and it is determined to which screen the designated parameter is assigned. Then, the screen associated with the parameter data that matches the designated parameter is determined, and transition destination information including a new URL is generated. In step S527, the application 311 transmits the generated transition destination information to the web service processing unit 310 as a screen redirection process. In S528, the Web service processing unit 310 once transmits the transition destination information to the Web browser 150.

S529において、Webブラウザ150は、受け付けたリクエストがリダイレクトであるため、URLと画面IDで構成された該遷移先情報を参照し、画面遷移指示をWebサービス処理部310に送信する。S530において、Webサービス処理部310は、送信されたリクエストメッセージ中のURLがアプリケーション311のメニューであるため、アプリケーション311に画面遷移指示を行うべく、アプリケーション311を呼び出す。   In S529, since the received request is a redirect, the Web browser 150 refers to the transition destination information configured by the URL and the screen ID, and transmits a screen transition instruction to the Web service processing unit 310. In S530, since the URL in the transmitted request message is the menu of the application 311, the Web service processing unit 310 calls the application 311 to instruct the application 311 to perform screen transition.

S531において、アプリケーション311は、セッション処理を実行する。ここでのセッション処理は前述の図4の認証処理部411で行われる。また、ここでセッション処理だけでなく認証処理を実行することも可能である。その場合の認証処理も前述の図4の認証処理部411で行われることとなる。   In step S531, the application 311 executes session processing. The session processing here is performed by the authentication processing unit 411 shown in FIG. Here, it is possible to execute not only session processing but also authentication processing. The authentication process in that case is also performed by the above-described authentication processing unit 411 in FIG.

S532において、アプリケーション311は、URL情報を含むリクエストメッセージに基づき、遷移元の画面データを生成する。ここでの画面生成処理は、前述の図4の画面生成部412で行われる。S533において、アプリケーション311は、生成した画面データをWebサービス処理部310に送信する。S534において、Webサービス処理部310は、受信した画像データをWebブラウザ150に送信する。   In S532, the application 311 generates transition source screen data based on the request message including URL information. The screen generation process here is performed by the screen generation unit 412 of FIG. 4 described above. In step S <b> 533, the application 311 transmits the generated screen data to the web service processing unit 310. In step S534, the web service processing unit 310 transmits the received image data to the web browser 150.

<処理フロー>
以下では、図6乃至図8を参照して、アプリケーション311、312の画面遷移時における処理フローについて説明する。まず、図6を参照して、アプリケーション311の画面遷移時における処理手順を説明する。ここでは、前述の図5のS501乃至S516におけるアプリケーション311の動作を補足しながら説明する。
<Processing flow>
Hereinafter, a processing flow at the time of screen transition of the applications 311 and 312 will be described with reference to FIGS. First, with reference to FIG. 6, the processing procedure at the time of screen transition of the application 311 will be described. Here, the operation of the application 311 in S501 to S516 of FIG.

S601において、アプリケーション311は、Webサービス処理部310から受けたリクエストメッセージの指示内容を解析する。この処理はCGI処理部410で行われる。具体的には、リクエストメッセージのURLから、どのメニューに対するリクエストなのかを解析する。   In step S <b> 601, the application 311 analyzes the instruction content of the request message received from the web service processing unit 310. This process is performed by the CGI processing unit 410. Specifically, the menu request is analyzed from the URL of the request message.

S602において、アプリケーション311は、解析結果に基づき、リクエストがアプリケーションの画面遷移であるか否かを判断する。アプリケーション画面遷移としてのリクエストメッセージは、予め定義することが可能なので、ここでは当該リクエストメッセージが予め定義されたアプリケーション画面への遷移か否かを判断してもよい。S602でアプリケーション画面遷移でないと判断された場合はS604に進み、アプリケーション311は、通常のアプリケーション311の動作や画面生成等の通常処理を実行し、処理を終了する。なお、画面生成等の通常処理は、前述の図5のS504に該当する。   In step S602, the application 311 determines whether the request is a screen transition of the application based on the analysis result. Since a request message as an application screen transition can be defined in advance, it may be determined here whether or not the request message is a transition to a predefined application screen. If it is determined in S602 that the application screen is not transitioned, the process proceeds to S604, and the application 311 executes normal processing such as operation of the normal application 311 and screen generation, and ends the processing. Note that normal processing such as screen generation corresponds to S504 in FIG.

一方、S602でアプリケーション画面遷移と判断された場合は、S603に進み、アプリケーション311は、該当のアプリケーションへ画面遷移するための遷移先情報を生成する。ここでの遷移先情報とは、具体的にはアプリケーション312への画面遷移のためのURLと、そのパラメータである画面IDとを含む。続いて、S605において、アプリケーション311は、生成したURLと画面IDとを関連付けてパラメータデータ414としてテーブルに記憶する。これらS603とS605の処理は前述の図5のS510に該当する。S606において、アプリケーション311は、生成した画面データをWebサービス処理部310に送信し、処理を終了する。このS606の処理は前述の図5のS511に該当する。   On the other hand, if it is determined in S602 that the application screen transition has occurred, the process proceeds to S603, and the application 311 generates transition destination information for screen transition to the corresponding application. The transition destination information here specifically includes a URL for screen transition to the application 312 and a screen ID that is a parameter thereof. In step S <b> 605, the application 311 associates the generated URL with the screen ID and stores them in the table as parameter data 414. The processes in S603 and S605 correspond to S510 in FIG. In step S606, the application 311 transmits the generated screen data to the web service processing unit 310, and ends the process. The processing in S606 corresponds to S511 in FIG.

次に、図7を参照して、アプリケーション311の遷移元へ戻る際の画面遷移時の処理手順を説明する。ここでは、前述の図5のS524乃至S534におけるアプリケーション311の動作を補足しながら説明する。   Next, a processing procedure at the time of screen transition when returning to the transition source of the application 311 will be described with reference to FIG. Here, the operation of the application 311 in S524 to S534 of FIG.

S701において、アプリケーション311は、Webサービス処理部310から受けたリクエストメッセージの指示内容を解析する。この処理はCGI処理部410で行われる。具体的にはリクエストメッセージのURLからどのメニューに対するリクエストなのかを解析する。   In step S <b> 701, the application 311 analyzes the instruction content of the request message received from the web service processing unit 310. This process is performed by the CGI processing unit 410. Specifically, the menu request is analyzed from the URL of the request message.

S702において、アプリケーション311は、解析結果に基づき、URLがテンポラリのURLか否かを判断する。テンポラリのURLは予め定義することが可能なので、ここでは当該リクエストメッセージ中のURLが予め定義されたテンポラリのURLか否かを判断する。S702でURLがテンポラリのURLと判断された場合は、S703に進み、アプリケーション311は、当該リクエストメッセージのパラメータを確認すべく、パラメータデータ414に格納されたパラメータテーブルを参照し、S704に進む。   In step S702, the application 311 determines whether the URL is a temporary URL based on the analysis result. Since the temporary URL can be defined in advance, it is determined here whether or not the URL in the request message is a predefined temporary URL. If it is determined in step S702 that the URL is a temporary URL, the process advances to step S703, and the application 311 refers to the parameter table stored in the parameter data 414 to check the parameters of the request message, and the process advances to step S704.

S704において、アプリケーション311は、当該リクエストメッセージのパラメータデータが、パラメータテーブルに登録されているか否かを判断する。ここで、パラメータデータとは、画面IDのことである。つまり、アプリケーション311は、画面IDを検索キーとして、該当するデータをパラメータテーブルから検索する。さらに、前述の図6のS605で画面IDと遷移先の画面のURLは関連付けられてパラメータデータ414にテーブルとして登録されている。したがって、アプリケーション311は、画面IDより遷移先の画面のURLを特定することが可能である。ここで、パラメータデータとしての画面IDは、予め定義しておくことも可能である。   In step S704, the application 311 determines whether the parameter data of the request message is registered in the parameter table. Here, the parameter data is a screen ID. That is, the application 311 searches the parameter table for corresponding data using the screen ID as a search key. Further, the screen ID and the URL of the transition destination screen are associated with each other and registered in the parameter data 414 as a table in S605 of FIG. Therefore, the application 311 can specify the URL of the transition destination screen from the screen ID. Here, the screen ID as parameter data can be defined in advance.

S704でリクエストメッセージのパラメータがパラメータデータ414としてテーブルに登録されている場合は、戻り先画面が特定できたものとし、S705へ進む。S705において、アプリケーション311は、遷移先画面をURLに設定しリダイレクトの処理をすべく遷移先情報を生成する。これらS702乃至S705の処理は前述の図5のS526に該当する。続いて、S706に進み、アプリケーション311は、生成した遷移先情報をWebサービス処理部310に送信し、処理を終了する。このS706の処理は、前述の図5のS527に該当する。   If the parameter of the request message is registered in the table as the parameter data 414 in S704, it is assumed that the return screen has been identified, and the process proceeds to S705. In step S <b> 705, the application 311 sets the transition destination screen as a URL and generates transition destination information to perform redirect processing. The processes in S702 to S705 correspond to S526 in FIG. In step S706, the application 311 transmits the generated transition destination information to the web service processing unit 310, and ends the process. The processing in S706 corresponds to S527 in FIG.

S704でリクエストメッセージのパラメータがパラメータデータ414としてテーブルに登録されていない場合は、エラー処理を実行すべくS707へ進む。S707において、アプリケーション311は、該当する画面がないなどを示すエラー画面の画面データを生成する。続いて、S708に進み、アプリケーション311は、エラー画面データをWebサービス処理部310に送信し、処理を終了する。   If the parameter of the request message is not registered in the table as parameter data 414 in S704, the process proceeds to S707 to execute error processing. In step S707, the application 311 generates screen data of an error screen indicating that there is no corresponding screen. In step S708, the application 311 transmits error screen data to the web service processing unit 310, and ends the process.

一方、S702でURLがテンポラリのURLでないと判断された場合はS710に進み、アプリケーション311は、セッションを解析する。具体的には、アプリケーション311は、リクエストメッセージのURL、パラメータ、HTTPのヘッダやリクエスト又はCookieを解析し、セッション情報を取得する。続いて、S711に進み、アプリケーション311は、当該セッション情報が有効期限内か否かなど、セッションの有効性を判断する。   On the other hand, if it is determined in S702 that the URL is not a temporary URL, the process advances to S710, and the application 311 analyzes the session. Specifically, the application 311 analyzes the URL, parameter, HTTP header, request, or cookie of the request message, and acquires session information. In step S711, the application 311 determines the validity of the session, such as whether the session information is within the validity period.

S710のセッション解析及びS711のセッション判断は図4の認証処理部411で行われる。また、ステップS710及びS711の処理は、前述の図5のS531に該当する。S711でセッションが有効と判断された場合はS712に進み、アプリケーション311は、該当する画面の画面データを生成する。続いて、S713に進み、アプリケーション311は、生成した画面データをWebサービス処理部310に送信し、処理を終了する。また、セッション判断に加えて又はセッション判断の代わりに認証処理を実行して認証判断を行ってもよい。この場合、認証が失敗した場合はS707に進みエラー処理を実行する。   The session analysis in S710 and the session determination in S711 are performed by the authentication processing unit 411 in FIG. Further, the processing in steps S710 and S711 corresponds to S531 in FIG. If it is determined in S711 that the session is valid, the process advances to S712, and the application 311 generates screen data of the corresponding screen. In step S713, the application 311 transmits the generated screen data to the web service processing unit 310, and ends the process. Further, in addition to session determination or instead of session determination, authentication determination may be performed by executing authentication processing. In this case, if the authentication fails, the process proceeds to S707 and error processing is executed.

S711でセッションが有効と判断されなかった場合は、エラー処理を実行すべく同様にS707へ進む。S707において、アプリケーション311は、セッションが無効などのエラー画面データを生成する。S708に進み、アプリケーション311は、当該エラー画面データをWebサービス処理部310に送信し、処理を終了する。   If it is determined in S711 that the session is not valid, the process similarly proceeds to S707 to execute error processing. In step S707, the application 311 generates error screen data indicating that the session is invalid. In step S708, the application 311 transmits the error screen data to the web service processing unit 310, and ends the process.

次に、図8を参照して、アプリケーション312の画面遷移時の処理手順を説明する。ここでは、前述の図5のS513乃至S522におけるアプリケーション312の動作を補足しながら説明する。   Next, with reference to FIG. 8, a processing procedure at the time of screen transition of the application 312 will be described. Here, the operation of the application 312 in S513 to S522 of FIG.

S801において、アプリケーション312は、Webサービス処理部310から受けたリクエストメッセージの指示内容を解析する。この処理はCGI処理部410で行われる。具体的には、リクエストメッセージのURLからどのメニューに対するリクエストなのかを解析する。   In step S <b> 801, the application 312 analyzes the instruction content of the request message received from the web service processing unit 310. This process is performed by the CGI processing unit 410. Specifically, the menu request is analyzed from the URL of the request message.

S802において、アプリケーション312は、解析結果に基づき、遷移元への画面遷移指示か否かを判断する。予め遷移元への画面遷移としてのリクエストメッセージは定義することが可能なので、ここでは当該リクエストメッセージが予め定義された遷移元への画面遷移指示か否かを判断する。   In step S802, the application 312 determines whether a screen transition instruction is issued to the transition source based on the analysis result. Since a request message as a screen transition to a transition source can be defined in advance, it is determined here whether or not the request message is a screen transition instruction to a predefined transition source.

S802で遷移元への画面遷移指示と判断されなかった場合はS806へ進む。S806において、アプリケーション312は、当該リクエストメッセージにパラメータがあるか否かを判断する。具体的には、当該リクエストメッセージのURLに続くパラメータ情報として画面IDのパラメータがあるか否かを判断する。S806でパラメータ情報がありと判断された場合はS807に進み、アプリケーション312は、当該パラメータを記憶する。ここでの記憶処理は前述の図4において説明したアプリケーション311と同様に、アプリケーション312のパラメータデータ414として記憶することが可能である。続いて、S807に進み、アプリケーション312は、画面遷移をすべく画面処理を実行し、処理を終了する。S806で当該リクエストメッセージにパラメータとしての画面IDがない場合はS807を実行することなくS808に進み、アプリケーション312は、画面遷移をすべく画面処理を実行し、処理を終了する。   If it is not determined in S802 that the instruction is a screen transition instruction to the transition source, the process proceeds to S806. In step S806, the application 312 determines whether there is a parameter in the request message. Specifically, it is determined whether there is a screen ID parameter as parameter information following the URL of the request message. If it is determined in step S806 that there is parameter information, the process advances to step S807, and the application 312 stores the parameter. The storage processing here can be stored as parameter data 414 of the application 312, similarly to the application 311 described with reference to FIG. Subsequently, the process advances to step S807, and the application 312 executes screen processing for screen transition and ends the processing. If there is no screen ID as a parameter in the request message in S806, the process proceeds to S808 without executing S807, and the application 312 executes the screen process to change the screen and ends the process.

一方、S802で遷移元への画面遷移指示と判断された場合はS803に進み、アプリケーション312は、前述のS807で記憶した画面IDとしてのパラメータを参照する。続いて、S804において、アプリケーション312は、遷移先情報を生成する。具体的には、URLとして遷移元の予め決められたテンポラリのURLを指定し、そのパラメータ情報として参照した(取得した)パラメータ情報を付加する。これらS803及びS804は前述の図5のS521に該当する処理である。続いて、S805に進み、アプリケーション312は、遷移先情報をWebサービス処理部310に送信し、処理を終了する。このS805は前述の図5のS522に該当する処理である。   On the other hand, if it is determined in S802 that the instruction is a screen transition instruction to the transition source, the process proceeds to S803, and the application 312 refers to the parameter as the screen ID stored in S807 described above. Subsequently, in S804, the application 312 generates transition destination information. Specifically, a predetermined temporary URL as the transition source is designated as the URL, and the parameter information referred (acquired) is added as the parameter information. These S803 and S804 are processes corresponding to S521 in FIG. In step S805, the application 312 transmits the transition destination information to the web service processing unit 310, and ends the process. S805 is a process corresponding to S522 in FIG.

<パラメータデータ>
次に、図9を参照して、図4のパラメータデータ414として記憶されているテーブルについて説明する。ここでは、まず当該テーブルに登録されている画面IDの総数をNとして管理している。この例では総数Nは3である。また画面IDとそれに紐付けられたURLがCGIの名称として登録されている。例えば画面IDが“AAAAAAA”の場合、遷移先の画面のURLはCGIを指定するものとして“A1.cgi“となっている。また、画面IDが“BBBBBBB”の場合、遷移先の画面のURLはCGIを指定するものとして“B1.cgi“となっている。
<Parameter data>
Next, a table stored as the parameter data 414 in FIG. 4 will be described with reference to FIG. Here, first, the total number of screen IDs registered in the table is managed as N. In this example, the total number N is 3. The screen ID and the URL associated therewith are registered as the CGI name. For example, when the screen ID is “AAAAAAAA”, the URL of the transition destination screen is “A1.cgi”, which specifies CGI. When the screen ID is “BBBBBBB”, the URL of the transition destination screen is “B1.cgi” that specifies CGI.

ここで、具体的な画面遷移のためのURLの例について画面IDが“AAAAAAA”の場合について説明する。画面IDが“AAAAAAA”の場合、遷移先の画面のURLはCGIを指定するものとして“A1.cgi“となっている。したがって、アプリケーション311は、“A1.cgi“の画面からアプリケーション312の画面に遷移する際は、アプリケーション312の該当のURL及びパラメーターとして“AAAAAAA”を指定することとなる。下記はそのURLとパラメータの一例である。
/Appli2.cgi/?Lang=JA&DID=AAAAAAA&Dummy=123456
上記URLの例では、アプリケーション312の遷移先として“Appli2.cgi”を指定している。また、パラメータとして言語を指定するLangと本実施例で説明している画面IDとしてのDID及びDummyパラメータが指定されている。アプリケーション312の遷移先では、画面IDのパラメータであるDIDを一時記憶し、遷移元のアプリケーション311に戻る際に、ダミーのURLとそのパラメータを指定することになる。
Here, a case where the screen ID is “AAAAAAA” will be described as an example of a URL for a specific screen transition. When the screen ID is “AAAAAAA”, the URL of the transition destination screen is “A1.cgi”, which specifies CGI. Therefore, the application 311 designates “AAAAAAA” as the corresponding URL and parameter of the application 312 when transitioning from the “A1.cgi” screen to the application 312 screen. The following is an example of the URL and parameters.
/Appli2.cgi/? Lang = JA & DID = AAAAAAA & Dummy = 123456
In the above URL example, “Appli2.cgi” is designated as the transition destination of the application 312. In addition, a Lang that designates a language as a parameter, and a DID and Dummy parameter as a screen ID described in the present embodiment are designated. At the transition destination of the application 312, the DID that is the parameter of the screen ID is temporarily stored, and when returning to the transition source application 311, a dummy URL and its parameters are designated.

下記はアプリケーション312がアプリケーション311に戻る際に指定するURL及びパラメータの例である。
/Appli1tmp. cgi/?Lang=JA&DID=AAAAAAA&Dummy=321654
上記URLの例では、アプリケーション311の戻り先として予め決められたテンポラリのURLである、“Appli1tmp. cgi”を指定している。また、画面IDのパラメータとして、遷移元のアプリケーション311が指定した“AAAAAAA”をそのまま指定している。
The following are examples of URLs and parameters specified when the application 312 returns to the application 311.
/Appli1tmp.cgi/? Lang = JA & DID = AAAAAAA & Dummy = 321654
In the example of the URL, “Appli1tmp.cgi”, which is a predetermined temporary URL, is specified as the return destination of the application 311. Further, “AAAAAAA” designated by the transition source application 311 is designated as the screen ID parameter.

上記遷移元(アプリケーション311)では、テンポラリURLが指定された場合に、画面IDであるパラメータ“AAAAAAA”より、パラメータデータテーブルの画面ID欄と一致した真の戻り先のURLが特定できる。この例では真の戻り先として“A1.cgi“を特定することが可能となる。   In the transition source (application 311), when a temporary URL is specified, the true return destination URL that matches the screen ID column of the parameter data table can be specified from the parameter “AAAAAAAA” as the screen ID. In this example, “A1.cgi” can be specified as the true return destination.

<画面例>
次に、図10を参照して、アプリケーション311とアプリケーション312の画面の例について説明する。図10の画面1000は、アプリケーション311の画面の例を示している。ここで画面1000は、Webブラウザ150に表示され、アプリケーション311のヘッダや各メニューが配置されている様子を示している。1001は、各メニューの1つであるが、アプリケーション312に遷移するメニューの例を示している。
<Screen example>
Next, exemplary screens of the application 311 and the application 312 will be described with reference to FIG. A screen 1000 in FIG. 10 shows an example of the screen of the application 311. Here, the screen 1000 is displayed on the Web browser 150 and shows a state in which the header and each menu of the application 311 are arranged. Reference numeral 1001 denotes an example of a menu that transitions to the application 312 as one of the menus.

画面1010は、アプリケーション312の画面の例を示している。ここで画面1010は、Webブラウザ150に表示され、アプリケーション312のヘッダや各メニューが配置されている様子を示している。1011は、各メニューの1つであるが、遷移元であるアプリケーション311に遷移するメニューの例を示している。   A screen 1010 shows an example of the screen of the application 312. Here, the screen 1010 is displayed on the Web browser 150 and shows a state in which the header and each menu of the application 312 are arranged. Reference numeral 1011 denotes an example of a menu that is one of the menus, but transitions to the application 311 that is the transition source.

本実施形態では、Webサーバー部301がMFP101内に存在し動作する例を説明したが、Webサーバー部301は他のMFPであるMFP106や、外部Webサーバー104内に存在し動作することも可能である。また、複数のアプリケーションであるアプリケーション311、アプリケーション312、アプリケーション313は、一つのWebサーバー部内だけでなく、複数の分散したWebサーバー部内に存在することも可能である。その場合、アプリケーション311は、外部Webサーバー104のWebサーバー部内、アプリケーション312は、外部MFP101のWebサーバー部内に存在し同様の動作をすることも可能である。   In this embodiment, an example in which the Web server unit 301 exists and operates in the MFP 101 has been described. However, the Web server unit 301 can also exist and operate in the MFP 106 that is another MFP or the external Web server 104. is there. Further, the applications 311, 312 and 313, which are a plurality of applications, can exist not only in one Web server unit but also in a plurality of distributed Web server units. In this case, the application 311 exists in the Web server unit of the external Web server 104, and the application 312 exists in the Web server unit of the external MFP 101 and can perform the same operation.

以上説明したように、本実施形態によれば、本情報処理装置は、外部装置のWebブラウザへ画面を提供し、画面遷移が生じる場合に遷移元のアプリケーションにおいて、遷移先のアプリケーションからの戻り先を示す遷移先情報を生成して通知する。一方、遷移先のアプリケーションにおいて、当該遷移先情報を受信して保持し、画面を戻る指示を受けると、保持している遷移先情報を用いてい画面遷移を実行する。これにより、遷移元に複数の画面が存在し、それぞれの画面から一つの遷移先に画面遷移する場合に、ユーザーが意図した遷移元の画面に戻ることが可能となる。また、予め戻り先のURLを固定しないので、遷移元の画面又はメニュー構成の変更があった場合に、遷移先のアプリケーションの修正をせずに済み、プログラムの保守性が保たれることとなる。また、遷移元の画面のURLを、画面のメニューや戻るボタン等において直接指定しないので、遷移元の画面への攻撃の脅威が軽減するなどのセキュリティーを強化することが可能となる。   As described above, according to the present embodiment, the information processing apparatus provides a screen to the Web browser of the external apparatus, and when the screen transition occurs, in the transition source application, the return destination from the transition destination application Is generated and notified. On the other hand, when the transition destination application receives and holds the transition destination information and receives an instruction to return to the screen, the screen transition is executed using the held transition destination information. As a result, when a plurality of screens exist at the transition source and the screen transitions from each screen to one transition destination, it is possible to return to the transition source screen intended by the user. In addition, since the return destination URL is not fixed in advance, if there is a change in the transition source screen or menu configuration, it is not necessary to modify the transition destination application, and maintainability of the program is maintained. . In addition, since the URL of the transition source screen is not directly specified in the screen menu, the return button, or the like, it is possible to enhance security such as reducing the threat of attacks on the transition source screen.

<第2の実施形態>
以下では、図11を参照して、本発明の第2の実施形態について説明する。なお、システム構成などは上記第1の実施形態と同等のため、ここでは、第1の実施形態と差異のある部分のみについて説明し、重複する部分については説明を省略する。本実施形態では、前述の図5で説明した画面IDを遷移先情報として送信する代わりに、直接戻り先のURLを遷移先情報として送信する。なお、従来技術においては、遷移先の画面におけるメニューや戻りボタン等に直接戻り先のURLをリンクするものであるが、本実施形態では、戻り先をURLで直接指定するものの、遷移元のそれぞれの画面(アプリケーション)が戻り先を指定可能な点で異なる。
<Second Embodiment>
Below, with reference to FIG. 11, the 2nd Embodiment of this invention is described. Since the system configuration and the like are the same as those of the first embodiment, only the parts that are different from the first embodiment will be described here, and the description of the overlapping parts will be omitted. In this embodiment, instead of transmitting the screen ID described with reference to FIG. 5 as transition destination information, a direct return destination URL is directly transmitted as transition destination information. In the prior art, the URL of the return destination is directly linked to the menu, the return button, etc. on the transition destination screen. In this embodiment, the return destination is directly specified by the URL. The screen (application) is different in that the return destination can be specified.

図11は、第2の実施形態の本システムにおける、アプリケーション311、312の画面遷移の処理シーケンスを示す。各動作は、MFP101のCPU201が制御プログラムを実行することにより実現される。ここでは、ユーザーがアプリケーション311のWebサービスを受けるべく指示した例について説明する。   FIG. 11 shows a screen transition processing sequence of the applications 311 and 312 in the system of the second embodiment. Each operation is realized by the CPU 201 of the MFP 101 executing a control program. Here, an example in which the user instructs to receive the Web service of the application 311 will be described.

S1101において、ユーザーは、必要なWebアプリケーションのサービスを受けるべく、Webブラウザ150に表示された画面中のメニュー等をクリックし画面遷移指示を行う。S1102において、Webブラウザ150は、リクエストメッセージとして画面遷移指示をWebサービス処理部310に送信する。S1103において、Webサービス処理部310は、リクエストメッセージを解析し、アプリケーション311を呼び出すべく、アプリケーション311に画面遷移指示を行う。S1104において、アプリケーション311は、リクエストメッセージに応じた画面データの生成等を行う。   In step S1101, the user clicks a menu or the like in the screen displayed on the web browser 150 and issues a screen transition instruction in order to receive a necessary web application service. In step S1102, the web browser 150 transmits a screen transition instruction to the web service processing unit 310 as a request message. In step S <b> 1103, the Web service processing unit 310 analyzes the request message and issues a screen transition instruction to the application 311 to call the application 311. In step S1104, the application 311 generates screen data according to the request message.

S1105において、アプリケーション311は、生成した画面データをWebサービス処理部310に送信する。S1106において、Webサービス処理部310は、S1104でアプリケーション311から受け取った画面データを、Webブラウザ150へ送信する。これによって当該ユーザーは、指示したアプリケーション311のWebサービスを受けることができる。   In step S <b> 1105, the application 311 transmits the generated screen data to the web service processing unit 310. In step S <b> 1106, the web service processing unit 310 transmits the screen data received from the application 311 in step S <b> 1104 to the web browser 150. As a result, the user can receive the web service of the designated application 311.

S1107において、ユーザーは、受け取った画面から新たなサービスを受けるべく、Webブラウザ150に対して画面遷移指示を行う。具体的には、ユーザーは、Webブラウザ150に表示された画面中のメニューボタン等をクリックすることで、画面遷移指示を行う。ここでは、Webブラウザ150に表示された画面のメニューボタンのうちアプリケーション312のWebサービスを受けるためのメニューボタンがクリックされた例を説明する。   In step S <b> 1107, the user issues a screen transition instruction to the web browser 150 in order to receive a new service from the received screen. Specifically, the user issues a screen transition instruction by clicking a menu button or the like in the screen displayed on the Web browser 150. Here, an example will be described in which a menu button for receiving the Web service of the application 312 is clicked among the menu buttons displayed on the Web browser 150.

S1108において、Webブラウザ150は、前述のS1106におけるユーザーの指示に従い、Webサービス処理部310にリクエストメッセージとして画面遷移指示を送信する。S1109において、Webサービス処理部310は、アプリケーション311に画面遷移指示を行う。   In S1108, the Web browser 150 transmits a screen transition instruction as a request message to the Web service processing unit 310 in accordance with the user instruction in S1106 described above. In step S <b> 1109, the web service processing unit 310 issues a screen transition instruction to the application 311.

S1110において、アプリケーション311は、リクエストされた画面遷移がアプリケーション312のメニューであるため、アプリケーション312の画面にリダイレクトすべく、該当するURLを生成する。さらに戻り先URLとして本画面のURLをURLのパラメータとして付加し遷移先情報を生成する。ここでのパラメータ処理は、前述の図4のパラメータ処理部413で行われる。ここで、生成したパラメータを前述のパラメータデータ414として記憶する。   In S1110, since the requested screen transition is the menu of the application 312, the application 311 generates a corresponding URL to redirect to the screen of the application 312. Further, transition destination information is generated by adding the URL of this screen as a URL parameter as a return destination URL. The parameter processing here is performed by the parameter processing unit 413 in FIG. 4 described above. Here, the generated parameter is stored as the parameter data 414 described above.

S1111において、アプリケーション311は、生成した遷移先情報を画面のリダイレクト処理としてWebサービス処理部310に送信する。S1112において、Webサービス処理部310は、当該遷移先情報を一度Webブラウザ150に送信する。S1113において、Webブラウザ150は、受け付けたリクエストがリダイレクトであるため、URLと戻り先URLで構成された遷移先情報を参照し、画面遷移指示をWebサービス処理部310に送信する。S1114において、Webサービス処理部310は、送信されたリクエストメッセージ中のURLがアプリケーション312のメニューであるため、アプリケーション312に画面遷移指示を行うべく、アプリケーション312を呼び出す。その際、画面遷移指示のリクエストには、S1109で生成された戻り先URLの情報を含むことが可能である。   In step S1111, the application 311 transmits the generated transition destination information to the Web service processing unit 310 as a screen redirection process. In step S <b> 1112, the web service processing unit 310 once transmits the transition destination information to the web browser 150. In step S <b> 1113, the web browser 150 transmits a screen transition instruction to the web service processing unit 310 with reference to the transition destination information configured by the URL and the return destination URL because the received request is a redirect. In S1114, since the URL in the transmitted request message is the menu of the application 312, the Web service processing unit 310 calls the application 312 to instruct the application 312 to perform a screen transition. At this time, the request for the screen transition instruction can include information on the return destination URL generated in S1109.

S1115において、アプリケーション312は、S1113でWebサービス処理部310から受け付けた戻り先URLを記憶する。戻り先URLの記憶は、アプリケーション312が管理するRAM202又はHDD204領域に記憶してもよい。さらに、アプリケーション312は、リクエストメッセージに応じた画面データを生成する。S1116において、アプリケーション312は、生成した画面データをWebサービス処理部310に送信する。S1117において、Webサービス処理部310は、Webブラウザ150に当該画面データを送信する。これにより、ユーザーは、Webブラウザ150より、アプリケーション312のWebサービスを受けられる。   In step S1115, the application 312 stores the return destination URL received from the web service processing unit 310 in step S1113. The return URL may be stored in the RAM 202 or HDD 204 area managed by the application 312. Furthermore, the application 312 generates screen data corresponding to the request message. In step S <b> 1116, the application 312 transmits the generated screen data to the web service processing unit 310. In step S <b> 1117, the web service processing unit 310 transmits the screen data to the web browser 150. As a result, the user can receive the web service of the application 312 from the web browser 150.

次に、ユーザーがアプリケーション312の画面から、遷移元であるアプリケーション311の画面に戻るための画面遷移指示を行う場合のシーケンスをS1118以降で説明する。S1118において、ユーザーは、元のアプリケーション311に戻るべく、Webブラウザ150に表示された画面中の、戻るためのメニューをクリックするなどして、画面遷移指示を行う。   Next, a sequence in the case where the user issues a screen transition instruction for returning from the screen of the application 312 to the screen of the application 311 that is the transition source will be described in and after S1118. In step S <b> 1118, in order to return to the original application 311, the user issues a screen transition instruction by, for example, clicking a menu for returning in the screen displayed on the web browser 150.

S1119において、Webブラウザ150は、画面遷移指示をWebサービス処理部310に送信する。S1120において、Webサービス処理部310は、同様に画面遷移指示をアプリケーション312へ送信し、画面遷移指示をすべくアプリケーション312を呼び出す。S1121において、アプリケーション312は、前述のS1114で記憶した戻り先URLを呼び出す。そして遷移元(戻り先)であるアプリケーション311のURLとして戻り先URLを設定し、遷移先情報を生成する。S1122において、アプリケーション312は、設定した戻り先URLに画面遷移させるべく、当該遷移先情報をWebサービス処理部310に送信する。S1123において、Webサービス処理部310は、当該遷移先情報を一度Webブラウザ150に送信する。   In step S <b> 1119, the web browser 150 transmits a screen transition instruction to the web service processing unit 310. In step S1120, the Web service processing unit 310 similarly transmits a screen transition instruction to the application 312 and calls the application 312 to perform the screen transition instruction. In step S1121, the application 312 calls the return destination URL stored in step S1114. Then, the return destination URL is set as the URL of the application 311 that is the transition source (return destination), and transition destination information is generated. In step S <b> 1122, the application 312 transmits the transition destination information to the Web service processing unit 310 in order to transition the screen to the set return destination URL. In step S <b> 1123, the web service processing unit 310 once transmits the transition destination information to the web browser 150.

S1124において、Webブラウザ150は、受け付けたリクエストがリダイレクトであるため、戻り先URLで構成された遷移先情報を参照し、画面遷移指示をWebサービス処理部310に送信する。S1125において、Webサービス処理部310は、送信されたリクエストメッセージ中のURLがアプリケーション311のメニューであるため、アプリケーション311に画面遷移指示を行うべく、アプリケーション311を呼び出す。   In S1124, since the received request is a redirect, the Web browser 150 refers to the transition destination information configured with the return URL and transmits a screen transition instruction to the Web service processing unit 310. In step S <b> 1125, the Web service processing unit 310 calls the application 311 to instruct the application 311 to make a screen transition instruction because the URL in the transmitted request message is the menu of the application 311.

S1126において、アプリケーション311は、セッション処理を行う。ここでのセッション処理は、第1の実施形態と同様に前述の図4の認証処理部411で行われる。また、ここでセッション処理だけでなく認証処理を行うことも可能である。その場合の処理も前述の図4の認証処理部411で行われることとなる。S1127において、アプリケーション311は、当該URL情報を含むリクエストメッセージより遷移元の画面データを生成する。ここでの画面生成処理は前述の図4の画面生成部412で行われる。   In step S1126, the application 311 performs session processing. The session processing here is performed by the above-described authentication processing unit 411 in FIG. 4 as in the first embodiment. In addition to the session processing, authentication processing can be performed here. The processing in that case is also performed by the above-described authentication processing unit 411 in FIG. In S <b> 1127, the application 311 generates transition source screen data from the request message including the URL information. The screen generation process here is performed by the screen generation unit 412 of FIG. 4 described above.

S1128において、アプリケーション311は、生成した画面データをWebサービス処理部310に送信する。S1129において、Webサービス処理部310は、受け取った該画像データをWebブラウザ150に送信する。   In step S <b> 1128, the application 311 transmits the generated screen data to the web service processing unit 310. In step S <b> 1129, the web service processing unit 310 transmits the received image data to the web browser 150.

以上説明したように、本実施形態では、上記第1の実施形態で説明した画面IDの代わりに、直接戻り先のURLを遷移先情報として送信し、画面遷移することも可能となる。   As described above, in this embodiment, instead of the screen ID described in the first embodiment, it is also possible to transmit the URL of the direct return destination as the transition destination information and perform screen transition.

<その他の実施形態>
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(又はCPUやMPU等)がプログラムを読み出して実行する処理である。
<Other embodiments>
The present invention can also be realized by executing the following processing. That is, software (program) that realizes the functions of the above-described embodiments is supplied to a system or apparatus via a network or various storage media, and a computer (or CPU, MPU, etc.) of the system or apparatus reads the program. It is a process to be executed.

101:MFP、102:LAN、103:インターネット、104:外部WEBサーバー、105:クライアント端末、106:MFP   101: MFP, 102: LAN, 103: Internet, 104: external WEB server, 105: client terminal, 106: MFP

Claims (14)

外部装置のWebブラウザから利用可能な複数のWebアプリケーションを有する情報処理装置であって、
外部装置で動作するWebブラウザに、第のWebアプリケーションの画面を表示するための画面データを送信する第1の送信手段と、
前記外部装置において前記第1のWebアプリケーションの画面から前記第1のWebアプリケーションとは異なる第2のWebアプリケーションの画面に遷移するための画面遷移を引き起こす指示がなされたことに応じて前記情報処理装置に対して送信される、前記第2のWebアプリケーションの画面を要求する指示を前記外部装置から受信する第1の受信手段と、
前記第2のWebアプリケーションの画面を要求する指示を受信した場合に、前記第2のWebアプリケーションの画面を表示するための画面データとともに、前記Webブラウザに提供されていた前記第1のWebアプリケーションの画面を識別する識別情報を前記外部装置の前記Webブラウザに送信する第2の送信手段と、
前記外部装置において前記第2のWebアプリケーションの画面から前記第1のWebアプリケーションの画面に遷移するための画面遷移を引き起こす指示がなされたことに応じて前記情報処理装置に対して送信される、前記第1のWebアプリケーションの画面を識別する識別情報に対応する情報を前記外部装置のWebブラウザから受信した場合に、前記受信した識別情報に対応する情報に基づいて前記第1のWebアプリケーションが提供する遷移先の画面に遷移するためのURLを決定する決定手段と、
前記決定手段で決定したURLにリダイレクトするための情報を前記外部装置のWebブラウザに送信する第3の送信手段と、
を有することを特徴とする情報処理装置。
An information processing apparatus having a plurality of Web applications that can be used from a Web browser of an external device ,
First transmission means for transmitting screen data for displaying a screen of the first Web application to a Web browser operating on an external device;
The information processing apparatus according to the instruction that causes the screen transition for transition to a screen of a different second Web application in the external device from the screen of the first Web application and the first Web application is made First receiving means for receiving an instruction to request the screen of the second Web application transmitted from the external device ;
When receiving an instruction for requesting a screen of the second Web application, before Symbol second with the screen data for displaying the screen of the Web application, the first Web applications that were provided to the Web browser Second transmitting means for transmitting identification information for identifying the screen of the external device to the Web browser of the external device ;
Transmitted to the information processing apparatus in response to an instruction for causing a screen transition to transition from the screen of the second Web application to the screen of the first Web application in the external device, When the information corresponding to the identification information for identifying the screen of the first Web application is received from the Web browser of the external device, the first Web application provides based on the information corresponding to the received identification information. Determining means for determining a URL for transitioning to a transition destination screen;
Third transmission means for transmitting information for redirecting to the URL determined by the determination means to the Web browser of the external device ;
An information processing apparatus comprising:
前記決定手段が決定するURLは、WebアプリケーションにアクセスするためのURL識別子と当該Webアプリケーションに引き渡すパラメータとを少なくとも含むことを特徴とする請求項1に記載の情報処理装置。The information processing apparatus according to claim 1, wherein the URL determined by the determination unit includes at least a URL identifier for accessing the Web application and a parameter delivered to the Web application. 前記識別情報に対応する前記情報は、前記第1のWebアプリケーションの画面を識別するための画面識別子と所定のURLとを含むことを特徴とする請求項1又は2に記載の情報処理装置。The information processing apparatus according to claim 1, wherein the information corresponding to the identification information includes a screen identifier for identifying a screen of the first Web application and a predetermined URL. 前記所定のURLが含まれている前記情報を受信したことに従って、前記決定手段は、前記情報に含まれている前記画面識別子を検索キーとして、予め保持している画面識別子を検索し、検索された該画面識別子に関連付けて記憶されている情報を用いて前記遷移先の画面に遷移するためのURLを決定することを特徴とする請求項3に記載の情報処理装置。In response to receiving the information including the predetermined URL, the determination unit searches for a screen identifier held in advance using the screen identifier included in the information as a search key, and is searched. 4. The information processing apparatus according to claim 3, wherein a URL for transitioning to the transition destination screen is determined using information stored in association with the screen identifier. 前記識別情報に対応する前記情報には、さらに、ダミーパラメータが含まれていることを特徴とする請求項3又は4に記載の情報処理装置。The information processing apparatus according to claim 3, wherein the information corresponding to the identification information further includes a dummy parameter. 前記第1のWebアプリケーションは、The first web application is:
前記第1のWebアプリケーションが提供する画面を要求する指示を前記外部装置から受信するとセッション処理を実行し、  When an instruction for requesting a screen provided by the first web application is received from the external device, session processing is executed.
前記セッション処理の結果、前記外部装置とのセッションが有効である場合は、前記画面を表示するための画面データを前記外部装置の前記Webブラウザへ提供することを特徴とする請求項1乃至5の何れか1項に記載の情報処理装置。  The screen data for displaying the screen is provided to the Web browser of the external device when the session with the external device is valid as a result of the session processing. The information processing apparatus according to any one of claims.
前記第1のWebアプリケーションは、The first web application is:
前記セッション処理の結果、前記外部装置との前記セッションが無効である場合は、前記画面を表示するための画面データを前記外部装置の前記Webブラウザへ提供することなしに、エラー処理を実行することを特徴とする請求項6に記載の情報処理装置。  If the session with the external device is invalid as a result of the session processing, error processing is executed without providing screen data for displaying the screen to the Web browser of the external device. The information processing apparatus according to claim 6.
前記第1のWebアプリケーションは、さらに、The first web application further includes:
前記セッション処理の結果、前記外部装置との前記セッションが無効である場合に、認証処理を実行し、  As a result of the session process, when the session with the external device is invalid, an authentication process is executed,
前記認証処理の結果、認証に失敗した場合は、前記画面を表示するための画面データを前記Webブラウザへ提供することなしに、エラー処理を実行することを特徴とする請求項7に記載の情報処理装置。  8. The information according to claim 7, wherein when authentication fails as a result of the authentication processing, error processing is executed without providing screen data for displaying the screen to the Web browser. Processing equipment.
前記第1のWebアプリケーションは、The first web application is:
前記エラー処理として、エラー内容を通知する画面データを生成し、当該生成した画面データを前記Webブラウザへ提供することを特徴とする請求項7又は8に記載の情報処理装置。  The information processing apparatus according to claim 7 or 8, wherein as the error processing, screen data for notifying an error content is generated and the generated screen data is provided to the Web browser.
前記複数のWebアプリケーションには、前記情報処理装置の各種設定を外部装置のWebブラウザから変更するための機能を提供するWebアプリケーションと、前記情報処理装置にインストールされるアプリケーションの管理に関する機能を提供するWebアプリケーションが少なくとも含まれていることを特徴とする請求項1乃至9のいずれか1項に記載の情報処理装置。  The plurality of Web applications provide a Web application that provides a function for changing various settings of the information processing apparatus from a Web browser of an external apparatus and a function related to management of applications installed in the information processing apparatus The information processing apparatus according to claim 1, wherein at least a web application is included. 前記情報処理装置は、印刷手段を有するプリンタであることを特徴とする請求項1乃至10のいずれか1項に記載の情報処理装置。The information processing apparatus according to claim 1, wherein the information processing apparatus is a printer having a printing unit. 前記情報処理装置は、印刷手段と、読取手段とを少なくとも有する画像処理装置であることを特徴とする請求項1乃至10のいずれか1項に記載の情報処理装置。The information processing apparatus according to any one of claims 1 to 10, wherein the information processing apparatus is an image processing apparatus having at least a printing unit and a reading unit. 外部装置のWebブラウザから利用可能な複数のWebアプリケーションを有する情報処理装置の制御方法であって、A method for controlling an information processing apparatus having a plurality of Web applications that can be used from a Web browser of an external apparatus,
外部装置で動作するWebブラウザに、第1のWebアプリケーションの画面を表示するための画面データを送信する第1の送信ステップと、  A first transmission step of transmitting screen data for displaying a screen of the first Web application to a Web browser operating on an external device;
前記外部装置において前記第1のWebアプリケーションの画面から前記第1のWebアプリケーションとは異なる第2のWebアプリケーションの画面に遷移するための画面遷移を引き起こす指示がなされたことに応じて前記情報処理装置に対して送信される、前記第2のWebアプリケーションの画面を要求する指示を前記外部装置から受信する第1の受信ステップと、  The information processing apparatus in response to an instruction for causing a screen transition to transition from the screen of the first web application to a screen of a second web application different from the first web application in the external device A first receiving step of receiving an instruction to request the screen of the second Web application transmitted from the external device;
前記第2のWebアプリケーションの画面を要求する指示を受信した場合に、前記第2のWebアプリケーションの画面を表示するための画面データとともに、前記Webブラウザに提供されていた前記第1のWebアプリケーションの画面を識別する識別情報を前記外部装置の前記Webブラウザに送信する第2の送信ステップと、  When an instruction to request the screen of the second web application is received, together with screen data for displaying the screen of the second web application, the first web application provided to the web browser is displayed. A second transmission step of transmitting identification information for identifying a screen to the Web browser of the external device;
前記外部装置において前記第2のWebアプリケーションの画面から前記第1のWebアプリケーションの画面に遷移するための画面遷移を引き起こす指示がなされたことに応じて前記情報処理装置に対して送信される、前記第1のWebアプリケーションの画面を識別する識別情報に対応する情報を前記外部装置のWebブラウザから受信した場合に、前記受信した識別情報に対応する情報に基づいて前記第1のWebアプリケーションが提供する遷移先の画面に遷移するためのURLを決定する決定ステップと、  Transmitted to the information processing apparatus in response to an instruction for causing a screen transition to transition from the screen of the second Web application to the screen of the first Web application in the external device, When the information corresponding to the identification information for identifying the screen of the first Web application is received from the Web browser of the external device, the first Web application provides based on the information corresponding to the received identification information. A determination step for determining a URL for transition to a transition destination screen;
前記決定ステップで決定したURLにリダイレクトするための情報を前記外部装置のWebブラウザに送信する第3の送信ステップと、  A third transmission step of transmitting information for redirecting to the URL determined in the determination step to a web browser of the external device;
を有することを特徴とする制御方法。  A control method characterized by comprising:
請求項1乃至12の何れか1項に記載の情報処理装置としてコンピュータを機能させるためのプログラム。A program for causing a computer to function as the information processing apparatus according to any one of claims 1 to 12.
JP2017247980A 2017-12-25 2017-12-25 Information processing apparatus, control method thereof, and program Active JP6417468B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017247980A JP6417468B2 (en) 2017-12-25 2017-12-25 Information processing apparatus, control method thereof, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017247980A JP6417468B2 (en) 2017-12-25 2017-12-25 Information processing apparatus, control method thereof, and program

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2014060796A Division JP6270576B2 (en) 2014-03-24 2014-03-24 Information processing apparatus, control method thereof, and program

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2018191270A Division JP2019016397A (en) 2018-10-09 2018-10-09 Information processing device, control method of the same, and program

Publications (2)

Publication Number Publication Date
JP2018045731A JP2018045731A (en) 2018-03-22
JP6417468B2 true JP6417468B2 (en) 2018-11-07

Family

ID=61692508

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017247980A Active JP6417468B2 (en) 2017-12-25 2017-12-25 Information processing apparatus, control method thereof, and program

Country Status (1)

Country Link
JP (1) JP6417468B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7330735B2 (en) * 2019-04-09 2023-08-22 キヤノン株式会社 Information processing system and its control method

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004287758A (en) * 2003-03-20 2004-10-14 Nec Corp Web application integration method/program/storage medium, and portal server
JP4711922B2 (en) * 2006-09-22 2011-06-29 キヤノンソフトウェア株式会社 Server, server cooperation system, server cooperation method, program, recording medium, and information processing apparatus
JP5091003B2 (en) * 2008-05-09 2012-12-05 キヤノンソフトウェア株式会社 Information processing system, information processing method, program, and recording medium
JP2012088940A (en) * 2010-10-20 2012-05-10 Nec System Technologies Ltd Information processor, information processing method, and program

Also Published As

Publication number Publication date
JP2018045731A (en) 2018-03-22

Similar Documents

Publication Publication Date Title
JP4490188B2 (en) Print processing apparatus, print processing system, control method for print processing apparatus, control program for print processing apparatus, and recording medium
JP6270576B2 (en) Information processing apparatus, control method thereof, and program
JP5462610B2 (en) Information processing system, information processing apparatus, control method therefor, and program
JP4555324B2 (en) Remote access system
JP2008079293A (en) Method for generating metadata
JP2011065594A (en) Information processing apparatus, user interface display control method in the same, and program
JP2014115907A (en) Information processing system and control method for the same and program
JP2010186264A (en) Screen generation method, screen generation device, and program
JP6417468B2 (en) Information processing apparatus, control method thereof, and program
JP2009087214A (en) Method and device for inputting character string and computer program for implementing input method
JP2009130493A (en) Network-compatible image processing apparatus
JP2015049658A (en) Information processing terminal and control method therefor, system and control method therefor, and program
JP5086820B2 (en) Service management method, system and program
JP2019016397A (en) Information processing device, control method of the same, and program
JP2007249700A (en) Document management device, document retrieval method, document retrieval program and recording medium
JP5215362B2 (en) Web content sharing system and web content sharing method
JP2007268752A (en) Image forming device
JP6403429B2 (en) Image forming apparatus, control method thereof, and program
CN112241525A (en) Cloud system, information processing system and user registration method
KR20080083543A (en) Network management system comprising image forming apparatus and method thereof
JP2005096381A (en) Printing device, printing system, and computer program
JP2019016223A (en) Communication system, communication device and control method therefor, and program
JP2011253423A (en) Operation support system
JP7141211B2 (en) Information processing device, information processing method, and program
JP2006040145A (en) Web application development support program, dynamic content generation method and dynamic content generation apparatus

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171225

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20171225

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180124

TRDD Decision of grant or rejection written
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180831

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180907

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181005

R151 Written notification of patent or utility model registration

Ref document number: 6417468

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151