JPH10269072A - Application development method - Google Patents
Application development methodInfo
- Publication number
- JPH10269072A JPH10269072A JP9075021A JP7502197A JPH10269072A JP H10269072 A JPH10269072 A JP H10269072A JP 9075021 A JP9075021 A JP 9075021A JP 7502197 A JP7502197 A JP 7502197A JP H10269072 A JPH10269072 A JP H10269072A
- Authority
- JP
- Japan
- Prior art keywords
- file
- template
- template file
- computer
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 86
- 238000011161 development Methods 0.000 title claims description 28
- 238000012545 processing Methods 0.000 claims abstract description 149
- 238000012546 transfer Methods 0.000 claims description 5
- 230000006870 function Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 101100020619 Arabidopsis thaliana LATE gene Proteins 0.000 description 1
- 241000252067 Megalops atlanticus Species 0.000 description 1
- 240000007594 Oryza sativa Species 0.000 description 1
- 235000007164 Oryza sativa Nutrition 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- FFBHFFJDDLITSX-UHFFFAOYSA-N benzyl N-[2-hydroxy-4-(3-oxomorpholin-4-yl)phenyl]carbamate Chemical compound OC1=C(NC(=O)OCC2=CC=CC=C2)C=CC(=C1)N1CCOCC1=O FFBHFFJDDLITSX-UHFFFAOYSA-N 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 239000002537 cosmetic Substances 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 208000017482 infantile neuronal ceroid lipofuscinosis Diseases 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 235000009566 rice Nutrition 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Landscapes
- Stored Programmes (AREA)
- Information Transfer Between Computers (AREA)
Abstract
(57)【要約】
【課題】クライアント計算機からの要求に応じて、We
bページの表示情報を生成するスクリプトプログラムを
記述したテンプレートファイルを、サーバ計算機上のフ
ァイルシステム、あるいはサーバ計算機から参照可能な
計算機上のファイルシステムに転送することができる方
法を提供することである。
【解決手段】Webページの表示情報を生成するプログ
ラムに読み込ませるテンプレートファイルの名称を入力
する処理と、テンプレートファイルを参照している箇
所、および別の処理プログラムを呼び出す処理が記述さ
れている箇所の情報を取得する処理と、求めた情報を出
力装置に表示する処理と、未解決の参照および呼び出し
を修正する処理と、求めた一覧に含まれるテンプレート
ファイルと処理プログラムの実装ファイルを、参照可能
な計算機上のファイルシステムに転送する処理を行うこ
とにより解決する。
(57) [Summary] [Problem] To respond to a request from a client computer,
An object of the present invention is to provide a method capable of transferring a template file in which a script program for generating display information of page b is described to a file system on a server computer or a file system on a computer that can be referenced from the server computer. A process for inputting a name of a template file to be read by a program for generating display information of a web page, a portion referring to the template file, and a portion describing a process for calling another processing program are described. The process of acquiring information, the process of displaying the obtained information on the output device, the process of correcting unresolved references and calls, and the template files included in the obtained list and the implementation files of the processing programs can be referenced. The problem is solved by performing a process of transferring the file to a file system on a computer.
Description
【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION
【0001】[0001]
【発明の属する技術分野】本発明は、サーバ計算機上
で、スクリプトプログラムを含むファイルをファイルシ
ステムから読み込み、前記スクリプトプログラムを解釈
実行してWebページの表示情報を生成して、サーバ計
算機上で開示するシステムにおいて、特定のファイルに
記述されたスクリプトプログラムを解釈実行した場合に
参照され必要となるファイルの一覧を利用者に提示し、
前記必要となるファイルを開発用計算機のファイルシス
テムからサーバ計算機のファイルシステムへ転送して蓄
える、Webサーバと連動して動作するサーバアプリケ
ーションの開発方法に属する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention reads a file containing a script program from a file system on a server computer, interprets and executes the script program, generates Web page display information, and discloses the information on the server computer. In a system that performs the script program described in a specific file, interpret and execute the script program.
The file belongs to a method of developing a server application that operates in conjunction with a Web server and stores the necessary files from the file system of the development computer to the file system of the server computer.
【0002】[0002]
【従来の技術】近年、世界規模のネットワーク網である
インターネットおよびインターネット上の情報開示アプ
リケーションの一つであるWWW(World Wid
e Web)の発達により、サーバ計算機のWebサー
バ上で開示されたWebページを、クライアント計算機
でWebブラウザを用いて閲覧することが広く行われて
いる。Webページの表示情報は、HTML(Hype
rtext Markup Language)と呼ぶ
言語で記述する。WWWについては“OPENDESI
GN、No.13、1996年4月、CQ出版社”(文
献1)のpp.4−5で説明されている。HTMLの詳
細については、前記文献1のpp.40−59で説明さ
れている。2. Description of the Related Art In recent years, the Internet, which is a worldwide network, and WWW (World Wid) which is one of information disclosure applications on the Internet.
With the development of e-Web), browsing a Web page disclosed on a Web server of a server computer using a Web browser on a client computer has been widely performed. The display information of the Web page is HTML (Hype
rtext Markup Language). For the WWW, see "OPENDESI
GN, No. 13, April 1996, pp. 4-5 of "CQ Publishing Company" (Reference 1). Details of HTML are described in pp. 40-59 of Reference 1.
【0003】Webサーバ上でWebページを開示する
方法には、Webページの表示情報をサーバ計算機のフ
ァイルシステム上のファイルに蓄えておき、前記蓄えた
ファイルの内容をそのままクライアント計算機に転送す
る静的な方法と、クライアント計算機からの要求に応じ
て、Webページの表示情報を生成するページ生成プロ
グラムをサーバ計算機上で実行し、前記ページ生成プロ
グラムが生成したWebページの表示情報をクライアン
ト計算機に転送する動的な方法がある。A method of disclosing a Web page on a Web server includes a method of storing display information of a Web page in a file on a file system of a server computer, and transferring the stored contents of the file as it is to a client computer. And executing a page generation program for generating Web page display information on the server computer in response to a request from the client computer, and transferring the Web page display information generated by the page generation program to the client computer. There is a dynamic way.
【0004】前記動的な方法を用いて動的にWebペー
ジの表示情報を生成することができるシステムとして、
以下のものがある。いずれのシステムの場合も、サーバ
計算機上のファイルシステム上に、Webページの表示
情報を生成するためのスクリプトプログラムを記述した
ファイル(以下、テンプレートファイルと呼ぶ)を蓄え
ておき、クライアント計算機からの要求に応じて、前記
ページ生成プログラムがテンプレートファイルを読み込
み、クライアント計算機から指定したパラメータの値に
もとづいてテンプレートファイルに記述されたスクリプ
トプログラムを解釈実行して、Webページの表示情報
を生成する方法を採用している。以下に示したいずれの
システムの場合も、Webページの表示情報を生成する
ためにページ生成プログラムに読み込ませるテンプレー
トファイルの内容は、通常のHTMLの中にスクリプト
プログラムを埋め込んで記述した形式になっている。[0004] As a system capable of dynamically generating display information of a Web page using the dynamic method,
There are the following: In either system, a file (hereinafter, referred to as a template file) describing a script program for generating display information of a Web page is stored in a file system on a server computer, and a request from a client computer is stored. In accordance with the method, the page generation program reads the template file, interprets and executes the script program described in the template file based on the value of the parameter specified from the client computer, and generates the display information of the Web page. doing. In any of the systems described below, the contents of the template file read by the page generation program in order to generate display information of the Web page are in a format in which a script program is embedded and described in ordinary HTML. I have.
【0005】(1)Internet Informa
tion Server3.0(Microsoft
社) 本システムについては“PCWEEK JAPANES
E EDITION、NOVEMBER15、1996
VOLUME 7、NUMBER 40、ソフトバン
ク”(文献2)のp.1で説明されている。HTMLに
埋め込む形態で、スクリプト言語VBScriptおよ
びJavaScriptで記述したスクリプトプログラ
ムをサーバ計算機上で実行して動的にHTMLデータを
生成し、Webブラウザに返すことができる「Acti
ve Server Page」と呼ぶ機能を持つ。(1) Internet Information
Tion Server 3.0 (Microsoft
About this system, "PCWEEK JAPANES
E EDITION, NOVEMBER 15, 1996
VOLUME 7, NUMBER 40, SoftBank ”(Reference 2), p. 1. In a form embedded in HTML, a script program written in script languages VBScript and JavaScript is executed on a server computer to dynamically execute HTML. "Ati" that can generate data and return it to the web browser
ve Server Page ".
【0006】HTMLファイルを作成する機能は、別シ
ステム「FrontPage97」が提供している。F
rontPage97については前記文献2のp.25
で説明されている。The function of creating an HTML file is provided by another system "FrontPage97". F
rontPage 97, p. 25
Is described in.
【0007】(2)LiveWire (Netsca
pe Communications社) (2)のシステムについては、“日経オープンシステ
ム、no.37、1996年4月、日経BP社”(文献
3)のpp.282−293で説明されている。(2)
のシステムは、HTMLに埋め込む形式でスクリプト言
語JavaScriptで記述したスクリプトプログラ
ムをサーバ計算機上で実行して動的にHTMLデータを
生成し、Webブラウザに返すことができる機能を持
つ。(2) LiveWire (Netsca
pe Communications) (2) is described in “Nikkei Open System, No. 37, April 1996, Nikkei BP” (Reference 3). 282-293. (2)
The system has a function of executing a script program described in a script language JavaScript in a format embedded in HTML on a server computer, dynamically generating HTML data, and returning the generated HTML data to a Web browser.
【0008】上記いずれのシステムも、ページ生成プロ
グラムに読み込ませるテンプレートファイルに含まれる
記述のうち、HTMLで記述された静的な部分の記述を
解析して、ファイル間の参照関係や未解決の参照の情報
を利用者に提示する機能を持つ。しかし、スクリプト言
語で記述されたスクリプトプログラムの部分の処理を解
析して、ファイル間の参照関係や未解決の参照の情報を
利用者に提示する機能は持たない。[0008] Each of the above systems analyzes the description of the static part described in HTML from the description included in the template file read by the page generation program, and refers to the reference relation between the files and the unresolved reference. It has a function to present the information of the user to the user. However, it does not have a function of analyzing the processing of a part of a script program described in a script language and presenting information of a reference relation between files and information of an unresolved reference to a user.
【0009】[0009]
【発明が解決しようとする課題】上記従来の技術ではい
ずれも、サーバ計算機上で起動したページ生成プログラ
ムにスクリプトプログラムを記述したテンプレートファ
イルを読み込ませ、スクリプトプログラムを解釈実行し
てWebページの表示情報を生成し、サーバ計算機上で
開示するサーバアプリケーションを開発することが可能
であった。しかし以下に示す問題点があった。In each of the above-mentioned prior arts, a page generation program started on a server computer reads a template file in which a script program is described, interprets and executes the script program, and displays Web page display information. Was generated, and a server application to be disclosed on the server computer could be developed. However, there were the following problems.
【0010】(1)サーバアプリケーションの構成要素
として、あるテンプレートファイルを指定したとき、指
定したテンプレートファイル中のスクリプトプログラム
の部分の処理に従って参照されるテンプレートファイル
と処理プログラムの組を特定するには、利用者自身がス
クリプトプログラムの内容を解析する必要があった。ま
た、参照されるテンプレートファイルに記述されたスク
リプトプログラム中で、さらに他のテンプレートファイ
ルや処理オブジェクトを参照している場合は、この操作
を繰り返し行う必要があった。このため、サーバアプリ
ケーションの実行時に必要となるテンプレートファイル
と処理プログラムの組をすべて特定して、前記ページ生
成プログラムから参照可能なファイルシステム上に置く
には、多くの労力が必要であった。(1) When a certain template file is specified as a component of the server application, a set of a template file and a processing program to be referred to in accordance with the processing of the script program in the specified template file is specified. The user himself had to analyze the contents of the script program. Further, when another template file or processing object is referred to in the script program described in the referenced template file, this operation has to be repeated. For this reason, much effort was required to specify all the sets of the template file and the processing program required when executing the server application, and to place them on a file system that can be referred to by the page generation program.
【0011】(2)(1)で求めた、テンプレートファ
イルのスクリプトプログラムの部分の処理にもとづくテ
ンプレートファイル間の参照関係を出力装置上で一覧す
ることができなかった。このため、サーバアプリケーシ
ョンを構成するテンプレートファイル全体の参照関係を
把握することが難しかった。(2) The reference relationship between the template files based on the processing of the script program portion of the template file obtained in (1) cannot be listed on the output device. For this reason, it has been difficult to grasp the reference relation of the entire template file constituting the server application.
【0012】[0012]
【課題を解決するための手段】上記課題を解決するため
に、以下の手段を提供する。To solve the above problems, the following means are provided.
【0013】(1)開発用計算機のファイルシステム上
に、Webページの表示情報を生成するスクリプトプロ
グラムを記述したテンプレートファイル、および前記ス
クリプトプログラムから操作される処理プログラムの実
装ファイルを蓄えておき、このうちサーバアプリケーシ
ョンの構成要素として利用するテンプレートファイルを
選びその名称を指定する手段。(1) On a file system of a development computer, a template file describing a script program for generating display information of a Web page and an implementation file of a processing program operated from the script program are stored. A means for selecting a template file to be used as a component of the server application and specifying its name.
【0014】(2)(1)で指定したテンプレートファ
イルに記述したスクリプトプログラムを解析して、テン
プレートファイルを参照している箇所、および別の処理
プログラムを呼び出している箇所を識別して、参照先お
よび呼び出し先を特定する手段。(2) Analyzing the script program described in the template file specified in (1), identifies a location referring to the template file and a location calling another processing program, and refers to And the means to identify the callee.
【0015】(3)(2)の処理を繰り返し行い、前記
サーバアプリケーションの実行時に参照されるテンプレ
ートファイルおよび呼び出される処理プログラムの一覧
を求めて、出力装置に表示する手段。(3) A means for repeating the processing of (2), obtaining a list of template files and processing programs to be referred to when the server application is executed, and displaying the list on an output device.
【0016】(4)(2)で求めた参照先および呼び出
し先のうち、未解決の参照または呼び出しとなっている
ものを求めて出力装置に表示する手段。(4) Means for obtaining an unresolved reference or call out of the reference destination and the call destination obtained in (2) and displaying it on an output device.
【0017】(5)(4)で求めた未解決の参照および
呼び出しを修正して解決する手段。(5) Means for correcting and solving the unresolved reference and call obtained in (4).
【0018】(6)前記サーバアプリケーションの実行
時に必要となるテンプレートファイルと処理プログラム
の実装ファイルの組を、Webサーバを実行するサーバ
計算機またはサーバ計算機から参照可能な計算機上のフ
ァイルシステムに転送する手段。(6) Means for transferring a set of a template file and a processing program mounting file required when executing the server application to a server computer that executes a Web server or a file system on a computer that can be referred to from the server computer. .
【0019】[0019]
【発明の実施の形態】以下、本発明の一実施例について
説明する。DESCRIPTION OF THE PREFERRED EMBODIMENTS One embodiment of the present invention will be described below.
【0020】図2は、本発明を実施する計算機装置のハ
ードウェア構成を示したものである。計算機200は、
内部記憶装置である主記憶装置206、ファイルシステ
ムにより管理されるファイルの実体を格納する外部記憶
装置203、前記主記憶装置203に蓄えられたプログ
ラムを実行する中央処理装置204、利用者からの入力
を受けるための入力装置202、計算機の処理結果を出
力する表示装置201、およびネットワーク回線を介し
て計算機の間でデータの送受信を行うためのネットワー
ク装置205から構成される。これらの機器は、データ
を転送するためのバス装置207により互いに接続され
ている。FIG. 2 shows a hardware configuration of a computer device for implementing the present invention. The computer 200
A main storage device 206 serving as an internal storage device, an external storage device 203 for storing an entity of a file managed by a file system, a central processing device 204 for executing a program stored in the main storage device 203, and an input from a user An input device 202 for receiving data, a display device 201 for outputting a processing result of the computer, and a network device 205 for transmitting and receiving data between the computers via a network line. These devices are connected to each other by a bus device 207 for transferring data.
【0021】本発明は、これらの機器からのデータ入
力、あるいは機器へのデータ出力、およびデータの加工
や検査を、主記憶装置206にロードされたプログラム
に従って制御することで実現するものである。The present invention is realized by controlling data input from or output to these devices, and data processing and inspection in accordance with a program loaded in the main storage device 206.
【0022】具体的な処理手順について説明する前に本
実施例で用いる用語について説明しておく。本発明で
は、Webサーバプログラムと連携して動作するアプリ
ケーションプログラムを“Webサーバアプリケーショ
ン”と呼ぶ。また、オブジェクト指向にもとづき外部公
開する処理手続きをメソッドとして実装したオブジェク
トを“処理オブジェクト”と呼び、処理オブジェクトの
実装を含むファイルを“処理オブジェクトモジュールフ
ァイル”と呼ぶ。オブジェクト指向については“小野沢
博文、分散オブジェクト指向CORBA、ソフトリサー
チセンター(1996)”(文献4)のpp.13−2
1で説明されている。なお、処理オブジェクトに外部か
らアクセスする方法については、分散オブジェクト指向
技術CORBA(Common Object Req
uest Broker Architectute)
の場合の例が、前記文献4のpp.176−178に記
されている。本文献に示されている例では、ネーミング
サービスを設けて、オブジェクトの参照情報であるオブ
ジェクトリファレンスを登録して利用するためのサービ
スを提供する。オブジェクトに名前を付けてネーミング
サービスに登録しておき、クライアントプログラムは、
登録された名前からオブジェクトを検索することで、オ
ブジェクトにアクセスする。ここで、ネーミングサービ
スは特定の実装を仮定していないので、既存システムの
実装を使用した実装も、ファイルシステムを使用した実
装もありうる。本実施例では、ファイルシステム上のフ
ァイルに、処理オブジェクトの名前と処理オブジェクト
の実装ファイルの名前を登録し、登録された処理オブジ
ェクトの名前から処理オブジェクトの実装を検索する方
法を用いる。Before describing specific processing procedures, terms used in the present embodiment will be described. In the present invention, an application program that operates in cooperation with a Web server program is called a “Web server application”. Also, an object in which a processing procedure that is externally disclosed based on the object orientation is implemented as a method is called a “processing object”, and a file including the implementation of the processing object is called a “processing object module file”. For the object orientation, see "Hirofumi Onozawa, Distributed Object Oriented CORBA, Soft Research Center (1996)" (pp. 4). 13-2
1. The method of accessing the processing object from the outside is described in the distributed object-oriented technology CORBA (Common Object Req).
west Broker Architecture)
In the case of pp. Pp. 176-178. In the example shown in this document, a naming service is provided to provide a service for registering and using an object reference which is reference information of an object. Name the object and register it in the naming service, and the client program
Access the object by searching for the object from the registered name. Here, since the naming service does not assume a specific implementation, there may be an implementation using an existing system implementation and an implementation using a file system. In this embodiment, a method is used in which the name of a processing object and the name of an implementation file of the processing object are registered in a file on the file system, and the implementation of the processing object is searched from the registered processing object name.
【0023】また、「従来の技術」で述べたように、W
ebページの表示情報を生成するためのスクリプトプロ
グラムを含むファイルを“テンプレートファイル”と呼
ぶ。Further, as described in the "prior art", W
A file including a script program for generating display information of an eb page is called a “template file”.
【0024】図1は、Webサーバアプリケーション開
発システム116の動作環境と構成を示したものであ
る。まず、動作環境について説明する。動作環境として
は「従来の技術」で述べた従来技術であるWWWを使用
する。開発用計算機101はWebサーバアプリケーシ
ョン開発システム116を実行する計算機である。サー
バ計算機102はWebサーバアプリケーション実行シ
ステム119を実行する計算機である。クライアント計
算機104はWebブラウザシステム115を実行する
計算機である。開発用計算機101、サーバ計算機10
2およびクライアント計算機104は、ネットワーク回
線103により接続されている。開発用計算機101の
外部記憶装置203には、テンプレートファイル108
と、処理オブジェクトモジュールファイル109と、処
理オブジェクト登録ファイル107が格納されている。FIG. 1 shows the operating environment and configuration of the Web server application development system 116. First, the operating environment will be described. As the operating environment, WWW, which is a conventional technique described in “Prior Art”, is used. The development computer 101 is a computer that executes the Web server application development system 116. The server computer 102 is a computer that executes the Web server application execution system 119. The client computer 104 is a computer that executes the Web browser system 115. Development computer 101, server computer 10
2 and the client computer 104 are connected by a network line 103. The external storage device 203 of the development computer 101 stores the template file 108
, A processing object module file 109, and a processing object registration file 107.
【0025】続いて構成について説明する。Webサー
バアプリケーション開発システム116は、テンプレー
トファイルデバッグ処理105、呼び出し情報管理テー
ブル106、未解析テンプレートテーブル117、呼び
出し情報一時保存テーブル118から構成される。We
bサーバアプリケーション開発システム116は、We
bサーバアプリケーション実行システム119を実行す
る場合に必要なテンプレートファイルと処理オブジェク
トモジュールファイルを特定する情報を取得して、特定
したファイルの名称の一覧を出力装置である表示装置2
01に表示するとともに、テンプレートファイルに記述
したスクリプトプログラムに含まれる未解決の参照を識
別して、参照先の情報を特定する情報を表示装置201
に表示し、さらに未解決の参照を修正する処理を行う。
続いて、Webサーバアプリケーション実行システム1
19を実行するために必要なテンプレートファイルおよ
び処理オブジェクトモジュールファイルを、サーバ計算
機102上の外部記憶装置203であるディスク装置に
転送し、ファイルシステム上のファイルとして格納す
る。テンプレートファイル113および処理オブジェク
トモジュールファイル114が、前記格納したファイル
に該当する。Webブラウザシステム115は、入力装
置202から利用者が入力したHTMLデータ転送要求
をWebサーバアプリケーション実行システム119に
転送する。Webサーバアプリケーション実行システム
119はWebブラウザシステム115から転送された
要求にもとづいて、テンプレートファイル113を読み
込んでテンプレートファイル113に含まれるスクリプ
トプログラムを解釈実行し、HTMLデータを生成して
Webブラウザシステム115に転送する。Webサー
バアプリケーション実行システム119は、スクリプト
プログラムの解釈実行の際、スクリプトプログラムの記
述ないように従って他のテンプレートファイル113を
参照して読み込むとともに、処理オブジェクトを起動し
て処理結果を受け取り、テンプレートファイルに埋め込
む処理を行う。Webブラウザシステムは、前記転送さ
れたHTMLデータを受信して、表示装置201に表示
する。Next, the configuration will be described. The Web server application development system 116 includes a template file debugging process 105, a call information management table 106, an unanalyzed template table 117, and a call information temporary storage table 118. We
b server application development system 116
b) Obtain information specifying a template file and a processing object module file necessary for executing the server application execution system 119, and list the names of the specified files on the display device 2 as an output device.
01, and identifies the unresolved reference included in the script program described in the template file, and displays the information for specifying the reference destination information on the display device 201.
, And a process of correcting unresolved references is performed.
Subsequently, the Web server application execution system 1
The template file and the processing object module file necessary for executing the program 19 are transferred to a disk device which is the external storage device 203 on the server computer 102, and stored as a file on the file system. The template file 113 and the processing object module file 114 correspond to the stored files. The Web browser system 115 transfers the HTML data transfer request input by the user from the input device 202 to the Web server application execution system 119. Based on the request transferred from the Web browser system 115, the Web server application execution system 119 reads the template file 113, interprets and executes a script program included in the template file 113, generates HTML data, and sends the HTML data to the Web browser system 115. Forward. When interpreting and executing the script program, the Web server application execution system 119 refers to and reads another template file 113 so as not to describe the script program, activates the processing object, receives the processing result, and embeds the processing result in the template file. Perform processing. The Web browser system receives the transferred HTML data and displays it on the display device 201.
【0026】本発明に該当するWebサーバアプリケー
ション開発システム116について具体的に説明する前
に、Webサーバアプリケーション開発システム116
の適用対象とするWebサーバアプリケーション実行シ
ステム119およびWebブラウザシステム115の基
本動作について説明する。Before specifically describing the Web server application development system 116 according to the present invention, the Web server application development system 116
The basic operation of the Web server application execution system 119 and the Web browser system 115 to which is applied will be described.
【0027】図7は、処理オブジェクト登録ファイル1
07のデータ構造を示すものである。処理オブジェクト
登録ファイル107の内容は、処理オブジェクト登録エ
ントリ701と呼ぶデータ構造を要素として持つ配列で
ある。処理オブジェクト登録エントリ701は、インデ
ックスと呼ぶ整数702、処理オブジェクトの名称を示
す文字列703および処理オブジェクトが実装されたモ
ジュールファイルの名称を示す文字列704から構成さ
れるデータ構造である。FIG. 7 shows a processing object registration file 1
07 shows the data structure of the data. The content of the processing object registration file 107 is an array having a data structure called a processing object registration entry 701 as an element. The processing object registration entry 701 has a data structure including an integer 702 called an index, a character string 703 indicating the name of the processing object, and a character string 704 indicating the name of a module file in which the processing object is mounted.
【0028】続いて、図3および図6のフローチャート
を用いて、構成要素間の関係について説明する。Next, the relationship between the components will be described with reference to the flowcharts of FIGS.
【0029】図3のフローチャートは、Webブラウザ
システム115およびWebサーバアプリケーション実
行システム119の処理の流れを示している。図4は、
Webブラウザシステム115による、表示装置201
へのWebブラウザ画面403の表示例である。図5の
500に示したHTMLデータをWebブラウザシステ
ム115に読み込ませることにより、図4に示したWe
bブラウザ画面403を表示することができる。まずス
テップ301で、。Webブラウザ画面403上で、入
力装置202からURL(Universal Res
ource Locator)を指定する。URLにつ
いては、「従来の技術」で述べた文献1のpp.6−1
0で説明されている。URLを指定する方法には、We
bブラウザ画面400の入力域402に入力装置から文
字列を入力する方法と、401で示されるアンカーと呼
ばれる部分を入力装置202である画面指示装置で指示
する方法がある。401で示されるアンカーは、図5の
HTMLデータにおける501で示される部分に基づい
て表示されたものである。401で示されるアンカーを
前記画面指示装置で指示すると、入力域402に、50
2で示されるURL“http://cgi−bin/
page?TEMPLATE=SHOPDOOR.TM
PL&SHOPNAME=A”を入力した場合と同じ結
果が得られる。次にステップ302で、前記指定したU
RLをサーバ計算機102上で実行されているWebサ
ーバプログラム110に送信し、HTMLデータの転送
要求を行う。Webサーバプログラム110は、ステッ
プ304で前記送信されたURLを受信すると、ステッ
プ305でHTMLデータ生成処理111をCGI(C
ommon Gateway Interface)の
インタフェースにより起動する。CGIについては、
“ドクタードブスジャーナル日本版、Vol.5、N
o.6、1996年6月、翔泳社”(文献5)のpp.
30−37で説明されている。FIG. 3 is a flowchart showing the flow of processing of the Web browser system 115 and the Web server application execution system 119. FIG.
Display device 201 by Web browser system 115
6 is a display example of a Web browser screen 403 to the Web browser. By reading the HTML data shown by 500 in FIG. 5 into the Web browser system 115, the Web browser shown in FIG.
b Browser screen 403 can be displayed. First, in step 301. On the web browser screen 403, a URL (Universal Res) is input from the input device 202.
source Locator). For the URL, refer to pp. 139 of Reference 1 described in “Prior Art”. 6-1
0. To specify the URL,
There are a method of inputting a character string from the input device to the input area 402 of the b-browser screen 400 and a method of designating a part called an anchor indicated by 401 with the screen designating device as the input device 202. The anchor indicated by 401 is displayed based on the portion indicated by 501 in the HTML data of FIG. When an anchor indicated by 401 is designated by the screen pointing device, 50
URL “http: // cgi-bin /
page? TEMPLATE = SHOPDOOR. TM
The same result as when PL & SHOPNAME = A "is obtained. Next, at step 302, the designated U
The RL is transmitted to the Web server program 110 executed on the server computer 102, and a request for transferring HTML data is made. When the Web server program 110 receives the transmitted URL in step 304, the Web server program 110 executes HTML data generation processing 111 in CGI (C
Ommon Gateway Interface). About CGI,
"Doctor Dobbs Journal Japan Version, Vol. 5, N
o. 6, June 1996, Shosyosha, pp.
This is described at 30-37.
【0030】502で示されるURLでは、“pag
e”がHTMLデータ生成処理111を実装したプログ
ラムのモジュール名称であり、TEMPLATE=SH
OPDOOR.TMPLおよびSHOPNAME=Aが
HTMLデータ生成処理111に対して渡すパラメータ
となる。起動されたHTMLデータ生成処理111は、
HTMLデータ307を生成して、生成したHTMLデ
ータ307をWebサーバプログラム110に送信す
る。Webサーバプログラム110は、HTMLデータ
生成処理111の処理が終了すると、前記送信されたH
TMLデータ307をステップ306で受け取り、さら
にWebブラウザシステム115に転送する。Webブ
ラウザシステムは、前記転送されたHTMLデータ30
7をステップ303で受信し、Webブラウザ画面40
3上に文字、画像等を表示する。In the URL indicated by 502, "pag
e ”is the module name of the program that implements the HTML data generation processing 111, and TEMPLATE = SH
OPDOOR. TMPL and SHOPNAME = A are parameters to be passed to the HTML data generation processing 111. The activated HTML data generation processing 111 includes:
The HTML data 307 is generated, and the generated HTML data 307 is transmitted to the Web server program 110. When the processing of the HTML data generation processing 111 ends, the Web server program 110
The TML data 307 is received in step 306, and further transferred to the Web browser system 115. The Web browser system transmits the transferred HTML data 30
7 is received in step 303, and the Web browser screen 40
3 display characters, images, and the like.
【0031】図6は、HTMLデータ生成処理111の
フローチャートである。まずステップ601で、TEM
PLATEパラメータに指定された文字列を取得する。
前記502で示されるURLの例では、TEMPLAT
Eパラメータの値は“SHOPDOOR.TMPL”で
ある。次にステップ602で、TEMPLATEパラメ
ータで名称が指定されているテンプレートファイル11
3のデータを読み込む。続いてステップ603で、前記
読み込んだデータに含まれるスクリプトプログラムを解
析し、前記スクリプトプログラムに従って呼び出しを行
う。FIG. 6 is a flowchart of the HTML data generation processing 111. First, in step 601, the TEM
Gets the character string specified in the PLATE parameter.
In the example of the URL indicated by 502, TEMPLAT
The value of the E parameter is “SHOPDOR.TMPL”. Next, in step 602, the template file 11 whose name is specified by the TEMPLATE parameter
3 is read. Subsequently, in step 603, the script program included in the read data is analyzed, and a call is made according to the script program.
【0032】本実施例では、ステップ603で行う呼び
出しとして、処理オブジェクト呼び出しおよびインクル
ード呼び出しの2種類を用いる。前記処理オブジェクト
呼び出しは、処理オブジェクトモジュールファイル11
4に実装された処理オブジェクトを呼び出し、前記処理
オブジェクトの処理結果を前記読み込んだデータに埋め
込む処理である。前記インクルード呼び出しは、前記ス
クリプトプログラムに従って、指定されたテンプレート
ファイル113の内容を前記読み込んだデータに埋め込
む処理である。In this embodiment, two types of calls, that is, a process object call and an include call, are used as calls performed in step 603. The processing object call is executed by the processing object module file 11
4 is a process of calling the processing object mounted on the processing object No. 4 and embedding the processing result of the processing object in the read data. The include call is a process of embedding the contents of the specified template file 113 in the read data according to the script program.
【0033】なお本実施例では、ステップ603で行う
以外の呼び出しとしてページ生成呼び出しがある。前記
ページ生成呼び出しは、HTMLデータ生成処理111
がテンプレートファイル113を読み込んで生成したH
TMLデータ307に含まれるハイパーリンクによっ
て、処理ステップ301以降の処理が実行され、再度H
TMLデータ生成処理111でテンプレートファイル1
13を読み込んでHTMLデータ307を生成するよう
な、テンプレートファイル113間の呼び出し関係を示
す。なお、ハイパーリンクについては「従来の技術」で
述べた文献1のp.5で説明されている。In the present embodiment, there is a page generation call as a call other than that performed in step 603. The page generation call is performed in the HTML data generation processing 111.
Generated by reading the template file 113
The processing after the processing step 301 is executed by the hyperlink included in the TML data 307, and H
Template file 1 in TML data generation processing 111
13 shows a calling relationship between the template files 113 such that the HTML file 307 is read and the HTML data 307 is generated. Note that the hyperlink is described in p. 5 is explained.
【0034】図8および図9は、テンプレートファイル
の記述例である。FIG. 8 and FIG. 9 are description examples of the template file.
【0035】図10は、図8および図9に示したテンプ
レートファイルを元に生成されるHTMLデータ307
の内容の例を示したものである。FIG. 10 shows HTML data 307 generated based on the template files shown in FIGS.
Shows an example of the contents of the above.
【0036】図11は、図10に示したHTMLデータ
をWebブラウザシステム115で読み込んだ場合のW
ebブラウザ画面403の表示例である。FIG. 11 is a diagram showing a case where the Web browser system 115 reads the HTML data shown in FIG.
6 is a display example of an web browser screen 403.
【0037】以下、ステップ603の処理を図8から図
11を用いて説明する。本実施例では、テンプレートフ
ァイルは、通常のHTML記述の中にスクリプトプログ
ラムを埋め込む形で定義する。スクリプトプログラムは
“<!@”および“>”で囲んだ区間に記述して、通常
のHTMLで記述された部分と区別する。また、変数は
“$”で始まる文字列で表記する。処理ステップ601
で取得したパラメータは、テンプレートファイルに含ま
れるスクリプトプログラム中では変数として扱うことが
できる。例えば、502で示されるURLをステップ3
01で指定した場合は、スクリプトプログラム中では、
値“A”の変数$SHOPNAMEとして扱うことがで
きる。The processing of step 603 will be described below with reference to FIGS. In this embodiment, the template file is defined by embedding a script program in a normal HTML description. The script program is described in a section surrounded by “<! @” and “>” to distinguish it from a portion described in ordinary HTML. Variables are represented by character strings starting with "@". Processing step 601
The parameters obtained in can be handled as variables in the script program included in the template file. For example, the URL indicated by 502 is
If you specify 01, in the script program,
It can be handled as the variable $ SHOPNAME of the value "A".
【0038】テンプレートファイルSHOPDOOR.
TMPL(801)では、802および805で示され
る部分が前記スクリプトプログラムである。スクリプト
プログラム802は前記処理オブジェクト呼び出しを表
しており、“<!@EXEC変数名称=処理オブジェク
ト名称.メソッド名称()>”の形式で1行に記述す
る。スクリプトプログラム802は、処理オブジェクト
PERSONのGetGenderメソッドを呼び出
し、その戻り値を変数$GENDERに設定する処理を
表している。The template file SHOPDOR.
In the TMPL (801), the portions indicated by 802 and 805 are the script programs. The script program 802 represents the processing object call, and is described in one line in a format of “<! @ EXEC variable name = processing object name.method name ()>”. The script program 802 represents a process of calling the GetGender method of the processing object PERSON and setting the return value to a variable $ GENDER.
【0039】なお、処理オブジェクトの起動は、処理オ
ブジェクト登録ファイル107を参照して、処理オブジ
ェクトの名称703の値に対応するモジュールファイル
のパス名称704を取得することにより行う。なお、同
一のエントリの計算機名称705に登録されている文字
列が空でない場合は、ネットワーク回線103を介し
て、計算機名称705で指定される計算機上の処理オブ
ジェクトモジュールファイル114を起動する。前記登
録されている文字列が空である場合は、サーバ計算機1
02自信の前記ディスク装置上の処理オブジェクトモジ
ュールファイル114を起動する。The activation of the processing object is performed by referring to the processing object registration file 107 and obtaining the path name 704 of the module file corresponding to the value of the name 703 of the processing object. If the character string registered in the computer name 705 of the same entry is not empty, the processing object module file 114 on the computer specified by the computer name 705 is activated via the network line 103. If the registered character string is empty, the server computer 1
02 starts the processing object module file 114 on the disk device.
【0040】スクリプトプログラム805全体は条件分
岐を表しており、変数$GENDERの値が“男”の場
合はスクリプトプログラム803を実行し、それ以外の
場合はスクリプトプログラム804を実行する。スクリ
プトプログラム803およびスクリプトプログラム80
4は前記インクルード呼び出しを表しており、“<!@
INCLUDE テンプレートファイル名称>”の形式
で1行に記述する。スクリプトプログラム803は、テ
ンプレートファイルMAN.TMPLを読み込み、その
内容を本処理が記述されている箇所に埋め込む処理を表
している。スクリプトプログラム804は、テンプレー
トファイルWOMAN.TMPLを読み込み、その内容
を本処理が記述されている箇所に埋め込む処理を表して
いる。The entire script program 805 represents a conditional branch. If the value of the variable $ GENDER is "male", the script program 803 is executed; otherwise, the script program 804 is executed. Script program 803 and script program 80
4 indicates the include call, and “<! @”
Include template file name> ”in one line. The script program 803 reads the template file MAN.TMPL and embeds the contents in the location where this processing is described. Indicates a process of reading the template file WOMAN.TMPL and embedding the contents in a place where the present process is described.
【0041】次に、テンプレートファイルMAN.TM
PL(901)およびWOMAN.TMPL(904)
の記述内容を説明する。902、903、905および
906で示される部分がスクリプトプログラムであり、
いずれも前記ページ生成呼び出しを表している。前記ペ
ージ生成呼び出しは“<A HREF=“http:/
/cgi−bin/page?TEMPALTE=テン
プレートファイル名称&引数1=引数1の値&引数2=
引数2の値&...&引数n=引数nの値”>“の形式
で記述する。902および905で示される部分は、テ
ンプレートファイルWEAR.TMPL(907)を元
にHTMLデータ生成処理111によって生成されるH
TMLデータ307へのハイパーリンクを表している。
903で示される部分は、テンプレートファイルGOL
F.TMPLを元に、HTMLデータ生成処理111に
よって生成されるHTMLデータ307へのハイパーリ
ンクを表している。906で示される部分は、テンプレ
ートファイルCOSMETIC.TMPLを元に、HT
MLデータ生成処理111によって生成されるHTML
データ307へのハイパーリンクを表している。Next, the template file MAN. TM
PL (901) and WOMAN. TMPL (904)
Is described. Portions 902, 903, 905 and 906 are script programs,
Each of them represents the page generation call. The page generation call is "<A HREF =" http: //
/ Cgi-bin / page? TEMPALTE = template file name & argument 1 = value of argument 1 & argument 2 =
Argument 2 value &. . . & Argument n = value of argument n ">" Portions indicated by 902 and 905 are template files WEAR. H generated by HTML data generation processing 111 based on TMPL (907)
A hyperlink to the TML data 307 is shown.
The portion indicated by 903 is a template file GOL
F. A hyperlink to the HTML data 307 generated by the HTML data generation processing 111 based on the TMPL is shown. The portion indicated by reference numeral 906 is a template file COSMETIC. HT based on TMPL
HTML generated by the ML data generation processing 111
A hyperlink to the data 307 is shown.
【0042】続いて、テンプレートファイルWEAR.
TMPL(907)の記述内容を説明する。908で示
される部分全体がスクリプトプログラムである。スクリ
プトプログラム908は繰り返しの処理を表しており、
内部にスクリプトプログラム909、910および91
1を含む。スクリプトプログラム909およびスクリプ
トプログラム910は処理オブジェクト呼び出しであ
る。スクリプトプログラム909は、GOODSDBオ
ブジェクトのGetGoodメソッドを呼び出し、処理
結果を変数$GOODに設定する処理を表している。ス
クリプトプログラム910は、GOODSDBオブジェ
クトのGetPriceメソッドを呼び出し、処理結果
を変数$PRICEに設定する処理を表している。スク
リプトプログラム911は、変数$GOODおよび$P
RICEに設定された内容を、両変数名称が記述された
箇所に埋め込む処理を表している。1001は、ステッ
プ602でテンプレートファイルSHOPDOOR.T
MPL(801)を読み込んだ場合にステップ603で
生成されるHTMLデータの例である。1101は、H
TMLデータ1001をWebブラウザシステム115
で読み込んだ場合のWebブラウザ画面の表示例であ
る。Webブラウザ画面1101上で、前記アンカーで
ある1102で示される箇所を前記画面指示装置で指示
すると、HTMLデータ1001に含まれるハイパーリ
ンク1002にもとづき、再度ステップ302が実行さ
れ、その結果ステップ602でテンプレートファイルW
EAR.TMPL(907)が読み込まれ、再度ステッ
プ603が実行されHTMLデータ307が生成され
る。生成されるHTMLデータ307の例を1003に
示す。1103は、HTMLデータ1003をWebブ
ラウザシステム115で読み込んだ場合のWebブラウ
ザ画面の表示例である。さらにステップ604で、ステ
ップ603の処理結果であるHTMLデータ307をW
ebサーバプログラム110に送信する。Subsequently, the template file WEAR.
The description contents of TMPL (907) will be described. The entire part indicated by reference numeral 908 is a script program. The script program 908 represents a repetitive process,
Script programs 909, 910 and 91 internally
Including 1. The script program 909 and the script program 910 are processing object calls. The script program 909 represents a process of calling the GetGood method of the GOODSDB object and setting the processing result to the variable $ GOOD. The script program 910 represents a process of calling the GetPrice method of the GOODSDB object and setting the processing result to the variable $ PRICE. The script program 911 includes the variables $ GOOD and $ P
This shows a process of embedding the content set in the RICE at the location where both variable names are described. In step 602, the template file SHOPDOR. T
10 is an example of HTML data generated in step 603 when an MPL (801) is read. 1101 is H
TML data 1001 is transferred to Web browser system 115
6 is a display example of a Web browser screen when reading is performed by using the Web browser. When the location indicated by the anchor 1102 is designated on the Web browser screen 1101 by the screen pointing device, step 302 is executed again based on the hyperlink 1002 included in the HTML data 1001, and as a result, the template File W
EAR. The TMPL (907) is read, and step 603 is executed again to generate HTML data 307. 1003 shows an example of the generated HTML data 307. 1103 is a display example of a Web browser screen when the HTML data 1003 is read by the Web browser system 115. Further, in step 604, the HTML data 307, which is the processing result of step 603, is
Send it to the web server program 110.
【0043】以上で、Webブラウザシステム115お
よびWebサーバアプリケーション実行システム119
の説明を終わる。As described above, the Web browser system 115 and the Web server application execution system 119
Ends the description.
【0044】続いて、本発明に該当するWebサーバア
プリケーション開発システム116の動作について具体
的に説明する。Next, the operation of the Web server application development system 116 according to the present invention will be specifically described.
【0045】図12は、Webサーバアプリケーション
開発システム116に含まれるテンプレートファイルデ
バッグ処理105のフローチャートを示したものであ
る。まずステップ1201で、入力装置202から、開
発用計算機101の前記ディスク装置のファイルシステ
ム上に格納されたテンプレートファイル108に含まれ
るファイルの名称を1個以上指定する。ステップ120
2で、前記名称を指定したテンプレートファイル108
のデータを読み込み、前記読み込んだデータ中に含まれ
るスクリプトプログラムを解析し、スクリプトプログラ
ム中に含まれる呼び出しの情報を取得する。続いて呼び
出しによって参照されるテンプレートファイル108に
ついても呼び出しの情報を取得する。本処理を繰り返し
行うことにより、テンプレートファイル108および前
記処理オブジェクトに関する呼び出し関係の情報を取得
して、前記取得した呼び出し関係の情報を呼び出し情報
管理テーブル106に保存する。続いてステップ120
3で、呼び出し情報管理テーブル106のデータを読み
込み、Webサーバアプリケーション実行システムで使
用するすべてのテンプレートファイルと処理オブジェク
トの名称を表示装置201に表示する。さらにステップ
1204で、呼び出し情報管理テーブル106に保存さ
れたデータから、呼び出し先のテンプレートファイルま
たは処理オブジェクトが利用可能でない、未解決の呼び
出しの情報を取得して、表示装置201に表示する。ス
テップ1205で未解決の呼び出しが存在する場合は、
ステップ1207に進んで、Webサーバアプリケーシ
ョン実行システム119を実行するために必要なテンプ
レートファイル108と処理オブジェクトモジュールフ
ァイル109をサーバ計算機102に転送し、サーバ計
算機102の前記ディスク装置に格納し、処理を終了す
る。ステップ1205で未解決の呼び出しが存在する場
合は、ステップ1206で未解決の呼び出しを修正した
後、ステップ1202に戻る。FIG. 12 shows a flowchart of the template file debugging process 105 included in the Web server application development system 116. First, in step 1201, one or more file names included in the template file 108 stored on the file system of the disk device of the development computer 101 are designated from the input device 202. Step 120
2, the template file 108 specifying the name
Is read, a script program included in the read data is analyzed, and information on a call included in the script program is obtained. Subsequently, call information is also acquired for the template file 108 referred to by the call. By repeatedly performing this process, information on the call relationship regarding the template file 108 and the processing object is acquired, and the acquired information on the call relationship is stored in the call information management table 106. Then step 120
In step 3, the data in the call information management table 106 is read, and the names of all template files and processing objects used in the Web server application execution system are displayed on the display device 201. Further, in step 1204, from the data stored in the call information management table 106, information on an unresolved call in which the template file or the processing object of the call destination is not available is obtained and displayed on the display device 201. If there are outstanding calls in step 1205,
Proceeding to step 1207, the template file 108 and the processing object module file 109 required to execute the Web server application execution system 119 are transferred to the server computer 102, stored in the disk device of the server computer 102, and the processing ends. I do. If there is an unresolved call in step 1205, the process returns to step 1202 after correcting the unresolved call in step 1206.
【0046】次に、テンプレートファイルデバック処理
105で用いるデータ構造について説明する。Next, the data structure used in the template file debugging process 105 will be described.
【0047】図15は、未解析テンプレートテーブル1
17のデータ構造を示すものである。未解析テンプレー
トテーブル117は、スクリプトプログラムに含まれる
呼び出しの情報がまだ未解析のテンプレートファイルの
情報を登録しておくためのテーブルである。未解析テン
プレートテーブル117の内容は、未解析テンプレート
エントリ1501と呼ぶデータ構造を要素として持つ配
列である。未解析テンプレートエントリ1501は、イ
ンデックスと呼ぶ整数1502、テンプレートファイル
108の名称を示す文字列1503、およびテンプレー
トファイルの状態を示す整数1504から構成されるデ
ータ構造である。状態を示す整数1504は、定数DE
FAULTまたは定数ADDのいずれかの値を取りう
る。DEFAULTは、最初にステップ1201で指定
したテンプレートファイルを指し、ADDは、ステップ
1202以降の処理が追加したテンプレートファイルを
指す。FIG. 15 shows an unanalyzed template table 1
17 shows a data structure of the seventeenth embodiment. The unanalyzed template table 117 is a table for registering information of a template file whose call information included in the script program has not been analyzed yet. The content of the unanalyzed template table 117 is an array having a data structure called an unanalyzed template entry 1501 as an element. The unparsed template entry 1501 has a data structure including an integer 1502 called an index, a character string 1503 indicating the name of the template file 108, and an integer 1504 indicating the status of the template file. The integer 1504 indicating the state is a constant DE
It can take the value of either FAULT or constant ADD. DEFAULT indicates the template file specified in step 1201 first, and ADD indicates the template file added by the processing in step 1202 and subsequent steps.
【0048】図16は、呼び出し情報一時保存テーブル
118のデータ構造を示すものである。呼び出し先一時
保存テーブル118は、特定のテンプレートファイルの
スクリプトプログラムによって呼び出されるテンプレー
トファイルまたは処理オブジェクトの情報を、一時的に
保存しておくためのテーブルである。呼び出し先一時保
存テーブル118の内容は、呼び出し先テンプレートエ
ントリ1601とよぶデータ構造を要素として持つ配列
である。呼び出し先テンプレートエントリ1601は、
インデックスと呼ぶ整数1602、呼び出し先のテンプ
レートファイルまたは処理オブジェクトの名称を示す文
字列1603、および呼び出しの種別を示す整数160
4から構成されるデータ構造である。呼び出しの種別を
示す整数1604は、定数GENERATE、INCL
UDE、OBJECTのいずれかの値を取りうる。各々
の値は、順にページ生成呼び出し、インクルード呼び出
し、処理オブジェクト呼び出しを表す。FIG. 16 shows the data structure of the call information temporary storage table 118. The call destination temporary storage table 118 is a table for temporarily storing information of a template file or a processing object called by a script program of a specific template file. The content of the callee temporary storage table 118 is an array having a data structure called a callee template entry 1601 as an element. The callee template entry 1601 is
An integer 1602 called an index, a character string 1603 indicating the name of a template file or a processing object to be called, and an integer 160 indicating a type of call
4 is a data structure composed of Integer 1604 indicating the type of call is a constant GENERATE, INCL
It can take any value of UDE and OBJECT. Each value represents a page generation call, an include call, and a processing object call in order.
【0049】図17は、呼び出し情報管理テーブル10
6のデータ構造を示すものである。呼び出し情報管理テ
ーブル106は、Webサーバアプリケーション実行シ
ステム119を実行するために必要なテンプレートファ
イルおよび処理オブジェクトの情報と、テンプレートフ
ァイルおよび処理オブジェクトに関する呼び出し関係の
情報を保持しておくためのテーブルである。呼び出し情
報管理テーブルの内容は、呼び出し情報管理エントリ1
701と呼ぶデータ構造を要素として持つ配列である。
呼び出し情報管理エントリ1701は、インデックスと
呼ぶ整数1702、テンプレートファイルまたは処理オ
ブジェクトの名称を示す文字列1703、テンプレート
ファイルまたは処理オブジェクトの種別を示す整数17
04、テンプレートファイルまたは処理オブジェクトの
状態を示す整数1705、および呼び出し先情報管理領
域1800のメモリ上のアドレスを示す整数1706か
ら構成されるデータ構造である。種別を示す整数170
4は、定数TEMPLATEまたは定数OBJECTの
いずれかの値を取りうる。各々の値は、順にテンプレー
トファイル、処理オブジェクトを表す。状態を示す整数
1705は、未解析テンプレートエントリ1501にお
ける状態を示す整数1504と同じ意味をもつ。FIG. 17 shows the call information management table 10
6 shows the data structure of FIG. The call information management table 106 is a table for holding information on template files and processing objects necessary for executing the Web server application execution system 119, and information on call relations regarding the template files and processing objects. The contents of the call information management table are the call information management entry 1
An array having a data structure called 701 as an element.
The call information management entry 1701 includes an integer 1702 called an index, a character string 1703 indicating the name of the template file or the processing object, and an integer 17 indicating the type of the template file or the processing object.
04, an integer 1705 indicating the status of the template file or the processing object, and an integer 1706 indicating the address on the memory of the callee information management area 1800. Integer 170 indicating the type
4 can take either the constant TEMPLATE or the constant OBJECT. Each value represents a template file and a processing object in order. The integer 1705 indicating the state has the same meaning as the integer 1504 indicating the state in the unparsed template entry 1501.
【0050】図18は、呼び出し先情報管理領域180
0のデータ構造を示すものである。呼び出し先情報管理
領域106の内容は、呼び出し先情報管理エントリ18
01と呼ぶデータ構造を要素として持つ配列である。呼
び出し先情報管理エントリ1801は、インデックスと
呼ぶ整数1802、テンプレートファイル中で呼び出し
が記述されている箇所の行番号を示す整数1803、呼
び出しの種別を示す整数1804、呼び出し先のテンプ
レートファイルまたは処理オブジェクトの名称を示す文
字列1805、および呼び出しの状態を示す整数180
6から構成されるデータ構造である。呼び出しの種別を
示す整数1804は、呼び出し先テンプレートエントリ
1601における呼び出しの種別を示す整数1604と
同じ意味である。呼び出しの状態を示す整数1806
は、定数OKあるいはNGのいずれかの値を取りうる。
OKは、呼び出し先のテンプレートファイルまたは処理
オブジェクトが存在することを示している。NGは呼び
出し先のテンプレートファイルまたは処理オブジェクト
が存在しないため、参照が未解決になっていることを示
している。FIG. 18 shows a callee information management area 180.
0 shows the data structure. The contents of the callee information management area 106 are
An array having a data structure called 01 as an element. The callee information management entry 1801 includes an integer 1802 called an index, an integer 1803 indicating the line number of a place where the call is described in the template file, an integer 1804 indicating the type of call, and a callee template file or processing object. A character string 1805 indicating the name, and an integer 180 indicating the state of the call
6 is a data structure composed of. The integer 1804 indicating the type of call has the same meaning as the integer 1604 indicating the type of call in the callee template entry 1601. Integer 1806 indicating the status of the call
Can take a value of either a constant OK or NG.
OK indicates that the called template file or processing object exists. NG indicates that the reference is unresolved because the called template file or the processing object does not exist.
【0051】続いて、図12のフローチャートの各ステ
ップについて詳細に説明する。Next, each step of the flowchart of FIG. 12 will be described in detail.
【0052】図13は、図12におけるステップ120
2のフローチャートを示したものである。まずステップ
1301で、ステップ1201で指定したテンプレート
ファイルの各々について、インデックス1502、テン
プレートファイル名称1503、および状態1504の
値を未解析テンプレートテーブル117に登録する。状
態1504の値はすべてDEFAULTとする。FIG. 13 is a flowchart showing step 120 in FIG.
2 shows the flowchart of FIG. First, in step 1301, the values of the index 1502, template file name 1503, and state 1504 are registered in the unanalyzed template table 117 for each of the template files specified in step 1201. It is assumed that all the values of the state 1504 are DEFAULT.
【0053】続いてステップ1302で、未解析テンプ
レートテーブル117の内容が空であるかを検査し、空
である場合は処理を終了し、空でない場合はステップ1
303に進む。Subsequently, in step 1302, it is checked whether or not the contents of the unanalyzed template table 117 are empty. If the contents are empty, the processing is terminated. If not, step 1 is executed.
Go to 303.
【0054】ステップ1303では、未解析テンプレー
トテーブル117の最後のエントリ1501に含まれる
テンプレートファイル名称1503および状態1504
の値を取り出し、それぞれ変数TEMPLATEおよび
STATUSに設定する。In step 1303, the template file name 1503 and the state 1504 included in the last entry 1501 of the unanalyzed template table 117
Is taken out and set in variables TEMPLATE and STATUS, respectively.
【0055】次にステップ1304では、ステップ13
03で参照した未解析テンプレートテーブル117の最
後のエントリ1501を削除する。Next, in step 1304, step 13
The last entry 1501 of the unanalyzed template table 117 referred to in step 03 is deleted.
【0056】ステップ1305では、呼び出し情報管理
テーブル106の末尾に呼び出し情報管理エントリ17
01を追加し、テンプレートファイルまたは処理オブジ
ェクトの名称1703にはTEMPLATEの値を登録
し、状態1705にはSTATUSの値を登録する。In step 1305, the call information management entry 17 is added to the end of the call information management table 106.
01 is added, the value of TEMPLATE is registered in the name 1703 of the template file or the processing object, and the value of STATUS is registered in the state 1705.
【0057】ステップ1306では、ファイル名称がT
EMPLATEであるテンプレートファイル108を読
み込み、テンプレートファイル108のスクリプトプロ
グラムを解析して、前記呼び出しの処理が記述されてい
る箇所を識別する。具体的には、“<!@EXEC変数
名称=処理オブジェクト名称.メソッド名称()>”の
形式で記述してある行は前記処理オブジェクト呼び出し
であると判断し、“<!@INCLUDE テンプレー
トファイル名称>”の形式で記述してある行は前記イン
クルード呼び出しであると判断し、“<A HREF=
“http://cgi−bin/page?TEMP
LATE=テンプレートファイル名称&引数1=引数1
の値&引数2=引数2の値&...&引数n=引数nの
値”>“の形式で記述してある行は前記ページ生成呼び
出しであると判断する。呼び出しの処理が記述されてい
る箇所の各々について、テンプレートファイル108中
の行番号と呼び出しの種別と呼び出し先の処理オブジェ
クトまたはテンプレートファイルの名称を取得し、エン
トリ1601を追加して登録する。呼び出し情報一時保
存エントリ1601の行番号1603には前記取得した
行番号を登録し、呼び出し先の名称1604には前記取
得した呼出し先の名称を登録し、呼び出しの種別160
5には前記取得した呼び出しの種別を登録する。In step 1306, if the file name is T
The template file 108 which is EMPLATE is read, and the script program of the template file 108 is analyzed to identify a place where the processing of the call is described. Specifically, the line described in the format of “<! @ EXEC variable name = processing object name.method name ()>” is determined to be the processing object call, and “<! @ INCLUDE template file name” > ”Is determined to be the include call, and“ <A HREF =
“Http: // cgi-bin / page? TEMP
LATE = template file name & argument 1 = argument 1
Value & argument 2 = value of argument 2 &. . . & Argument n = Value of Argument n ">" The line described in the format is determined to be the page generation call. For each part where the processing of the call is described, the line number in the template file 108, the type of the call, and the name of the processing object or the template file to be called are acquired, and an entry 1601 is added and registered. The acquired line number is registered in the line number 1603 of the call information temporary storage entry 1601, the acquired call destination name is registered in the call destination name 1604, and the call type 160
In 5, the acquired call type is registered.
【0058】ステップ1307ではループ制御変数iに
値1を設定し、続くステップ1308で、iの値が呼び
出し情報一時保存テーブル118のエントリ数を越えて
いる場合はステップ1302に戻り、超えていない場合
はステップ1309に進む。ステップ1309以降の処
理は、特定のテンプレートファイル108に含まれるス
クリプトプログラム中の呼び出しによって参照されるテ
ンプレートファイルまたは処理オブジェクトの各々につ
いて検査を行うものである。ステップ1309では、呼
び出し情報一時保存テーブル118のi番目のエントリ
1601の呼び出し先の名称1604を取得し、変数D
ESTINATIONに値を設定する。続くステップ1
310では、名称がDESTINATIONである呼び
出し先について検査を行う。ステップ1310の処理の
詳細については図14で説明する。ステップ1311で
変数iの値に1を加えた後、ステップ1308に戻る。At step 1307, the value 1 is set to the loop control variable i. At step 1308, if the value of i exceeds the number of entries in the call information temporary storage table 118, the process returns to step 1302; Goes to step 1309. The processing after step 1309 is to inspect each template file or processing object referred to by a call in the script program included in the specific template file 108. In step 1309, the name of the call destination 1604 of the i-th entry 1601 of the call information temporary storage table 118 is obtained, and the variable D
Set a value in ESTINATION. Next step 1
At 310, a check is made for a callee whose name is DESTINATION. Details of the processing in step 1310 will be described with reference to FIG. After adding 1 to the value of the variable i in step 1311, the process returns to step 1308.
【0059】以上の処理で、呼び出し情報管理テーブル
106には、Webサーバアプリケーション実行システ
ム119を実行するために必要なテンプレートファイル
および処理オブジェクトの情報と、テンプレートファイ
ルおよび処理オブジェクトに関する呼び出し関係の情報
が保存される。In the above processing, the call information management table 106 stores information on template files and processing objects necessary for executing the Web server application execution system 119, and information on call relations regarding the template files and processing objects. Is done.
【0060】図14は、図13におけるステップ131
0の処理を詳細化したフローチャートを示したものであ
る。本フローチャートにおける変数iは、図13におけ
る変数iと同一のものである。最初のステップ1401
では、呼び出し情報一時保存テーブル118のi番目の
エントリ1601に含まれる呼び出しの種別1605の
値を取得し、値がOBJECTである場合はステップ1
409に進む。それ以外の場合、すなわち取得した値が
GENERATEまたはINCLUDEの場合はステッ
プ1402に進む。ここで、ステップ1402から14
06までは、呼び出し先がテンプレートファイルである
場合の処理を、ステップ1409からステップ1413
までは、呼び出し先が処理オブジェクトである場合の処
理を示している。FIG. 14 is a flowchart showing step 131 in FIG.
9 is a flowchart showing a detailed process of the process No. 0. The variable i in this flowchart is the same as the variable i in FIG. First step 1401
Then, the value of the call type 1605 included in the i-th entry 1601 of the call information temporary storage table 118 is acquired, and if the value is OBJECT, step 1 is executed.
Proceed to 409. Otherwise, that is, if the acquired value is GENERATE or INCLUDE, the process proceeds to step 1402. Here, steps 1402 through 14
Until 06, the processing when the call destination is a template file is performed from step 1409 to step 1413.
The above shows processing when the call destination is a processing object.
【0061】まず、呼び出し先がテンプレートファイル
である場合について説明する。ステップ1402では、
ファイル名称がDESTINATIONであるテンプレ
ートファイル108が存在するかを検査する。存在しな
い場合は、ステップ1403で、変数EXISに定数F
ALSEを設定し、ステップ1407に進む。存在する
場合は、ステップ1404で、変数EXISTに定数T
RUEを設定し、ステップ1405に進む。ステップ1
405では、呼び出し情報管理テーブル106の内容を
調べ、名称1703の値がDESTINATIONに一
致するエントリ1701が登録されているかを検査す
る。すでに登録されている場合はステップ1407に進
み、登録されていない場合はTステップ1406に進
む。ステップ1406では、未解析テンプレートテーブ
ル117にエントリ1501を追加する。追加するエン
トリの名称1503の値はDESTINATIONと
し、状態1504の値はADDとする。ステップ140
6が終了すると、ステップ1407に進む。First, the case where the call destination is a template file will be described. In step 1402,
It is checked whether there is a template file 108 whose file name is DESTINATION. If not, in step 1403, the variable EXIS is set to the constant F
ALSE is set, and the routine proceeds to step 1407. If there is, at step 1404, a constant T is set to the variable EXIST.
The RUE is set, and the process proceeds to step 1405. Step 1
In step 405, the contents of the call information management table 106 are checked to check whether an entry 1701 whose value of the name 1703 matches DESTINATION is registered. If it has already been registered, the process proceeds to step 1407; otherwise, the process proceeds to T step 1406. In step 1406, an entry 1501 is added to the unanalyzed template table 117. The value of the name 1503 of the entry to be added is DESTINATION, and the value of the state 1504 is ADD. Step 140
When 6 is completed, the process proceeds to step 1407.
【0062】次に、呼び出し先が処理オブジェクトであ
る場合について説明する。ステップ1409では、名称
がDESTINATIONである処理オブジェクトが、
処理オブジェクト登録ファイル107に登録されている
かを検査する。登録されている場合は、ステップ141
0で変数EXISTに値FALSEを設定した後、ステ
ップ1407に進む。登録されていない場合は、ステッ
プ1411で変数EXISTに値TRUEを設定した
後、ステップ1412に進む。ステップ1412では、
呼び出し情報管理テーブル106の内容を調べ、名称1
703の値がDESTINATIONに一致する呼び出
し情報管理エントリ1701が登録されているかを検査
する。すでに登録されている場合はステップ1407に
進み、登録されていない場合はステップ1413に進
む。ステップ1413では、呼び出し情報管理テーブル
106にエントリ1701を追加する。追加するエント
リの、名称1703の値はDESTINATIONと
し、状態1705の値はADDとする。ステップ141
3が終了すると、ステップ1407に進む。Next, a case where the call destination is a processing object will be described. In step 1409, the processing object whose name is DESTINATION is
It is checked whether it is registered in the processing object registration file 107. If registered, step 141
After setting the value FALSE to the variable EXIST with 0, the process proceeds to step 1407. If not registered, the value TRUE is set to the variable EXIST in step 1411, and the process proceeds to step 1412. In step 1412,
The contents of the call information management table 106 are checked, and the name 1
It is checked whether a call information management entry 1701 whose value of 703 matches DESTINATION is registered. If it has already been registered, the process proceeds to step 1407, and if it has not been registered, the process proceeds to step 1413. In step 1413, an entry 1701 is added to the call information management table 106. The value of the name 1703 of the entry to be added is DESTINATION, and the value of the state 1705 is ADD. Step 141
When 3 is completed, the process proceeds to step 1407.
【0063】続くステップ1407では、まず図13の
ステップ1305で呼び出し情報管理テーブルの末尾に
追加した呼び出し情報管理エントリ1701を参照し
て、呼び出し先情報管理領域1800のメモリ上のアド
レス1706を取得する。ステップ1408では、ステ
ップ1407で取得したアドレスを参照して、呼び出し
先情報管理領域1800の末尾にエントリ1801を追
加する。続いて呼び出し情報管理テーブル118を参照
してi番目のエントリ1601のデータを取り出す。前
記呼び出し先情報管理領域1800に追加するエントリ
1801の行番号1803には行番号1603の値を設
定し、呼び出しの種別1804には呼び出しの種別16
05の値を設定し、呼び出し先の名称1805には呼び
出し先の名称1605の値を設定し、呼び出しの状態1
806には変数EXISTの値を設定する。In the following step 1407, the address 1706 of the memory of the callee information management area 1800 is acquired by referring to the call information management entry 1701 added to the end of the call information management table in step 1305 of FIG. In step 1408, an entry 1801 is added to the end of the callee information management area 1800 with reference to the address acquired in step 1407. Next, the data of the i-th entry 1601 is extracted with reference to the call information management table 118. The value of the line number 1603 is set in the line number 1803 of the entry 1801 to be added to the call destination information management area 1800, and the call type 16 is set in the call type 1804.
05 is set, the value of the callee name 1605 is set in the callee name 1805, and the call state 1 is set.
In 806, the value of the variable EXIST is set.
【0064】以上で図14のフローチャートの説明を終
わる。The description of the flowchart of FIG. 14 has been completed.
【0065】図19は、ステップ1203のフローチャ
ートを示すものである。FIG. 19 shows a flowchart of step 1203.
【0066】図20は、Webサーバアプリケーション
実行システム119を実行するために必要なテンプレー
トファイルおよび処理オブジェクトの一覧を表示装置2
01に表示する画面を示すものである。FIG. 20 shows a list of template files and processing objects necessary for executing the Web server application execution system 119 on the display device 2.
1 shows a screen displayed at 01.
【0067】図19および図20を用いて、必要なテン
プレートファイルおよび処理オブジェクトの一覧を前記
表示装置に表示する処理について説明する。A process for displaying a list of necessary template files and processing objects on the display device will be described with reference to FIGS. 19 and 20.
【0068】まずステップ1901で、ループ制御変数
iに1を設定する。ステップ1902でiの値が呼び出
し情報管理テーブル106のエントリ数を超えている場
合は、処理を終了する。それ以外の場合はステップ19
03に進む。ステップ1903では、呼び出し情報管理
テーブル106のインデックス1702がiのエントリ
1701を参照して、テンプレートファイルまたは処理
オブジェクトの名称1703、種別1704、および状
態1705の値を取得し、取得した結果を画面2008
に表示する。図20の例では、2004、2005、2
006で示す部分は、それぞれインデックス1702の
値が1、3、6であるエントリの内容を表示したもので
ある。表示領域2001には、状態1705の値がDE
FAULTである場合は何も表示せず、値がADDであ
る場合は文字列「自動追加」を表示する。表示領域20
02には、テンプレートファイルまたは処理オブジェク
トの名称1703に登録されている文字列を表示する。
表示領域2003には、種別1704の値がTEMPL
ATEである場合は文字列「テンプレート」を表示し、
値がOBJECTである場合は、文字列「処理オブジェ
クト」を表示する。続いてステップ1904で変数iの
値に1を加え、ステップ1902に戻る。First, in step 1901, 1 is set to a loop control variable i. If the value of i exceeds the number of entries in the call information management table 106 in step 1902, the process ends. Otherwise, step 19
Go to 03. In step 1903, the index 1702 of the call information management table 106 acquires the values of the name 1703, type 1704, and state 1705 of the template file or processing object with reference to the entry 1701 of i, and displays the acquired result on the screen 2008.
To be displayed. In the example of FIG. 20, 2004, 2005, 2
The portion denoted by 006 indicates the contents of the entries whose index 1702 values are 1, 3, and 6, respectively. In the display area 2001, the value of the state 1705 is DE.
If it is FAULT, nothing is displayed, and if the value is ADD, the character string "automatic addition" is displayed. Display area 20
In 02, a character string registered in the name 1703 of the template file or the processing object is displayed.
In the display area 2003, the value of the type 1704 is TEMPL.
If it is ATE, display the string "template",
If the value is OBJECT, a character string “processing object” is displayed. Subsequently, in step 1904, 1 is added to the value of the variable i, and the process returns to step 1902.
【0069】以上の処理を行うことにより、Webサー
バアプリケーション実行システム119を実行するため
に必要なテンプレートファイルと処理オブジェクトの一
覧を、画面2008上に表示することができる。By performing the above-described processing, a list of template files and processing objects required for executing the Web server application execution system 119 can be displayed on the screen 2008.
【0070】図21は、ステップ1204のフローチャ
ートを示すものである。FIG. 21 shows a flowchart of step 1204.
【0071】図22は、テンプレートファイルのスクリ
プトプログラムに含まれる未解決の呼び出しの情報を表
示装置201上に表示する画面を示すものである。FIG. 22 shows a screen on the display device 201 for displaying information on unresolved calls included in the script program of the template file.
【0072】図21および図22を用いて、テンプレー
トファイルのスクリプトプログラムに含まれる未解決の
呼び出しの情報を前記表示装置に表示する処理について
説明する。Referring to FIGS. 21 and 22, a description will be given of a process of displaying unresolved call information included in the script program of the template file on the display device.
【0073】まず、ステップ2101でループ制御変数
iに1を設定する。ステップ2102でiの値が呼び出
し情報管理テーブル106のエントリ数を超えている場
合は、処理を終了する。それ以外の場合はステップ21
03に進み、呼び出し情報管理テーブル106のインデ
ックス1702の値がiのエントリ1701を参照し
て、呼び出し先情報管理領域1800のメモリ上のアド
レス1706を取得する。次に、ステップ2104でル
ープ制御変数jに1を設定する。続いてステップ210
5では、ステップ2103で取得したアドレスが指す呼
び出し情報管理領域1800のエントリ数を取得し、j
の値が取得したエントリ数を超えている場合は、ステッ
プ2109に進んで変数iの値に1を加えた後、ステッ
プ2102に戻る。ステップ2105で、jの値が情報
管理領域1800のエントリ数を超えていない場合は、
ステップ2106に進む。ステップ2106では、ステ
ップ2103で取得したアドレスが指す呼び出し情報管
理領域1800を参照し、インデックス1802がjの
エントリの呼び出しの状態1806の値を取得する。取
得した値がNGである場合はステップ2107に進み、
OKである場合はステップ2108に進む。ステップ2
107では、呼び出し情報管理テーブル106のインデ
ックス1702がiの名称1703と、呼び出し情報管
理領域1800のインデックス1802がjのエントリ
の行番号1803、呼び出しの種別1804、および呼
び出し先の名称1805の値を取得し、取得した値を画
面2209に表示する。表示領域2201には、テンプ
レートファイルの名称1703と、テンプレートファイ
ル中で未解決の参照が記述されている行番号1803を
併せて表示する。表示領域2202には、呼び出し先の
名称1805を表示する。表示領域2203には、呼び
出しの種別1804の値がGENERATEの場合は文
字列「ページ生成」を表示し、値がINCLUDEの場
合は文字列「インクルード」を表示し、値がOBJEC
Tの場合は文字列「オブジェクト」を表示する。221
2の例で示されるような横方向の表示項目の組を表示行
と呼ぶ。図22で、表示行2204は、「テンプレート
ファイルTEMPLATE02.TMPLの15行目に
記述されたページ生成呼び出しで参照されているテンプ
レートファイルTEMPLATE06.TMPLが存在
しない」ことを表している。表示行2205は、「テン
プレートファイルTEMPLATE02.TMPLの1
8行目に記述された処理オブジェクト呼び出しで参照さ
れている処理オブジェクトOBJECTBが起動できな
い」ことを表している。表示行2206は、「テンプレ
ートファイルTEMPLATE03.TMPLの21行
目に記述されたインクルード呼び出しで参照されている
テンプレートファイルTEMPLATE07.TMPL
が存在しない」ことを表している。ステップ2107の
処理が終了すると、ステップ2108で変数jの値に1
を加え、ステップ2105に戻る。First, at step 2101, 1 is set to the loop control variable i. If the value of i exceeds the number of entries in the call information management table 106 in step 2102, the process ends. Otherwise, step 21
In step 03, the address 1702 of the memory of the callee information management area 1800 is acquired by referring to the entry 1701 in which the value of the index 1702 of the call information management table 106 is i. Next, in step 2104, 1 is set to the loop control variable j. Then step 210
In step 5, the number of entries in the call information management area 1800 indicated by the address obtained in step 2103 is obtained.
If the value exceeds the acquired number of entries, the process proceeds to step 2109 to add 1 to the value of the variable i, and then returns to step 2102. If the value of j does not exceed the number of entries in the information management area 1800 in step 2105,
Proceed to step 2106. In step 2106, the call information management area 1800 indicated by the address obtained in step 2103 is referred to, and the value of the call state 1806 of the entry whose index 1802 is j is obtained. If the acquired value is NG, the process proceeds to step 2107,
If it is OK, the process proceeds to step 2108. Step 2
In 107, the index 1702 of the call information management table 106 obtains the value of the name 1703 of the call, and the index 1802 of the call information management area 1800 obtains the row number 1803 of the entry of j, the call type 1804, and the name of the call destination 1805. Then, the acquired value is displayed on the screen 2209. The display area 2201 displays a template file name 1703 and a line number 1803 in which an unresolved reference is described in the template file. The display area 2202 displays the name 1805 of the call destination. In the display area 2203, when the value of the call type 1804 is GENERATE, the character string “page generation” is displayed, and when the value is INCLUDE, the character string “include” is displayed, and the value is OBJEC.
In the case of T, a character string "object" is displayed. 221
A set of display items in the horizontal direction as shown in the example of No. 2 is called a display row. In FIG. 22, a display line 2204 indicates that “the template file TEMPLATE06.TMPL referred to by the page generation call described in the 15th line of the template file TEMPLATE02.TMPL does not exist”. The display line 2205 indicates “1 of the template file TEMPLATE02.TMPL”.
The processing object OBJECTB referenced by the processing object call described in the eighth line cannot be started. " The display line 2206 indicates “the template file TEMPLATE07.TMPL referred to by the include call described in the 21st line of the template file TEMPLATE03.TMPL.
Does not exist ". When the processing in step 2107 is completed, the value of the variable j is set to 1 in step 2108.
And returns to step 2105.
【0074】以上の処理により、使用するテンプレート
ファイルのスクリプトプログラムに記述されたスクリプ
トプログラムに含まれる未解決の呼び出しの情報を、画
面2211上に一覧表示することができる。With the above processing, information on unresolved calls included in the script program described in the script program of the template file to be used can be displayed on the screen 2211 as a list.
【0075】図23は、図12におけるステップ120
6のフローチャートを示したものである。FIG. 23 is a flowchart showing step 120 in FIG.
6 shows the flowchart of FIG.
【0076】まずステップ2301で、入力装置202
から、ステップ2107で表示した画面2209上の入
力域2207に、追加するファイルのパス名称を入力し
た後、表示領域2208または表示領域2209のいず
れかを前記画面指示装置で指示して、追加するファイル
がテンプレートファイルであるか処理オブジェクトモジ
ュールファイルであるかのファイル種別を指定し、さら
に表示領域2210を前記画面指示装置で指示する。ス
テップ2301で、表示領域2208を指示していた場
合はステップ2306に進み、表示領域2209を指示
していた場合はステップ2303に進む。ステップ23
06では、ステップ2301でパス名称を指定したファ
イルを、前記ディスク装置から複写してテンプレートフ
ァイル108として保存した後、ステップ2307に進
む。ステップ2307では操作を続行するか判定し、続
行する場合は再びステップ2301に戻り、続行しない
場合は処理を終了する。ステップ2303では、ステッ
プ2301でパス名称を指定したファイルを、前記ディ
スク装置から複写して処理オブジェクトモジュールファ
イル109として保存する。続いてステップ2304で
処理オブジェクトの名称を入力装置202から入力した
後、ステップ2305で処理オブジェクトの名称および
処理オブジェクトが実装されたモジュールファイルのパ
ス名称を、処理オブジェクト登録ファイル107に登録
する。その後ステップ2307に進む。First, in step 2301, the input device 202
Then, after inputting the path name of the file to be added in the input area 2207 on the screen 2209 displayed in step 2107, either the display area 2208 or the display area 2209 is designated by the screen pointing device, and the file to be added is designated. Is a template file or a processing object module file, and the display area 2210 is indicated by the screen instruction device. In step 2301, if the display area 2208 has been designated, the process proceeds to step 2306. If the display region 2209 has been designated, the process proceeds to step 2303. Step 23
In step 06, the file whose path name is specified in step 2301 is copied from the disk device and saved as the template file 108, and then the process proceeds to step 2307. In step 2307, it is determined whether to continue the operation. If the operation is to be continued, the process returns to step 2301. If not, the process ends. In step 2303, the file whose path name is specified in step 2301 is copied from the disk device and stored as the processing object module file 109. Subsequently, in step 2304, after inputting the name of the processing object from the input device 202, in step 2305, the name of the processing object and the path name of the module file in which the processing object is mounted are registered in the processing object registration file 107. Thereafter, the flow advances to step 2307.
【0077】以上の処理で、Webサーバアプリケーシ
ョン実行システム119を実行するために必要なテンプ
レートファイルと処理オブジェクトが開発用計算機10
1の前記ディスク装置に蓄えられたことになる。In the above processing, the template file and the processing object necessary for executing the Web server application execution system 119 are stored in the development computer 10.
1 is stored in the disk device.
【0078】図24は、図12におけるステップ120
7のフローチャートを示すものである。まず、ステップ
2401でループ制御変数iに1を設定する。ステップ
2402でiの値が呼び出し情報管理テーブル106の
エントリ数を超えているかを判定し、超えている場合は
処理を終了する。それ以外の場合はステップ2403に
進む。ステップ2403では、呼び出し情報管理テーブ
ル106のi番目のエントリ1701の種別1704の
値がTEMPLATEの場合はステップ2404に進
み、値がOBJECTの場合はステップ2405に進
む。FIG. 24 is a flowchart showing step 120 in FIG.
7 shows a flowchart of FIG. First, at step 2401, 1 is set to the loop control variable i. In step 2402, it is determined whether or not the value of i exceeds the number of entries in the call information management table 106, and if it exceeds, the process ends. Otherwise, the process proceeds to step 2403. In step 2403, if the value of the type 1704 of the i-th entry 1701 of the call information management table 106 is TEMPLATE, the process proceeds to step 2404, and if the value is OBJECT, the process proceeds to step 2405.
【0079】ステップ2404では、ステップ2403
で取得したエントリ1701中の項目1703に登録さ
れている名称を取得し、取得した名称のテンプレートフ
ァイル108をサーバ計算機102に転送し、前記ディ
スク装置上のファイルであるテンプレートファイル11
3として保存する。In step 2404, step 2403
The name registered in the item 1703 in the entry 1701 obtained in step 1 is obtained, the template file 108 having the obtained name is transferred to the server computer 102, and the template file 11 which is a file on the disk device is obtained.
Save as 3.
【0080】ステップ2405では、ステップ2403
で取得した呼び出し情報管理エントリ1701中の項目
1703に登録されている処理オブジェクトの名称を取
得し、処理オブジェクト登録ファイル107において、
処理オブジェクトの名称1703の値が、ステップ24
03で取得した名称と一致するエントリ701を取得
し、取得したエントリ701の項目704に登録されて
いるファイル名称を取得する。続いてステップ2406
では、ステップ2405で取得したファイル名称の処理
オブジェクトモジュールファイル109をサーバ計算機
102に転送し、前記ディスク装置上のファイルである
処理オブジェクトモジュールファイル114として保存
する。さらにステップ2407では、ステップ2405
で取得した処理オブジェクトの名称と、処理オブジェク
トモジュールファイル114の名称を、サーバ計算機1
02の前記ディスク装置上のファイルである処理オブジ
ェクト登録ファイル112のエントリとして登録する。In step 2405, step 2403
The name of the processing object registered in the item 1703 in the call information management entry 1701 acquired in the step is acquired, and in the processing object registration file 107,
If the value of the processing object name 1703 is
An entry 701 that matches the name acquired in step 03 is acquired, and a file name registered in the item 704 of the acquired entry 701 is acquired. Subsequently, step 2406
Then, the processing object module file 109 having the file name acquired in step 2405 is transferred to the server computer 102 and stored as the processing object module file 114 which is a file on the disk device. Further, in step 2407, step 2405
The name of the processing object acquired in step 1 and the name of the processing object module file 114 are
02 is registered as an entry of the processing object registration file 112 which is a file on the disk device.
【0081】以上により、サーバ計算機102上でWe
bサーバアプリケーション実行システム119を実行す
るために必要なテンプレートファイル113および処理
オブジェクトモジュールファイル114が、Webサー
バアプリケーション実行システム119が利用可能な形
態で、サーバ計算機102上の前記ディスク装置に蓄え
られる。As described above, the Web on the server computer 102
The template file 113 and the processing object module file 114 necessary for executing the b server application execution system 119 are stored in the disk device on the server computer 102 in a form that the Web server application execution system 119 can use.
【0082】本実施例で述べたWebサーバアプリケー
ション開発システム101は、Webサーバプログラム
110が稼働している計算機と同一の計算機上の前記デ
ィスク装置に、テンプレートファイル113および処理
オブジェクトモジュールファイル114を転送して蓄え
るものである。しかし、テンプレートファイル113お
よび処理オブジェクトモジュールファイル114を、ネ
ットワーク回線103を介してサーバ計算機102から
参照可能な別計算機上の前記ディスク装置に転送して蓄
えるとともに、処理オブジェクト登録ファイル112の
項目705に、処理オブジェクトモジュールファイル1
14を転送した計算機の名称を登録することにより、W
ebサーバアプリケーション実行システム119を本実
施例と同様の処理手順で実行することができる。The Web server application development system 101 described in the present embodiment transfers the template file 113 and the processing object module file 114 to the disk device on the same computer as the computer on which the Web server program 110 is running. It is something to store. However, the template file 113 and the processing object module file 114 are transferred and stored in the disk device on another computer which can be referred to from the server computer 102 via the network line 103, and are stored in the item 705 of the processing object registration file 112. Processing object module file 1
14 by registering the name of the computer to which
The web server application execution system 119 can be executed in the same processing procedure as in the present embodiment.
【0083】以上で、本発明の一形態であるWebサー
バアプリケーション開発システム116について説明し
た。The Web server application development system 116 according to one embodiment of the present invention has been described above.
【0084】[0084]
【発明の効果】本発明により、クライアント計算機から
の要求に応じてサーバ計算機上でプログラムを起動し、
前記プログラムに、Webページの表示情報を生成する
スクリプトプログラムを含むテンプレートファイルを読
み込ませ、前記スクリプトプログラムを解釈実行してW
ebページの表示情報を生成しサーバ計算機上で開示す
るWebサーバアプリケーション実行システムを開発す
る場合に、開発用計算機の記憶装置に蓄えたテンプレー
トファイルの中からテンプレートファイルを指定する
と、前記指定したテンプレートファイルの記述内容を解
析して、前記スクリプトプログラムにもとづいて参照さ
れるテンプレートファイルおよび処理プログラムの実装
ファイルをすべて特定し、前記サーバ計算機のファイル
システムに転送する。これにより、利用者が前記Web
サーバアプリケーション実行システムを容易に開発でき
る。According to the present invention, a program is started on a server computer in response to a request from a client computer,
The program reads a template file including a script program for generating display information of a Web page, interprets the script program, executes W
When developing a Web server application execution system for generating display information of an web page and disclosing it on a server computer, when a template file is specified from template files stored in a storage device of the development computer, the specified template file Is analyzed to identify all the template files referred to based on the script program and the implementation files of the processing programs, and transfer them to the file system of the server computer. This allows the user to access the Web
A server application execution system can be easily developed.
【図1】本発明の一実施例を実現するためのシステム構
成および動作環境である。FIG. 1 shows a system configuration and an operation environment for realizing an embodiment of the present invention.
【図2】本発明の一実施例を実現する計算機装置のハー
ドウェア構成である。FIG. 2 is a hardware configuration of a computer device that realizes an embodiment of the present invention.
【図3】Webブラウザシステム115およびWebサ
ーバアプリケーション実行システム119の処理のフロ
ーチャートである。FIG. 3 is a flowchart of a process of a Web browser system 115 and a Web server application execution system 119;
【図4】Webブラウザ画面の表示例である。FIG. 4 is a display example of a Web browser screen.
【図5】HTMLデータの例である。FIG. 5 is an example of HTML data.
【図6】HTMLデータ生成処理110のフローチャー
トである。FIG. 6 is a flowchart of an HTML data generation process 110.
【図7】処理オブジェクト登録ファイル107のデータ
構造である。FIG. 7 is a data structure of a processing object registration file 107;
【図8】テンプレートファイルの記述例その1である。FIG. 8 is a description example 1 of a template file.
【図9】テンプレートファイルの記述例その2である。FIG. 9 is a second description example of the template file.
【図10】テンプレートファイルから生成したHTML
データの例である。FIG. 10 HTML generated from a template file
It is an example of data.
【図11】HTMLデータ1000のWebブラウザに
よる表示例である。FIG. 11 is a display example of HTML data 1000 by a Web browser.
【図12】テンプレートファイルデバッグ処理105の
フローチャートである。FIG. 12 is a flowchart of a template file debugging process 105;
【図13】テンプレートおよび処理オブジェクトの呼び
出し関係を取得する処理1202のフローチャートであ
る。FIG. 13 is a flowchart of a process 1202 for acquiring a calling relationship between a template and a processing object.
【図14】処理1202の副フローチャートである。FIG. 14 is a sub-flowchart of the process 1202.
【図15】未解析テンプレートテーブル117のデータ
構造である。FIG. 15 is a data structure of an unanalyzed template table 117;
【図16】呼び出し情報一時保存テーブル118のデー
タ構造である。FIG. 16 is a data structure of a call information temporary storage table 118;
【図17】呼び出し情報管理テーブル106のデータ構
造である。17 shows a data structure of a call information management table 106. FIG.
【図18】呼び出し先情報管理領域1800のデータ構
造である。FIG. 18 is a data structure of a callee information management area 1800.
【図19】Webサーバアプリケーション実行システム
119を実行するために必要なテンプレートファイルお
よび処理オブジェクトの情報を表示する処理1203の
フローチャートである。FIG. 19 is a flowchart of a process 1203 for displaying information of a template file and a processing object necessary for executing the Web server application execution system 119.
【図20】Webサーバアプリケーション実行システム
119を実行するために必要なテンプレートファイルお
よび処理オブジェクトの情報の表示画面である。FIG. 20 is a display screen of a template file and information of a processing object necessary for executing the Web server application execution system 119;
【図21】未解決の呼び出し情報を表示する処理120
4のフローチャートである。FIG. 21 shows a process 120 for displaying unresolved call information.
4 is a flowchart of FIG.
【図22】未解決の呼び出し情報の表示画面である。FIG. 22 is a display screen of unresolved call information.
【図23】未解決の呼び出しを修正する処理1206の
フローチャートである。FIG. 23 is a flowchart of a process 1206 for correcting an unresolved call.
【図24】Webサーバアプリケーション実行システム
119を実行するために必要なテンプレートファイルお
よび処理オブジェクトが実装されたモジュールファイル
をサーバ計算機102の外部記憶装置に転送する処理1
207のフローチャートである。24 is a diagram illustrating a process 1 of transferring a template file necessary for executing the Web server application execution system 119 and a module file in which a processing object is mounted to an external storage device of the server computer 102.
207 is a flowchart of FIG.
101…開発用計算機、102…サーバ計算機、 10
3…ネットワーク、104…クライアント計算機、20
1…表示装置、202…入力装置、203…外部記憶装
置、204…中央処理装置、205…ネットワーク装
置、206…主記憶装置。101: development computer, 102: server computer, 10
3: Network, 104: Client computer, 20
1 display device, 202 input device, 203 external storage device, 204 central processing device, 205 network device, 206 main storage device.
Claims (4)
して動作するサーバアプリケーションの開発方法であっ
て、表示情報を生成するスクリプトプログラムを含むテ
ンプレートファイルをサーバ計算機上のファイルシステ
ムに蓄え、前記テンプレートファイルに含まれるスクリ
プトプログラムを解釈実行して動的に表示情報を生成
し、前記表示情報をクライアント計算機に転送して前記
クライアント計算機の出力装置に出力するサーバアプリ
ケーションを開発する場合に、(1)開発用計算機上の
ファイルシステムに前記テンプレートファイルを蓄えて
おき、(2)入力装置より、前記テンプレートファイル
を指定する情報を入力し、(3)前記指定したテンプレ
ートファイルを識別する情報を記憶装置に記録し、
(4)前記情報を記録したテンプレートファイルに含ま
れるスクリプトプログラムを解析して、前記スクリプト
プログラムの解釈実行時に参照される前記テンプレート
ファイルおよび操作される前記処理プログラムを識別
し、(5)前記参照されるテンプレートファイルおよび
前記操作される処理プログラムを識別する情報を前記記
憶装置に記録し、(6)前記ステップ(4)から(5)
までを繰り返し適用し、(7)前記記憶装置に記録され
ている情報にもとづいて、前記サーバアプリケーション
の実行時に参照される前記テンプレートファイルおよび
操作される前記処理プログラムを特定し、(8)前記特
定したテンプレートファイルおよび前記特定した処理プ
ログラムの実装を含むファイルを前記サーバ計算機また
は前記サーバ計算機から参照可能な計算機上のファイル
システムに蓄えることを特徴とするアプリケーション開
発方法。1. A method for developing a server application operating in conjunction with a Web server using a computer device, comprising: storing a template file including a script program for generating display information in a file system on the server computer; When developing a server application that interprets and executes a script program included in a template file to dynamically generate display information, transfers the display information to a client computer, and outputs the display information to an output device of the client computer, (1) The template file is stored in a file system on a development computer, (2) information for specifying the template file is input from an input device, and (3) information for identifying the specified template file is stored in a storage device. Recorded in
(4) analyzing the script program included in the template file in which the information is recorded, identifying the template file referred to when interpreting and executing the script program and the processing program to be operated; And (6) recording the template file and information identifying the operated processing program in the storage device.
(7) specifying the template file to be referred to when the server application is executed and the processing program to be operated, based on the information recorded in the storage device; and (8) the specifying An application development method, wherein a template file and a file containing the specified processing program are stored in the server computer or in a file system on a computer that can be referred to from the server computer.
した情報にもとづき、前記サーバアプリケーションの実
行時に参照される前記テンプレートファイルおよび操作
される前記処理プログラムを特定する情報を前記出力装
置に出力することを特徴とするアプリケーション開発方
法。2. The output device according to claim 1, wherein said output device outputs said template file referred to when said server application is executed and information specifying said processing program to be operated, based on said information identified in step (4). An application development method characterized by outputting to an application.
した、前記サーバアプリケーションの実行時に参照され
る前記テンプレートファイルのうち、前記開発用計算機
のファイルシステム上に蓄えられていない前記テンプレ
ートファイルを特定する情報を前記出力装置に出力する
ことを特徴とするアプリケーション開発方法。3. The template file which is not stored in the file system of the development computer among the template files referred to at the time of execution of the server application specified in step (7) of claim 1. An application development method, wherein information for specifying a file is output to the output device.
した、前記サーバアプリケーションの実行時に参照され
る前記処理プログラムのうち、前記処理プログラムを実
装したファイルが、前記開発用計算機のファイルシステ
ム上に、起動可能な形式で蓄えられていない前記処理プ
ログラムを特定する情報を前記出力装置に出力すること
を特徴とするアプリケーション開発方法。4. A file on which the processing program is mounted among the processing programs referred to at the time of execution of the server application specified in step (7) of claim 1 is a file of the development computer. An application development method, comprising: outputting, to the output device, information that specifies the processing program that is not stored in a system in a bootable form.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP9075021A JPH10269072A (en) | 1997-03-27 | 1997-03-27 | Application development method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP9075021A JPH10269072A (en) | 1997-03-27 | 1997-03-27 | Application development method |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH10269072A true JPH10269072A (en) | 1998-10-09 |
Family
ID=13564119
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP9075021A Pending JPH10269072A (en) | 1997-03-27 | 1997-03-27 | Application development method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH10269072A (en) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2001065376A1 (en) * | 2000-03-01 | 2001-09-07 | Flex-Firm Inc. | Contents providing method |
KR20010092718A (en) * | 2000-03-22 | 2001-10-26 | 임 데이비드 | Computer software collaboration platform |
WO2002044907A1 (en) * | 2000-11-29 | 2002-06-06 | Flex-Firm Inc. | Contents providing method |
JP2002202928A (en) * | 2000-12-28 | 2002-07-19 | Nec Corp | Application service oem system |
JP2005092868A (en) * | 2003-08-08 | 2005-04-07 | Open Circuit:Kk | Information providing device, format-disassembling device, information providing method and program |
US7647301B2 (en) | 2003-08-08 | 2010-01-12 | Open-Circuit, Ltd. | Information provision apparatus, format separation apparatus, information provision method and program |
-
1997
- 1997-03-27 JP JP9075021A patent/JPH10269072A/en active Pending
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2001065376A1 (en) * | 2000-03-01 | 2001-09-07 | Flex-Firm Inc. | Contents providing method |
WO2001065377A1 (en) * | 2000-03-01 | 2001-09-07 | Flex-Firm Inc. | Contents providing service |
KR20010092718A (en) * | 2000-03-22 | 2001-10-26 | 임 데이비드 | Computer software collaboration platform |
WO2002044907A1 (en) * | 2000-11-29 | 2002-06-06 | Flex-Firm Inc. | Contents providing method |
JP2002202928A (en) * | 2000-12-28 | 2002-07-19 | Nec Corp | Application service oem system |
JP2005092868A (en) * | 2003-08-08 | 2005-04-07 | Open Circuit:Kk | Information providing device, format-disassembling device, information providing method and program |
US7647301B2 (en) | 2003-08-08 | 2010-01-12 | Open-Circuit, Ltd. | Information provision apparatus, format separation apparatus, information provision method and program |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6260078B1 (en) | Using a distributed object system to find and download java-based applications | |
US7269792B2 (en) | System and method for generating high-function browser widgets with full addressability | |
US6772408B1 (en) | Event model using fixed-format text strings to express event actions | |
US6718364B2 (en) | Method and apparatus for expedited file downloads in an applet environment | |
US10235151B2 (en) | Optimized delivery of web application code | |
CN100559365C (en) | Method and apparatus for specifying asynchronous web services and method and apparatus for specifying logic for receiving callbacks | |
US6961929B1 (en) | Mechanism for automatic synchronization of scripting variables | |
US7437710B2 (en) | Annotation based development platform for stateful web services | |
US7356803B2 (en) | Annotation based development platform for asynchronous web services | |
US7010796B1 (en) | Methods and apparatus providing remote operation of an application programming interface | |
US7089330B1 (en) | System and method for transforming custom content generation tags associated with web pages | |
JP5010551B2 (en) | Server-side code generation from dynamic web page content files | |
US6363433B1 (en) | Method and mechanism for client-side handling of extensions originally written for servers | |
US20070174420A1 (en) | Caching of web service requests | |
US6941552B1 (en) | Method and apparatus to retain applet security privileges outside of the Java virtual machine | |
US6948120B1 (en) | Computer-implemented system and method for hosting design-time controls | |
JPH1091447A (en) | Catalogue device for promoting reusage of distributed object in distribution object system | |
WO2002029548A2 (en) | Http transaction monitor with capacity to replay in debugging session | |
WO2002029571A2 (en) | Http transaction monitor with edit and replay capacity | |
JP2000155686A (en) | Method and device for executing program in distribution system, computer readable storage medium with program execution procedure in distribution system stored therein and computer system | |
US20070198705A1 (en) | System and method for integrating resources in a network | |
WO2002029641A2 (en) | Http transaction monitor with replay capacity | |
JP4965014B2 (en) | Data object transfer method and transfer device, activation method and activation device in computer communication network | |
JP2001512868A (en) | Method and apparatus for generating information statically and dynamically on a user interface | |
JPH10269072A (en) | Application development method |