Abstract:
A display control apparatus, a display control program and a display control method can prevent re-controlling of a CGI from taking place as a result of updating a web browser. The display control apparatus includes a CGI processing section that executes a CGI process and outputs the outcome of the CGI process in response to a CGI request received from the client, an address shifting section that connects the apparatus to a link address different from the address connected by the client to issue the CGI request according to the CGI request and an output section that outputs display information for displaying predetermined information according to the outcome of the CGI process output from the CGI processing section to the client for whom the address to be connected is shifted by the address shifting section.

Description:
This application claims the benefit of Japanese Patent Application No. 2007-170489, filed on Jun. 28, 2007 in the Japanese Patent Office, the entire disclosure of which is incorporated herein by reference. 
   BACKGROUND OF THE INVENTION 
   1. Field of the Invention 
   This invention relates to a display control apparatus, a display control program and a display control method. 
   2. Description of the Related Art 
   CGIs (common gateway interfaces) are known as interfaces for executing a user program on a web server. A CGI is a program installed in a server that executes a process in response to a CGI request from a web browser of a client and the web browser displays the HTML output by the user program so that a user of the client who requested the execution of the process can see the results of the execution at the web server on the web browser. 
   A method of avoiding double transmissions from a business use HTML screen on a web browser in known (see, for example, Patent Document: Jpn. Pat. Appln. Laid-Open Publication No. 2001-229103). 
   However, accessing of a file where a CGI program is written itself is a CGI request. Therefore, when a web browser is updated after executing a program, a multiple processing may occur at the web server as a similar CGI request is issued to the web server. 
   The web server may check a CGI request and returning an error in order to avoid such multiple processing. However, the web server cannot determine if a process is a normal process or an abnormal process when one or more normal processes coexist with one or more abnormal processes in a CGI request. 
   Now, an example of operation error that may occur due to a CGI request when a web browser is updated will be described below by referring to  FIGS. 8 and 9 . 
     FIG. 8  is a schematic illustration of a displayed image of a web browser on a display screen for controlling On and Off of a power supply of a computer.  FIG. 9  is a flowchart of an operation error that might arise in a computer control by a web browser when a user inadvertently updates the web browser. Referring to  FIG. 8 , assume that web browser A and web browser B that are different from each other are adapted to control On/Off of the power supply to the computer, and the power supply to the computer is On in an initial condition. 
   As an Off button is clicked, the web browser A issues a power supply Off request to the computer being controlled by using a Web-UI (web-user interface) output from the CGI program as shown in  FIG. 8  (S 101 ). And when an On button is clicked, the web browser B issues a power supply On request to the computer just like the browser A in a state where the power supply of the computer is turned Off (S 102 ). 
   Subsequently, the web browser A issues a power supply Off request (S 103 ) and thereafter the web browser B issues a power supply On request (S 104 ). Then, the web browser A updates the CGI to which it issued the power supply Off request while the web browser A accesses the CGI, holding the power supply Off request in Step S 103 , to consequently issue a power supply Off request (S 105 ). 
   With the above-described method, the computer that is controlled by the user who operates the web browsers may determine such inadvertent update as an updating for re-controlling and an operation error may occur. 
   SUMMARY OF THE INVENTION 
   In view of the above-identified problem, it is therefore the object of the present invention to provide a display control apparatus, a display control program and a display control method that can prevent re-controlling a CGI from taking place as a result of updating a web browser. 
   In an aspect of the present invention, the above object is achieved by providing a display control apparatus including: a CGI processing section that executes a CGI process and outputs the outcome of the CGI process in response to a CGI request received from the client; an address shifting section that connects the apparatus to an address different from the link address connected by the client to issue the CGI request according to the CGI request; and an output section that outputs display information for displaying predetermined information according to the outcome of the CGI process output from the CGI processing section to the client for whom the address to be connected is shifted by the address shifting section. 
   In another aspect of the present invention, there is provided a display control program for causing a computer to execute: a CGI processing step that executes a CGI process and outputs the outcome of the CGI process in response to a CGI request received from the client; an address shifting step that connects the apparatus to a link address different from the address connected by the client to issue the CGI request according to the CGI request; and an output step that outputs display information for displaying predetermined information according to the outcome of the CGI process output in the CGI processing step to the client for whom the address to be connected is shifted in the address shifting step. 
   In still another aspect of the present invention, there is provided a display control method including: a CGI processing step that executes a CGI process and outputs the outcome of the CGI process in response to a CGI request received from the client; an address shifting step that connects the apparatus to a link address different from the address connected by the client to issue the CGI request according to the CGI request; and an output step that outputs display information for displaying predetermined information according to the outcome of the CGI process output in the CGI processing step to the user/client for whom the address to be connected is shifted in the address shifting step. 
   Thus, according to the present invention, there are provided a display control apparatus, a display control program and a display control method that can prevent re-controlling of a CGI from taking place as a result of updating a web browser by connecting the web browser to a different address after the processing operation of the related web server for a CGI request from the web browser. 

   
     BRIEF DESCRIPTION OF THE DRAWINGS 
       FIG. 1  is a schematic block diagram of system according to a first embodiment of the present invention; 
       FIG. 2  is a schematic illustration of an example of a source code of a link HTML; 
       FIG. 3  is a schematic illustration of an example of a source code of a display HTML; 
       FIG. 4  is a flowchart of the operation by the system of the first embodiment; 
       FIG. 5  is a schematic block diagram of a system according to a second embodiment; 
       FIG. 6  is a schematic illustration of an example of a source code of a template HTML; 
       FIG. 7  is a flowchart of the operation by the system of the second embodiment; 
       FIG. 8  is a schematic illustration of a displayed image of a web browser for controlling On/Off of the power supply of a computer on a display screen; and 
       FIG. 9  is a flowchart of an operation error that might arise in computer control by a web browser when a user inadvertently updates the web browser. 
   

   DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS 
   Now, preferred embodiments of the present invention will be described in detail by referring to the accompanying drawings. 
   First Embodiment 
   Firstly, the configuration of a system according to an embodiment will be described below. 
     FIG. 1  is a schematic block diagram of a system according to a first embodiment of the present invention, illustrating the overall configuration thereof.  FIG. 2  is a schematic illustration of an example of a source code of the link HTML.  FIG. 3  is a schematic illustration of an example of a source code of a display HTML. First embodiment is adapted to control the power supply of a computer by means of Web-UI as shown in  FIG. 8 . 
   As shown in  FIG. 1 , web server  1  has a CGI directory  11  and a HTML directory  12 . The CGI directory  11  holds a control CGI  111  and a display CGI  112 , and the HTML directory  12  holds a display HTML  121 . 
   The source code of a link HTML  111   a , which will be described in detail hereinafter, is written in the control CGI  111 . Upon receiving a CGI request from a web browser  2  installed in a client that communicating with the web server  1 , the control CGI  111  executes a predetermined process and outputs the link HTML  111   a  to the web browser  2 . On the other hand, upon receiving a CGI request from the web browser  2 , the display CGI  112  reads in a display HTML  121  from the HTML directory  12  as template and executes a predetermined process. Then, the display CGI  112  outputs the display HTML  121 . 
   The link HTML  111   a  does not have any &lt;body&gt; tag as shown in  FIG. 2 , and a script for automatically jumping to the display CGI  112  is written in JavaScript in &lt;head&gt; tag. 
   As shown in  FIG. 3 , &lt;% FORM:POWER %&gt; is written in the display HTML  121  as source code. &lt;% FORM:POWER %&gt; is to be replaced by an outcome of a process by the display CGI  112 . Additionally, a transmission button and a reception button that correspond respectively to an On button and an Off button shown in  FIG. 8 , and a link for jumping to the control CGI  111  when the buttons are depressed is written as source code. 
   The web browser  2  is a browser that issues a CGI request to the control CGI  111  and the display CGI  112  and can execute Java Scripts. 
   Now, the operation of the system of the first embodiment will be described below. 
     FIG. 4  is a flowchart of the operation of the system of the first embodiment. For the flowchart, it is assumed that a screen image for issuing a CGI request is already displayed in the web browser by the display CGI. Alternatively, an HTML for transmitting FORM information to the control CGI may perform a process shown in  FIG. 4 . 
   Firstly, the web browser  2  issues a CGI request to the control CGI  111  by a script shown below, using the GET method. 
   Location. href=“html.cgi/sample3.cgi?POWER=On” 
   Upon receiving the CGI request, the control CGI  111  acquires a value “On” of POWER from the FORM information (S 202 ), turns on the power supply of the computer according to the acquired value of POWER (S 203 ) and outputs link HTML  111   a  to the web browser  2  (S 204 ). 
   The web browser  2  issues a CGI request to the display CGI  112  by a script written in the received link HTML  111   a  (S 205 ). Upon receiving the CGI request from the web browser  2 , the display CGI  112  reads the display HTML  121  as template and replaces &lt;% FORM:POWER %&gt; by the outcome of the processing by the control CGI  111 . The display CGI  112  then outputs the outcome of the processing to the web browser  2  (S 206 ). The web browser  2  displays the display HTML  121  received from the display CGI  112  where the outcome of the processing is written (S 207 ). At this time, &lt;% FORM:POWER %&gt; has been replaced by “On” indicating the status of the power supply of the computer. The value of POWER is transmitted from the web browser  2  to the control CGI  111  as the transmission button is depressed in Web-U1 by the display HTML  121 . 
   Thus, in the first embodiment as described above, as the control CGI  111  is made to output the link HTML  111   a  to which the link to the display CGI  112  is written, jumping to the display CGI  112  takes place when the web browser  2  issues a CGI request. Therefore, information same as the CGI request to the control CGI  111  that the web browser  2  holds will not be sent to the control CGI  111 . Thus, re-controlling of a CGI is prevented as a result of updating a web browser. As the transmission button of the display HTML  121  that the display CGI  112  outputs is depressed, a CGI request is issued to the control CGI  111  and a normal process is executed. Jumping to the display CGI  112  may be replaced by jumping to a predetermined HTML file that is prepared in advance. 
   Second Embodiment 
   While a link HTML and a display HTML are provided separately in the first embodiment, the functional feature of a link HTML and that of a display HTML are realized by a single template and re-controlling of a CGI is prevented from taking place as a result of updating a web browser by controlling the functional features by using flags in the second embodiment. 
   Now, the configuration of this embodiment will be described below. 
     FIG. 5  is a schematic block diagram of a system according to the second embodiment of the present invention, illustrating the overall configuration thereof.  FIG. 6  is a schematic illustration of an example of a source code of a template HTML. Assume that, in the second embodiment, the power supply of a computer is controlled by using a Web-U1 as shown in  FIG. 8  as in the case of the first embodiment. 
   Referring to  FIG. 5 , the Web server  1  has a CGI directory  11  and a HTML directory  12 . The CGI directory  11  holds a control CGI  113  and a display CGI  114 , and the HTML directory  12  holds a display HTML  122 . 
   The control CGI  113  acquires FORM information such as flags or control information for a CGI request executes a predetermined process that corresponds to the CGI request and reads a template HTML  122 , while it also acquires the power supply status information of the computer and rewrites and outputs the template HTML  122  according to the FORM information and the status information it acquires. The display CGI  114  acquires FORM information and the status information for a CGI request and rewrites and outputs the template HTML  122  according to the FORM information and the status information it acquires. 
   The flag of the template HTML  122  is determined by the JavaScript written in the &lt;head&gt; tag as shown in  FIG. 6 . When the value of the flag is equal to 1 (DIAFLAG=1), the web browser  2  jumps to the display CGI  114  and, at the same time, makes the value of the flag to 0. When the value of the flag is equal to 0 (DIAFLAG=0), the web browser  2  does not jump to the display CGI  114 , and displays &lt;body&gt; tag and the items following the &lt;body&gt; tag, because no JavaScript is executed. 
   The web browser  2  is a browser that issues CGI requests to the control CGI  113  and the display CGI  114  and can executes JavaScript. 
   The operation of the system of the second embodiment will be described below. 
     FIG. 7  is a flowchart of the operation of the system the second embodiment. For the flowchart, it is assumed that the screen image for issuing a CGI request is already displayed in the web browser by the display CGI. Alternatively, it may be an HTML for transmitting FORM information to the control CGI. 
   Firstly, the web browser  2  issues a CGI request to the control CGI  113  by using a script shown below, using the GET method (S 301 ). 
   Location. href=“html.cgi/sample5.cgi? DIAFLAG=1 &amp; POWER=On” 
   Upon receiving the CGI request, the control CGI  113  acquires the value “1” of DIAFLAG and the value “On” of POWER from the FORM information (S 302 ). The control CGI then turns on the power supply of the computer according to the acquired value (S 303 ), and reads in template HTML  122  from the HTML directory  12 . Then, the control CGI  113  replaces &lt;% FORM:DIAFLAG %&gt; and &lt;% FORM:POWER %&gt; of the template HTML  122  respectively by “1” and “On” according to the acquired FORM information, and outputs the outcome of the processing to the web browser  2  (S 304 ). 
   In the HTML output from the control CGI  113 , the flag of JavaScript written in the &lt;head&gt; tag is equal to “1” (1st identifier) and hence the web browser  2  issues a CGI request to the display CGI  114  (S 305 ). At the time of the CGI request, it hands over DIAFLAG=0 to the display CGI, using the GET method. 
   After acquiring the flag value “0” (2nd identifier) in response to the CGI request, the display CGI  114  further acquires status information “On” that indicates the power supply status of the computer from the web server (S 306 ), reads in the template HTML  122 , replaces &lt;% FORM:DIAFLAG %&gt; and &lt;% FORM:POWER %&gt; respectively by “0” and “On” and outputs the outcome of the processing to the web browser  2  (S 307 ). 
   In the HTML output from the control CGI  113 , the flag of JavaScript written in the &lt;head&gt; tag is equal to “0” and hence the web browser  2  skips the CGI request to the display CGI  114  to display the content of the &lt;body&gt; tag (S 308 ). At the time of the request, &lt;% FORM:POWER %&gt; has been replaced by “On” indicating the status of the power supply of the computer. Additionally, the value of POWER and the flag “1” are transmitted to the control CGI  113  as the transmission button is depressed in the Web-U1 by the display HTML. 
   As described above, the web browser  2  determines the value of the flags by means of JavaScript in the second embodiment. It jumps to the display CGI  114  when the flag of the template HTML  122  is equal to “1” but skips the process of JavaScript when the flag is equal to “0” and display &lt;body&gt; tag and the following items of the template HTML  122 . Thus, re-controlling of a CGI is prevented from taking place as a result of updating a web browser by providing a single template. 
   A program for causing a computer that operates as a display control apparatus to execute the above steps can be provided as a display control program. A computer that operates as a display control apparatus can be caused to execute the program when the program is stored in a computer-readable recording medium. Computer readable recording mediums that can be used for the purpose of the present invention include internal storage mediums to be installed in computers such as ROMs and RAMs, portable storage mediums such as CD-ROMs, flexible disks, DVDs, magneto-optical disks and IC cards, databases adapted to hold computer programs, other computers, the databases of such computers on communication lines.