JP2014059699A - Demo application generation system and demo application generation program - Google Patents
Demo application generation system and demo application generation program Download PDFInfo
- Publication number
- JP2014059699A JP2014059699A JP2012204076A JP2012204076A JP2014059699A JP 2014059699 A JP2014059699 A JP 2014059699A JP 2012204076 A JP2012204076 A JP 2012204076A JP 2012204076 A JP2012204076 A JP 2012204076A JP 2014059699 A JP2014059699 A JP 2014059699A
- Authority
- JP
- Japan
- Prior art keywords
- client terminal
- html data
- path
- demo
- output
- 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
Images
Landscapes
- Information Transfer Between Computers (AREA)
- Stored Programmes (AREA)
Abstract
【課題】Webアプリケーションについて、スタンドアロン環境で動作可能なデモアプリケーションを容易に生成するデモアプリケーション生成システムを提供する。
【解決手段】Webアプリケーションプログラムがクライアント端末200に対して画面を生成して出力する際に出力バッファからHTMLデータ102を取得し、HTMLデータ102に含まれるURL表現もしくはパスをクライアント端末200上の所定のディレクトリを基準とした第1のローカルパスにそれぞれ変換し、またHTMLデータ102の所在場所のパスを第2のローカルパスに変換し、クライアント端末200上の第2のローカルパスにHTMLデータ102からなるHTMLファイルを出力し、さらにHTMLデータ102が参照するリソース104を含む各ファイルについてクライアント端末200上の対応する第1のローカルパスにそれぞれ出力もしくはコピーする。
【選択図】図1A demo application generation system for easily generating a demo application operable in a stand-alone environment for a Web application is provided.
When a Web application program generates and outputs a screen to a client terminal 200, HTML data 102 is acquired from an output buffer, and a URL expression or path included in the HTML data 102 is specified on the client terminal 200. Are converted into first local paths based on the directory of the client, and the path of the location of the HTML data 102 is converted into a second local path, and the second local path on the client terminal 200 is converted from the HTML data 102 to the second local path. The HTML file is output, and each file including the resource 104 referred to by the HTML data 102 is output or copied to the corresponding first local path on the client terminal 200.
[Selection] Figure 1
Description
本発明は、Webアプリケーションプログラムの開発技術に関し、特に、スタンドアロン環境で動作するデモ用アプリケーションを生成するデモアプリケーション生成システムおよびデモアプリケーション生成プログラムに適用して有効な技術に関するものである。 The present invention relates to a Web application program development technique, and more particularly to a technique that is effective when applied to a demo application generation system and a demo application generation program that generate a demo application that operates in a stand-alone environment.
Webアプリケーションプログラムによるシステムやサービスは、主に、Webサーバ上で稼働するアプリケーションプログラムに対して、ユーザがクライアント端末上で稼働するWebブラウザ等を利用してアクセスすることで実行される。ユーザに対しては、Webブラウザを介してユーザインタフェースが提供される。 A system or service based on a Web application program is mainly executed when a user accesses an application program operating on a Web server using a Web browser operating on a client terminal. A user interface is provided to the user via a Web browser.
このユーザインタフェース(画面の内容や画面遷移等)を簡易的に再現することで、他の顧客やシステムの利用者等に対して、システムやサービスの機能、動作や、画面レイアウト、処理手順等を説明したり内容を確認したりするためのデモ用のアプリケーションプログラムやプロトタイプ等(以下では、これらを総称して“デモアプリケーション”と記載する場合がある)が必要とされる場合がある。Webアプリケーションによるサービスや機能などを動作させるためには、本来、Webサーバとクライアント端末がネットワークを介して接続される構成が必要となるところ、デモを実行するためにそのような構成を用意できない場合も多い。 By simply reproducing this user interface (screen contents, screen transitions, etc.), the functions, operations, screen layout, processing procedures, etc. of the system and services can be communicated to other customers and system users. In some cases, a demonstration application program, prototype, or the like (which may be collectively referred to as “demo application” hereinafter) for explaining or confirming contents may be required. In order to operate a service or a function by a Web application, a configuration in which a Web server and a client terminal are originally connected via a network is necessary, but such a configuration cannot be prepared for executing a demonstration. There are also many.
これに対して、例えば、デモ用のクライアント端末にWebサーバプログラムを導入してローカルでWebサーバ機能を稼働させることで、クライアント端末だけのスタンドアロン環境でWebアプリケーションを実行させる構成としてデモ環境を実現する場合がある。しかしながら、このような構成ではクライアント端末の負担が大きくなってしまう。一方で、クライアント端末だけのスタンドアロン環境で動作可能なアプリケーションを作成して、デモに用いたりプロトタイプとしたりすることも一般的に行われる。例えば、クライアント端末上で、本来のWebアプリケーションプログラムとしても展開可能なアプリケーションプログラムを直接開発することも可能である(例えば非特許文献1など参照)。 On the other hand, for example, by introducing a Web server program to a demonstration client terminal and operating the Web server function locally, the demonstration environment is realized as a configuration in which the Web application is executed in a stand-alone environment of only the client terminal. There is a case. However, such a configuration increases the burden on the client terminal. On the other hand, it is also common to create an application that can operate in a stand-alone environment with only a client terminal, and use it for a demonstration or as a prototype. For example, it is possible to directly develop an application program that can be deployed as an original Web application program on a client terminal (see, for example, Non-Patent Document 1).
また、本来のWebアプリケーションプログラムとは別に、HTTP(HyperText Transfer Protocol)を利用せずにスタンドアロン環境でローカルファイルを直接アクセスすることで動作可能なデモアプリケーションを、本来のWebアプリケーションに基づいて作成することも行われる。 In addition to the original Web application program, a demo application that can operate by directly accessing a local file in a stand-alone environment without using HTTP (HyperText Transfer Protocol) may be created based on the original Web application. Done.
例えば、まず、クライアント端末のWebブラウザを介してWebサーバにアクセスし、本来のWebアプリケーションプログラムを一度動作させて、Webブラウザ上に画面を表示させる。このとき、Webブラウザの機能によりHTML(HyperText Markup Language)のソースコードを表示し、この中でWebサーバ上のファイルやリソースを参照しているパスを、クライアント端末のローカル環境での対応するフォルダやディレクトリを参照するパスに変換した上で、HTMLファイルとしてローカルに保存する。また、参照するリソース自体についてもそれぞれ必要に応じて上記と同様にパスを変換する。 For example, first, a Web server is accessed via a Web browser of a client terminal, an original Web application program is once operated, and a screen is displayed on the Web browser. At this time, the source code of HTML (HyperText Markup Language) is displayed by the function of the Web browser, and the path referring to the file or resource on the Web server is displayed in the folder corresponding to the local environment of the client terminal. After converting the path to refer to the directory, it is stored locally as an HTML file. Also, for the resources to be referred to, the paths are converted in the same manner as described above as necessary.
さらに、これらのリソースのファイルをWebサーバから取得してクライアント端末のローカルの所定のパスに保存する。このような手順で、クライアント端末側にHTMLファイルや必要なリソースを配置するという作業を、Webアプリケーションでの必要な画面遷移の各画面で行うことで、クライアント端末のスタンドアロン環境で動作するデモアプリケーションを作成することが可能である。 Further, these resource files are acquired from the Web server and stored in a predetermined local path of the client terminal. A demo application that operates in a stand-alone environment of the client terminal by performing the procedure of allocating the HTML file and necessary resources on the client terminal side on each screen of the necessary screen transition in the Web application in such a procedure. It is possible to create.
例えば、既に開発されているWebアプリケーションについて、上述した手法を用いて、画面遷移の各画面について出力されたHTMLのソースコードについてそれぞれパス等を変換した上でローカルにファイルやリソース等を保存することで、クライアント端末等のWebブラウザでのスタンドアロン環境で動作するデモアプリケーションを作成することが可能である。しかしながら、上述した手法では作成のための人手による処理や手順が非常に多く煩雑であり、また、パス等の変換に漏れなどが生じる可能性も高い。 For example, for a web application that has already been developed, using the method described above, the path, etc., of the HTML source code output for each screen transition screen is converted and the files and resources are stored locally. Thus, it is possible to create a demo application that operates in a stand-alone environment in a Web browser such as a client terminal. However, the above-described method involves a lot of manual processes and procedures for creation, and is highly likely to cause leakage in conversion of paths and the like.
そこで本発明の目的は、動作可能な状態にあるWebアプリケーションについて、スタンドアロン環境で動作可能なデモアプリケーションを容易に生成するデモアプリケーション生成システムおよびデモアプリケーション生成プログラムを提供することにある。本発明の前記ならびにその他の目的と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。 Therefore, an object of the present invention is to provide a demo application generation system and a demo application generation program that easily generate a demo application operable in a stand-alone environment for a Web application in an operable state. The above and other objects and novel features of the present invention will be apparent from the description of this specification and the accompanying drawings.
本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、以下のとおりである。 Of the inventions disclosed in this application, the outline of typical ones will be briefly described as follows.
本発明の代表的な実施の形態によるデモアプリケーション生成システムは、クライアント端末上からの要求を受けて対応するビジネスロジックを呼び出し、前記ビジネスロジックによる処理結果を前記クライアント端末に対して応答して画面表示させることで前記クライアント端末に対してサービスを提供するWebアプリケーションプログラムを稼働させるとともに、前記Webアプリケーションプログラムの所定の画面遷移について前記クライアント端末で単独で再現可能とするデモアプリケーションを生成するデモアプリケーション生成システムであって、以下の特徴を有するものである。 A demo application generation system according to a representative embodiment of the present invention calls a corresponding business logic in response to a request from a client terminal, and displays a processing result by the business logic in response to the client terminal. A demo application generation system that operates a Web application program that provides a service to the client terminal and generates a demo application that can reproduce the predetermined screen transition of the Web application program independently on the client terminal. However, it has the following characteristics.
すなわち、デモアプリケーション生成システムは、前記Webアプリケーションプログラムが前記クライアント端末に対して応答する画面を生成して出力する際に、生成された前記画面のHTMLデータを保持する出力バッファから前記HTMLデータを取得し、前記HTMLデータに含まれるURL表現もしくはパスを、前記クライアント端末上の所定のディレクトリを基準とした第1のローカルパスにそれぞれ変換し、また、前記HTMLデータの所在場所のパスを前記所定のディレクトリを基準とした第2のローカルパスに変換する。 That is, when the Web application program generates and outputs a screen that responds to the client terminal, the demo application generation system acquires the HTML data from an output buffer that holds the generated HTML data of the screen. The URL expression or path included in the HTML data is converted into a first local path based on a predetermined directory on the client terminal, and the path of the location of the HTML data is converted to the predetermined path. Convert to a second local path relative to the directory.
さらに、前記デモアプリケーションとして、前記クライアント端末上の前記第2のローカルパスにより示される場所に前記HTMLデータからなるHTMLファイルを出力し、さらに前記HTMLデータが参照するリソースを含む各ファイルについて、前記クライアント端末上の対応する前記第1のローカルパスにより示される場所にそれぞれ出力もしくはコピーすることを特徴とするものである。 Further, as the demonstration application, an HTML file composed of the HTML data is output to a location indicated by the second local path on the client terminal, and the client includes a resource including a resource referred to by the HTML data. It is characterized in that it is output or copied to the location indicated by the corresponding first local path on the terminal.
また、本発明は、コンピュータを上記のようなデモアプリケーション生成システムとして動作させるプログラムにも適用することができる。 The present invention can also be applied to a program that causes a computer to operate as a demo application generation system as described above.
本願において開示される発明のうち、代表的なものによって得られる効果を簡単に説明すれば以下のとおりである。 Among the inventions disclosed in the present application, effects obtained by typical ones will be briefly described as follows.
すなわち、本発明の代表的な実施の形態によれば、動作可能な状態にあるWebアプリケーションについて、スタンドアロン環境で動作可能なデモアプリケーションを容易に生成することが可能となる。 That is, according to the exemplary embodiment of the present invention, it is possible to easily generate a demo application that can operate in a stand-alone environment for a Web application that is in an operable state.
以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための全図において、同一部には原則として同一の符号を付し、その繰り返しの説明は省略する。 Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. Note that components having the same function are denoted by the same reference symbols throughout the drawings for describing the embodiment, and the repetitive description thereof will be omitted.
<概要>
本発明の一実施の形態であるデモアプリケーション生成システムは、例えば、Webサーバ上で動作し、業務データベースにアクセスするいわゆるCRUD(Create,Read,Update,Delete)型のWebアプリケーションプログラムの画面遷移について、クライアント端末のWebブラウザ等のスタンドアロン環境で単独で再現可能なデモアプリケーションを容易に生成することを可能とするWebサーバシステムである。
<Overview>
The demo application generation system according to an embodiment of the present invention is, for example, a screen transition of a so-called CRUD (Create, Read, Update, Delete) type Web application program that operates on a Web server and accesses a business database. This is a Web server system that can easily generate a demo application that can be reproduced independently in a stand-alone environment such as a Web browser of a client terminal.
本実施の形態では、例えば、CRUD型のWebアプリケーションプログラムにおいて、画面上の入出力項目(例えば、業務データベースからデータを取得するための検索条件の内容を指定する入力項目や、検索結果の内容を表示する出力項目)に係る内容を表示するために、標準的なコントロールオブジェクト(以下では単に“コントロール”と記載する場合がある)を直接用いるのではなく、後述するような、表示名称とコントロールの設定内容や制御処理および説明テキストの各データが一体となったパーツオブジェクトを用いるものとする。 In the present embodiment, for example, in a CRUD type Web application program, input / output items on the screen (for example, input items for specifying the contents of search conditions for acquiring data from a business database and contents of search results are displayed. Instead of directly using a standard control object (hereinafter simply referred to as “control”) to display the content related to the output item to be displayed), the display name and control as described later are used. It is assumed that a part object in which data of setting contents, control processing, and explanatory text are integrated is used.
このパーツオブジェクトは、画面上にどのようなコントロールを表示するか(例えば、テキストコントロールのみ、(テキストコントロールと)入力フィールド、(テキストコントロールと)ドロップダウンリスト、…等)をパラメータとして指定することが可能である。また、コントロールの属性値(例えば、テキストコントロールに表示されるテキストの内容や、入力フィールドの長さ等)や、制御情報(例えば、入力データの妥当性チェックをどのように行うか等)などについても指定することができるものとし、指定された内容に従ってコントロールを表示および制御するよう実装されている。 This part object can specify what kind of control to display on the screen (for example, text control only, (text control and) input field, (text control and) drop-down list, etc.) as a parameter. Is possible. Control attribute values (for example, text content displayed in text controls, input field length, etc.), control information (for example, how to check validity of input data, etc.) It is also implemented to display and control controls according to specified content.
換言すると、パーツオブジェクトは、入力フィールドやドロップダウンリスト、テキストなどの、入出力項目のデータを取り扱う入出力コントロールと、入出力項目の名称等を表示するテキストコントロールであるラベルコントロールとを組み合わせて表示するよう構成されており、これらのコントロールの出力のパターンを指定可能であるという構成を有する。 In other words, the part object is displayed by combining an input / output control that handles input / output item data such as an input field, drop-down list, and text, and a label control that is a text control that displays the name of the input / output item. In this configuration, the output pattern of these controls can be specified.
このとき、ラベルコントロールと入出力コントロールとを一括して整合性を持った形でコントロールの幅等の属性値を調整することができるため、ユーザが個別に整合性を持つように属性値等を指定するという煩雑な処理の必要がなく、表示されるコントロールの外観の調整を行うことができる。この調整には、例えば、表示可能領域に対して、ラベルコントロールが意図しない箇所で改行されたり、逆に意図した箇所で改行されなかったり等を防止するよう、ラベルコントロールと入出力コントロールの表示幅を一体的に調整することなどが含まれる。 At this time, the attribute value such as the width of the control can be adjusted in a consistent manner for the label control and the input / output control at a time, so the attribute value etc. There is no need for a complicated process of designating, and the appearance of the displayed control can be adjusted. For this adjustment, for example, the display width of the label control and the input / output control is prevented so that the label control is not line-breaked at an unintended location or is not line-breaked at the intended location. For example, to adjust the unity.
本実施の形態では、Webアプリケーションプログラムは、画面上の各入出力項目に係る内容について当該パーツオブジェクトを使用して表示するものとしてソースコードが作成されているものとする。すなわち、パーツオブジェクトを使用して間接的にコントロールを表示する(パーツオブジェクトがWebサーバシステム上での実行時に対象のコントロールを表示するHTMLデータやスクリプト等を動的に生成する)。また、アクセスする対象のデータベースの各カラムと画面上の入出力項目とのマッピングに係る情報は、データベースの各カラムの識別情報(例えばカラム名称)と、対応するパーツオブジェクトの識別情報(例えばHTMLのID属性値)とのマッピング情報としてソースコード上に保持する。 In the present embodiment, it is assumed that the source code is created so that the Web application program displays the contents relating to each input / output item on the screen using the part object. That is, the control is indirectly displayed using the part object (the HTML data or the script that displays the target control when the part object is executed on the Web server system is dynamically generated). Information relating to the mapping between each column of the database to be accessed and input / output items on the screen includes identification information (for example, column name) of each column of the database and identification information (for example, HTML of the corresponding part object). It is stored on the source code as mapping information with (ID attribute value).
さらに、本実施の形態では、各パーツオブジェクトにおいてラベルコントロールに表示するテキスト、および入出力コントロールの属性値や制御処理に係る情報などについて、後述するように、一部を除き、ソースコード上で直接指定するのではなく、パーツオブジェクトのIDもしくは対応するデータベースのカラム名称等の識別情報と関連付けられた辞書データとして外出しにして保持するよう構成する。これにより、いったん生成されたソースコードに対して変更を加えずに、画面の表示方式や、パーツオブジェクトにより画面上に表示されるコントロールの外観や属性等を動的に変更可能とする。 Furthermore, in this embodiment, as will be described later, the text displayed on the label control in each part object, the attribute value of the input / output control and the information related to the control processing, etc. are directly directly on the source code. Instead of specifying, it is configured to be stored as dictionary data associated with identification information such as part object ID or corresponding database column name. This makes it possible to dynamically change the display method of the screen and the appearance and attributes of the controls displayed on the screen by the part object without changing the source code once generated.
また、上記の辞書データへのアクセスなど、パーツオブジェクトが共通して有する機能を継承元のクラスに実装しておき、開発時には当該クラスを継承して各パーツオブジェクトを作成するようにすることで、開発者がパーツオブジェクトの機能を都度実装することなくWebアプリケーションプログラムを開発できるようにしている。 In addition, by implementing the functions that part objects have in common, such as access to the above dictionary data, in the inheritance source class, during development, each part object is created by inheriting the class, A developer can develop a Web application program without implementing the function of a part object each time.
ここで、本実施の形態のデモアプリケーション生成システムは、Webアプリケーションプログラムについて、ユーザが実際に動作させて画面遷移させると、Webサーバプログラムによって各画面が生成されて出力されるタイミングで、Webサーバプログラムの出力バッファに蓄積された画面のHTMLデータに基づいて、クライアント端末のローカルで動作可能なようにパス等を変換したローカルデータを自動的に生成する。このローカルデータを、必要なリソースと合わせてクライアント端末の所定のフォルダやディレクトリ(Webサーバ上と同じ階層構成を有する)に送信して格納する。 Here, the demo application generation system according to the present embodiment is configured such that when the user actually operates the web application program to change the screen, the web server program generates and outputs each screen by the web server program. Based on the HTML data of the screen stored in the output buffer, local data obtained by converting the path and the like so that the client terminal can operate locally is automatically generated. This local data is transmitted and stored together with necessary resources to a predetermined folder or directory (having the same hierarchical structure as that on the Web server) of the client terminal.
このような手法により、実行したWebアプリケーションの画面遷移に対応した、クライアント端末上で単独で動作するデモアプリケーションを自動的に生成することができる。なお、このような手法によるデモアプリケーションの生成は、上述したように、従来は主にユーザが画面毎に手作業により行なっていた。これに対し、本実施の形態では、このようなデモアプリケーションの生成処理を自動的に行うことができ、ユーザの負荷を大幅に低減させることができる。 By such a method, a demo application that operates independently on the client terminal and that corresponds to the screen transition of the executed Web application can be automatically generated. In addition, as described above, the generation of the demo application by such a method has been conventionally performed manually by the user manually for each screen. On the other hand, in the present embodiment, such a demo application generation process can be automatically performed, and the load on the user can be greatly reduced.
なお、本実施の形態では、Webアプリケーションプログラムを上記のパーツオブジェクトを用いて開発するものとしているが、本実施の形態では、上述したように、出力バッファに蓄積された画面のHTMLデータに基づいてデモアプリケーションを生成するため、出力バッファからHTMLデータを取得する処理を実装することが可能のものであれば、特に上記のパーツオブジェクトを用いたものに限られず、どのようなWebアプリケーションプログラムも対象とすることができる。 In this embodiment, the Web application program is developed using the above part object. However, in this embodiment, as described above, the Web application program is based on the HTML data of the screen accumulated in the output buffer. As long as it is possible to implement a process for acquiring HTML data from the output buffer in order to generate a demo application, it is not limited to those using the above part object, and any Web application program is also targeted. can do.
<システム構成>
図1は、本発明の一実施の形態であるデモアプリケーション生成システムの構成例について概要を示した図である。デモアプリケーション生成システム100は、例えば、サーバ機器やクラウドコンピューティング環境での仮想サーバなどのコンピュータ機器により構成され、図示しないOSやDBMS(DataBase Management System)、Webサーバプログラムなどのミドルウェアに加え、ユーザが作成したソースコード101もしくはそこから呼び出されるライブラリやオブジェクト等のソフトウェアプログラムにより実装される要求処理部110、辞書処理部120、ビジネスロジック130、および応答処理部140などの各部を有するWebサーバシステムである。
<System configuration>
FIG. 1 is a diagram showing an outline of a configuration example of a demo application generation system according to an embodiment of the present invention. The demo
また、デモアプリケーション生成システム100は、インターネット等のネットワーク300を介して接続されるクライアント端末200上の図示しないWebブラウザ等のプログラムからの要求に対して、ビジネスロジック130により業務データベース(DB)131にアクセスして処理を行い、クライアント端末200に対してHTMLデータ102を出力して応答することによってサービスを提供する。
In addition, the demo
要求処理部110は、クライアント端末200からの要求を受けて、対応するソースコード101に基づいてコンテンツ(ビジネスロジック130)を呼び出す機能を有し、ソフトウェアプログラムにより実装されるID変換部111、および入力チェック部112などの各部を有する。ID変換部111は、要求メッセージに含まれる画面上の入力項目に対応する、ソースコード101に記載されたパーツオブジェクト103の識別情報(ID)を、ソースコード101に保持されたマッピング情報に基づいて、入出力項目に対応する業務DB131のカラムの識別情報(カラム名称等)に変換する機能を有する。
The
このマッピング情報は、画面上に表示されるパーツオブジェクト103の識別情報(例えばHTMLのID属性値)と、アクセスする対象の業務DB131の各カラムの識別情報(カラム名等)との対応を保持する。これにより、後述するように、ソースコード101において画面上に配置された各パーツオブジェクト103は、まずID変換部111によって自身のIDに対応するカラム名称を取得した後、当該カラム名称をキーとして、業務DB131へのアクセスや、後述する辞書テーブル121からの辞書データの取得等の後続の処理を行うことができる。
This mapping information holds the correspondence between the identification information (for example, HTML ID attribute value) of the
従って、クライアント端末200に応答するHTMLデータ102上では、各パーツオブジェクト103(によって表示されるコントロール)において、対応する業務DB131のカラム名称をキー等の情報として直接指定する必要がなく、自身のIDをキー等の情報とすることができるため、実際のカラム名称をHTMLデータ102上から隠蔽してセキュリティの強化を図ることが可能である。なお、このような変換を行わず、HTMLデータ102上で各パーツオブジェクト103において対応する業務DB131のカラム名称をキー等の情報として直接指定するようにしてもよい。
Therefore, on the
入力チェック部112は、要求メッセージに含まれる、画面上のパーツオブジェクト103を介して指定された入力項目のデータの内容について一般的な妥当性チェックを行う機能を有する。妥当性チェックの種類としては、例えば、文字数や文字タイプ(数字やアルファベット、かな、全半角など)、使用可能文字の制限、日時や各種コード値などのフォーマットチェックなどが考えられる。
The
妥当性チェックの内容は、例えば、システム(特にクライアント端末200)の言語環境によって異なるものとなり得る。従って、本実施の形態では、入力チェック部112において言語毎のバリエーションも考慮した複数パターンの妥当性チェックのタイプを実装しておき、対象の入力項目についていずれのタイプを用いるかを、言語環境に応じて選択・決定するものとする。ここでは、後述する辞書処理部120を介して、対象の言語の辞書テーブル121にアクセスし、対象の入力項目に対応する辞書データの内容から妥当性チェックのタイプの情報を取得して決定するものとする。
The content of the validity check can vary depending on the language environment of the system (particularly the client terminal 200), for example. Therefore, in the present embodiment, the
辞書処理部120は、データベースやファイルテーブル等により実装される辞書テーブル121を有し、例えば、辞書テーブル121から、指定されたキー(本実施の形態では、例えば、対象の入出力項目(パーツオブジェクト103)に対応する業務DB131のカラム名称)に対する辞書データを取得して出力する機能を有する。辞書テーブル121は、例えば、対象となる言語環境やWebアプリケーションプログラムの業務種別等のカテゴリー毎に複数用意し、選択して使用するようにしてもよい。
The
辞書テーブル121における辞書データの内容やフォーマットは特に限定されない。本実施の形態では、簡易な手法として、例えば後述するように、画面を介して業務DB131の対象のカラムへのデータの入出力処理を行うのに必要な種々のデータ(入出力を行うためのパーツオブジェクト103の属性値や制御のために必要なパラメータ等)を所定の順序でカンマ区切り等により指定するものとする。
The contents and format of the dictionary data in the dictionary table 121 are not particularly limited. In the present embodiment, as a simple method, for example, as will be described later, various data necessary for performing input / output processing of data to a target column of the
具体的には、例えば、対応するパーツオブジェクト103においてラベルコントロールを表示する際の内容である表示名称や、入出力コントロールとして入力フィールドを表示する際の長さ(文字数)、妥当性チェックの種別やIMEのモードなどの制御処理の内容に係る指定、出力データをテーブルに一覧表示する際の短縮されたテキストである短縮表示名称および表示幅、ドロップダウンリスト等により表示する際の値リストなどが考えられる。
Specifically, for example, the display name that is the content when displaying the label control in the
なお、図1の例では、辞書処理部120をデモアプリケーション生成システム100上に実装する構成としているが、これに限らず、デモアプリケーション生成システム100とは別のサーバ機器上に独立して構築してもよい。
In the example of FIG. 1, the
ビジネスロジック130は、業務DB131を利用して業務アプリケーションとしての処理を行う機能を有する。本実施の形態では、上述したように、業務DB131に対するCRUD型アプリケーションを対象とするが、特にこれに限定されるものではない。
The
応答処理部140は、ソースコード101の内容に基づくビジネスロジック130等の処理結果に基づいてHTMLデータ102を生成し、クライアント端末200に対して応答する機能を有し、ソフトウェアプログラムにより実装される表示調整部141、表示部142、およびローカルデータ生成部143などの各部を有する。
The
表示調整部141は、応答に含まれる各出力項目について、対応するパーツオブジェクト103を表示するためのラベルコントロールのテキストや入出力コントロールの属性値、制御情報などのパラメータ値を取得する。ここでは、辞書処理部120を介して対応する言語環境等の辞書テーブル121にアクセスして、対象の出力項目(パーツオブジェクト103)に対応する辞書データから表示名称や属性値等の各種パラメータ値を取得する。
The
表示部142は、表示調整部141が取得した、各パーツオブジェクトについてのラベルコントロールのテキストや入出力コントロールの属性値、制御情報などのパラメータ値に基づいて、各パーツオブジェクトにより表示されるコントロールが配置された応答画面のHTMLデータ102を生成する機能を有する。
The
ローカルデータ生成部143は、表示部142により生成されたHTMLデータ102に基づいてローカルデータ105を生成し、必要なリソース104と合わせてクライアント端末200の所定のフォルダやディレクトリに送信して格納することで、クライアント端末200上にデモアプリケーションを生成する機能を有する。
The local
具体的には、例えばまず、図示しないWebサーバプログラムの出力バッファに蓄積されたHTMLデータ102について、クライアント端末200に対して出力される際にこれを取得する。このタイミングは具体的には例えば出力する“直前”であり、本実施の形態では、画面に表示各するコントロールはパーツオブジェクト103を用いて表示するものとしているため、例えば、パーツオブジェクト103を表示(HTMLを生成)して画面を生成するための共通のクラス等において、最後のHTMLタグ(“</html>”)を書き出す際に所定のメソッド等を呼び出すようにしてもよい。
Specifically, for example, when the
また、本実施の形態と異なり、画面表示のためにパーツオブジェクト103を用いない場合であっても、例えば、各画面共通で最後に所定のメソッド等を呼び出すようなコードを1行追加することで同様の処理を行なうようにしてもよい。また、終了時のトレースポイントやログ出力などのデバッグコードが呼び出された際に実行するなど、画面生成が完了する際のイベントをキャッチすることができる手段であれば適宜利用することができる。
Unlike the present embodiment, even when the
画面生成完了時に出力バッファから取得したHTMLデータ102に対して、ローカルデータ生成部143は、さらに、当該HTMLデータ102についてクライアント端末200のスタンドアロン環境で動作可能となるように、後述するようなパス変換等を行なってローカルデータ105を生成する。HTMLデータ102が参照する画像データや他のスクリプトファイル等の必要なリソース104についても同様にパス変換等を行う。生成したローカルデータ105および必要なリソース104はクライアント端末200の所定のフォルダやディレクトリに送信して格納する。
For the
クライアント端末200では、Webブラウザ等を利用してローカルの所定のフォルダやディレクトリに格納されたローカルデータ105および必要なリソース104からなるデモアプリケーションにアクセスすることで、Webサーバを必要とせずにスタンドアロン環境でWebアプリケーションの画面内容や画面遷移を再現することが可能となる。
The
<Webアプリケーションの画面表示処理>
図2は、CRUD型アプリケーションにおいてパーツオブジェクト103により対応するカラムの入出力項目を画面上に表示する際の処理の例について概要を示した図である。図2の例では、業務DB131からデータを読み出す際の検索条件を入力する画面において、“顧客名”を指定する入力フィールドを表示する場合の例を抜粋して示している。
<Web application screen display processing>
FIG. 2 is a diagram showing an outline of an example of processing when the input / output items of the corresponding column are displayed on the screen by the
図の上段に示しているWebアプリケーションプログラムのソースコード101では、“顧客名”を指定する入力フィールドを表示するためにパーツオブジェクト103を呼び出している。具体的には、まず、ソースコード101上に保持されているマッピング情報(図2の例では、array()により対応関係を保持している)からID(“A01”)に対応するカラム名称(“customer_name”)の情報を取得する。
In the
その後、例えば、パーツオブジェクト103の機能を実装したクラスから継承したサブクラスについてインスタンスを作成する形で呼び出す(“CF_itemDic();”)。図2の例では、パラメータの一部として、呼び出す辞書テーブル121のタイプ(“共通辞書”)、表示する入出力コントロールのタイプ(“入力フィールド”)、HTMLのID属性値(“A01”)などを指定して呼び出した状態を簡略化して示している。なお、HTMLのID属性値(“A01”)は、マッピング情報によりカラム名称(“customer_name”)に動的に変換される。
Thereafter, for example, a subclass inherited from a class that implements the function of the
このようなコードにより呼び出されたパーツオブジェクト103は、データとして、少なくとも表示名であるラベル(ラベルコントロールのテキスト)の論理要素と、表示する入出力コントロールの内容に係る論理要素についての情報を保持する。さらに図2に示すように、内容を説明するテキスト等からなるコメントの論理要素について情報を保持していてもよい。図2の例では、パーツオブジェクト103の上記の3つの論理要素のうち、コントロールについては、ソースコード101において“入力フィールド”がパラメータとして指定されているため、これが設定される。
The
呼び出されたパーツオブジェクト103は、さらに、所定の関数やメソッド等により辞書処理部120を介して対象の辞書テーブル121(“共通辞書”)にアクセスして、カラム名称(“customer_name”)に対応する辞書データ(本実施の形態では“顧客名”、40文字、20文字、…などの複数の値の集合)を取得する。
The called
図2の例では、辞書テーブル121の辞書データとして、上から順に、名称(ラベルコントロールに表示するテキスト)、入力フィールドの場合の長さ(半角時の文字数)、入力フィールドの場合の最大長さ(文字数)、入力データの妥当性チェックのタイプ、IMEの初期モード、説明コメント、テーブルに一覧表示する場合のテキスト(表示名)、およびテーブルに一覧表示する場合の表示幅(ピクセル値)などの情報を保持するものとしている。なお、これらの辞書データを取得する際の出力フォーマットとしては、例えば、これらの値をカンマ等で区切った一連の文字列としてもよいし、連想配列等のアクセスしやすいデータとしてもよい。 In the example of FIG. 2, as dictionary data in the dictionary table 121, in order from the top, the name (text to be displayed on the label control), the length in the case of the input field (number of characters in half-width), and the maximum length in the case of the input field (Number of characters), validation type of input data, initial mode of IME, explanatory comment, text (display name) for list display in table, display width (pixel value) for list display in table, etc. Information shall be retained. As an output format when acquiring these dictionary data, for example, a series of character strings in which these values are separated by a comma or the like may be used, or easily accessible data such as an associative array may be used.
辞書テーブル121については、処理効率を考慮した場合、初期処理もしくは最初のアクセス時にメモリ上に辞書データの内容を展開するのが望ましい。この場合、全ての辞書データを展開するとメモリ使用量を圧迫したり、展開処理に時間を要したり等、却って処理効率が低下する場合がある。従って、実装上は、必要な時に必要な範囲の辞書データをメモリ上に展開できるようにするのが望ましい。 For the dictionary table 121, considering the processing efficiency, it is desirable to expand the contents of the dictionary data in the memory at the time of initial processing or first access. In this case, if all the dictionary data is expanded, the processing efficiency may be reduced due to the pressure on the memory usage or the time required for the expansion processing. Therefore, in terms of implementation, it is desirable that dictionary data in a necessary range can be expanded on a memory when necessary.
そこで、本実施の形態では、適用範囲が異なる複数の辞書テーブル121からなる階層構造を有し、これらを適宜選択して使用する構成をとる。例えば、デモアプリケーション生成システム100上で稼働するシステムやアプリケーション全体で共通の辞書(“共通辞書”)や、指定されたWebサイト内でのみ共通の辞書(“サイト辞書”)、サブシステム内でのみ共通の辞書(“ライブラリ辞書”)、画面単位での辞書(“コントローラ辞書”)などの、適用範囲が異なる複数種類の辞書テーブル121を有するものとする。
Therefore, in this embodiment, there is a hierarchical structure including a plurality of dictionary tables 121 having different application ranges, and these are appropriately selected and used. For example, a common dictionary (“common dictionary”) for a system operating on the demo
この場合、例えば、“コントローラ辞書”などの適用範囲の狭い辞書を参照して該当する辞書データが得られなかった場合に、“ライブラリ辞書”→“サイト辞書”→“共通辞書”と順に上位の(適用範囲が広い)辞書テーブル121に遡って参照できるようにしてもよい。また、辞書データが得られなかったとしてデフォルト値を用いるようにしたりエラーとしたりしてもよい。 In this case, for example, when the corresponding dictionary data is not obtained by referring to a dictionary having a narrow application range such as the “controller dictionary”, the upper order is “library dictionary” → “site dictionary” → “common dictionary”. Reference may be made retrospectively to the dictionary table 121 (which has a wide application range). Further, a default value may be used or an error may be assumed if dictionary data is not obtained.
パーツオブジェクト103は、取得した辞書データから必要なデータを抽出して、コントロールを表示したり制御したりする際のパラメータとして設定する。例えば、入出力コントロールとして入力フィールドを表示する場合の属性値として、辞書データから取得したフィールドの長さを設定するとともに、妥当性チェックのタイプやIMEの初期モードなどの値、説明コメントの内容などを設定する。なお、入力データの妥当性チェックや、IMEのモード設定などの入出力コントロールの制御に係る処理は、入力チェック部112や表示部142の機能であるが、具体的な実装としては、例えば、パーツオブジェクト103の継承元のクラスにメソッドとして定義しておくなど、パーツオブジェクト103が有する、もしくはパーツオブジェクト103が呼び出すことができる機能として実装しておくものとする。
The
これにより、図2の下段の画面201の例に示すように、実行時に“顧客名”を指定するための入力フィールドのコントロールを表示するよう、パーツオブジェクト103がHTMLデータ102を生成することができる。このとき例えば、パーツオブジェクト103の説明コメントの情報を当該入出力項目についてのヘルプ情報等として用いることができる。
As a result, as shown in the example of the
なお、入力フィールドを表示する場合、入力フィールドのコントロールだけを表示したのでは何を入力すべきかが不明であるため、本実施の形態では、図2に示すように、当該パーツオブジェクト103に対応する入出力項目の表示名(“顧客名”)を表示するテキストコントロールを入力フィールドに隣接させてラベルとして表示する(ラベルコントロール)。当該テキストは、パーツオブジェクト103の保持データにおけるラベルの情報、すなわちパーツオブジェクト103が辞書テーブル121から取得した辞書データの名称の値(“顧客名”)を設定する。
When displaying the input field, since only the input field control is displayed, it is unclear what should be input. Therefore, in this embodiment, as shown in FIG. A text control that displays the input / output item display name (“customer name”) is displayed adjacent to the input field as a label (label control). The text sets the label information in the data held by the
このようなHTMLデータ102の生成に係る処理は、表示部142等の機能であるが、具体的な実装としては、例えば、パーツオブジェクト103の継承元のクラスにメソッドとして定義しておくなど、パーツオブジェクト103が有する、もしくはパーツオブジェクト103が呼び出すことができる機能として実装しておくものとする。なお、ここでは、上述したように、表示するラベルコントロールや入出力コントロール、および説明コメントを表示するコメントコントロールの3つの要素を一つの単位として、一括して整合性を持った形でレイアウトや外観に係る属性値等を調整するものとする。
Such processing related to the generation of the
以上のような処理によって応答処理部140の表示部142や表示調整部141等により生成され、図示しないWebサーバプログラムの出力バッファに蓄積されたHTMLデータ102について、クライアント端末200に対して出力される直前にローカルデータ生成部143がこれを取得して、ローカルデータ105を生成する。本実施の形態では、上述したように、例えば、パーツオブジェクト103を表示(HTMLを生成)して画面を生成するための共通のクラス等において、最後のHTMLタグ(“</html>”)を書き出す際に所定のメソッド等を呼び出すことによってこれを実行する。
The
<ローカルデータ生成処理>
図3は、HTMLデータ102からローカルデータ105を生成する処理の流れの例について概要を示したフローチャートである。ローカルデータ生成部143は、上述したように、クライアント端末200に対して画面遷移における各画面のHTMLデータ102が生成され出力される直前(HTMLデータ102からなる画面生成が完了するとき)のタイミングで呼び出される。呼び出されると、まず、図示しないWebサーバプログラムの出力バッファに蓄積されたHTMLデータ102を取り出し、その中に記載されている各HTMLタグについて、必要に応じて見やすいように階層毎にタブやインデントを設定して階段状になるよう編集する(S01)。
<Local data generation processing>
FIG. 3 is a flowchart showing an outline of an example of a flow of processing for generating the
次に、HTMLデータ102について、記載されているファイルやリソース104のパスを変換する(S02)。具体的には、例えば、“href="/”や“href='/”、“src="/”や“src='/”、“url('/”や“url("/”、その他のURL表現からなる内部パスを、“file:///”に続くローカルパスに変換する。
Next, the path of the file or
ここで、ローカルパス変換とは、パス表現が“/”で始まる絶対パスの場合は、クライアント端末200上での保存先の基準となる所定のディレクトリやフォルダ(例えば、“c:\design”など。以下では“出力先ディレクトリ”と記載する)の文字列を先頭に付加してローカルパスを得る。一方、パス表現が“../”で始まる相対バスの場合は、“../”の数だけ、デモアプリケーション生成システム100上での配置場所をルート方向に遡ってたどった場所の絶対パスを取得した後、出力先ディレクトリの文字列を先頭に付加してローカルパスを得る。ローカルパスの文字列は、クライアント端末200のプラットフォームに応じて適宜書式を変換する。このとき、URLが“/”で終わる場合は、“index.html”をファイル名にするとともに、パラメータ部分のファイル名も、後述する処理でクライアント端末200にコピーした際のファイル名に同期して、プラットフォームに応じた適切なファイル名に変換する。なお、出力先ディレクトリの値は、例えば、辞書テーブル121に辞書データとして設定・登録しておくことができる。
Here, the local path conversion means that when the path expression is an absolute path starting with “/”, a predetermined directory or folder (for example, “c: \ design” or the like serving as a storage destination reference on the client terminal 200). (Hereinafter referred to as “Output directory”) is added to the beginning to obtain the local path. On the other hand, in the case of a relative bus whose path expression starts with “../”, the absolute path of the location traced back in the route direction on the demo
その後、HTMLデータ102自体の配置場所についてもローカルパス変換を行って配置場所のパスを取得し、クライアント端末200上における当該配置場所に変換後のHTMLデータ102をファイルとして出力する(S03)。配置場所にフォルダやディレクトリが存在しない場合は新たに作成して出力する。
Thereafter, local path conversion is also performed on the arrangement location of the
さらに、ステップS02においてHTMLデータ102の中で“file:///…”に変換したパスに対応するファイルをリソース104から抽出し(S04)、抽出した各ファイルについて内部に記載されているURL表現からなるパスをローカルパスに変換し(S05)、変換したファイルやリソース104等をクライアント端末200上の所定の配置場所に出力もしくはコピーする(S06)。
Further, a file corresponding to the path converted to “file: ///...” In the
例えば、抽出したファイルがCSS(Cascading Style Sheets)ファイルである場合は、その中の“url(…)”内の画像ファイルについて上記のローカルパス変換を行うとともに、クライアント端末200上における当該パスの場所にリソース104から画像ファイルをコピーする。また、CSSファイル自体の配置場所についてもローカルパス変換を行なって配置場所のパスを取得し、クライアント端末200上における当該配置場所に変換後のCSSファイルを出力する。
For example, when the extracted file is a CSS (Cascading Style Sheets) file, the above-mentioned local path conversion is performed on the image file in “url (...)” And the location of the path on the
なお、CSSファイルにおいて圧縮ファイルを用いている場合は、ネーミングルール等で圧縮前のファイルであることが特定できるようにした上でサーバ上に圧縮前のファイルを事前配置しておき、これらを用いて処理を行うものとする。同様に、外部ファイルについても、サーバ上の配置場所との変換ルール等を定めておき、外部ファイルであることが特定できるようにした上でサーバ上に事前配置しておくものとする。 If a compressed file is used in the CSS file, the file before compression is specified on the server in advance after the file can be specified by a naming rule or the like. Process. Similarly, an external file is also preliminarily arranged on the server after a conversion rule with an arrangement location on the server is determined so that the external file can be specified.
また、抽出したファイルがJSファイル(JavaScript(登録商標)外部ファイル)である場合は、JSファイル内の画像ファイルを抽出してローカルパス変換を行うとともに、クライアント端末200上における当該パスの場所にリソース104から画像ファイルをコピーする。また、JSファイル内の各URL表現からなる内部パスについてローカルパスへの変換を行う。さらに、JSファイル自体の配置場所についてもローカルパス変換を行なって配置場所のパスを取得し、クライアント端末200上における当該配置場所に変換後のJSファイルを出力する。
If the extracted file is a JS file (JavaScript (registered trademark) external file), the image file in the JS file is extracted to perform local path conversion, and a resource is placed at the location of the path on the
また、抽出したファイルが画像ファイルである場合は、変換後のHTMLデータ102において既にローカルパス変換されている画像ファイルのパスについて、クライアント端末200上の対応する場所にリソース104から画像ファイルをコピーする。
If the extracted file is an image file, the image file is copied from the
上述したような一連の処理により、ユーザがWebアプリケーションを実行して画面遷移させた際に、各画面をクライアント端末200上で単独で表示させることが可能なデモアプリケーションを自動的に生成してクライアント端末200上に出力することが可能となる。
Through a series of processes as described above, when a user executes a web application to change the screen, a demo application that can display each screen independently on the
なお、例えば、デモアプリケーションを生成する機能を有効にするか否かの設定情報をデモアプリケーション生成システム100に保持して、当該機能が無効にされている場合は、Webアプリケーションを実行して画面遷移させてもデモアプリケーションを生成しないようにすることができる。また、当該デモアプリケーション生成システム100を、Webアプリケーションプログラムの開発環境等と結合させて構築し、開発した画面の確認やシミュレーションなどの動作時に合わせてデモアプリケーションを生成するようにしてもよい。
Note that, for example, setting information indicating whether or not to enable a function for generating a demo application is held in the demo
以上に説明したように、本発明の一実施の形態であるデモアプリケーション生成システム100によれば、ユーザは、クライアント端末200を介して一度Webアプリケーションを実行させて画面を遷移させれば、画面遷移に含まれる各画面について、クライアント端末200上の所定の出力先ディレクトリの配下に、デモアプリケーション生成システム100(Webサーバ)と同じURL構造で必要なHTMLファイルやリソースファイルを自動的に配置することができ、クライアント端末200上で単独で動作するデモアプリケーションを自動的に生成することができる。これにより、デモアプリケーションの作成負荷を大幅に低減させることが可能となる。
As described above, according to the demo
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。 As mentioned above, the invention made by the present inventor has been specifically described based on the embodiment. However, the present invention is not limited to the embodiment, and various modifications can be made without departing from the scope of the invention. Needless to say.
例えば、上述したようなデモアプリケーションの生成以外にも、例えば、HTMLファイルとJSファイル、およびCSSファイルからなるローカルファイルをZIPフォーマット等により圧縮して配信するシステムに対して、本実施の形態の仕組みで生成したデータを適用することも可能である。 For example, in addition to the generation of the demo application as described above, for example, the system according to the present embodiment is applied to a system that compresses and distributes a local file composed of an HTML file, a JS file, and a CSS file in the ZIP format or the like. It is also possible to apply the data generated in.
本発明は、スタンドアロン環境で動作するデモ用アプリケーションを生成するデモアプリケーション生成システムおよびデモアプリケーション生成プログラムに利用可能である。 The present invention is applicable to a demo application generation system and a demo application generation program that generate a demo application that operates in a stand-alone environment.
100…デモアプリケーション生成システム、101…ソースコード、102…HTMLデータ、103…パーツオブジェクト、104…リソース、105…ローカルデータ、110…要求処理部、111…ID変換部、112…入力チェック部、120…辞書処理部、121…辞書テーブル、130…ビジネスロジック、131…業務データベース(DB)、140…応答処理部、141…表示調整部、142…表示部、143…ローカルデータ生成部、
200…クライアント端末、201…画面、
300…ネットワーク。
DESCRIPTION OF
200 ... Client terminal, 201 ... Screen,
300: Network.
Claims (4)
前記Webアプリケーションプログラムが前記クライアント端末に対して応答する画面を生成して出力する際に、生成された前記画面のHTMLデータを保持する出力バッファから前記HTMLデータを取得し、前記HTMLデータに含まれるURL表現もしくはパスを、前記クライアント端末上の所定のディレクトリを基準とした第1のローカルパスにそれぞれ変換し、また、前記HTMLデータの所在場所のパスを前記所定のディレクトリを基準とした第2のローカルパスに変換し、
前記デモアプリケーションとして、前記クライアント端末上の前記第2のローカルパスにより示される場所に前記HTMLデータからなるHTMLファイルを出力し、さらに前記HTMLデータが参照するリソースを含む各ファイルについて、前記クライアント端末上の対応する前記第1のローカルパスにより示される場所にそれぞれ出力もしくはコピーすることを特徴とするデモアプリケーション生成システム。 Web application program that provides a service to the client terminal by calling a corresponding business logic in response to a request from the client terminal and displaying the processing result of the business logic in response to the client terminal A demo application generation system for generating a demo application that can be reproduced by the client terminal alone with respect to a predetermined screen transition of the Web application program,
When the Web application program generates and outputs a screen that responds to the client terminal, the HTML data is acquired from an output buffer that holds the generated HTML data of the screen, and is included in the HTML data A URL expression or path is converted into a first local path based on a predetermined directory on the client terminal, and a path of the location of the HTML data is converted to a second path based on the predetermined directory. Convert to local path,
As the demo application, an HTML file composed of the HTML data is output to a location indicated by the second local path on the client terminal, and each file including a resource referred to by the HTML data is output on the client terminal. A demo application generation system, characterized in that each is output or copied to a location indicated by the corresponding first local path.
前記HTMLデータが参照する前記リソースを含む各ファイルについて、それぞれファイルに含まれるURL表現もしくはパスを、前記所定のディレクトリを基準とした第3のローカルパスに変換することを特徴とするデモアプリケーション生成システム。 The demo application generation system according to claim 1,
A demo application generation system that converts, for each file including the resource referred to by the HTML data, a URL expression or path included in the file into a third local path based on the predetermined directory. .
前記第1および第2のローカルパスからなる前記所定のディレクトリ以下の階層構成は、前記Webアプリケーションプログラムに係るファイルやリソースが配置されているディレクトリの階層構成と対応していることを特徴とするデモアプリケーション生成システム。 In the demo application generation system according to claim 1 or 2,
Demonstration characterized in that a hierarchical structure below the predetermined directory composed of the first and second local paths corresponds to a hierarchical structure of a directory in which files and resources related to the Web application program are arranged. Application generation system.
前記Webアプリケーションプログラムが前記クライアント端末に対して応答する画面を生成して出力する際に、生成された前記画面のHTMLデータを保持する出力バッファから前記HTMLデータを取得し、前記HTMLデータに含まれるURL表現もしくはパスを、前記クライアント端末上の所定のディレクトリを基準とした第1のローカルパスにそれぞれ変換し、また、前記HTMLデータの所在場所のパスを前記所定のディレクトリを基準とした第2のローカルパスに変換し、
前記デモアプリケーションとして、前記クライアント端末上の前記第2のローカルパスにより示される場所に前記HTMLデータからなるHTMLファイルを出力し、さらに前記HTMLデータが参照するリソースを含む各ファイルについて、前記クライアント端末上の対応する前記第1のローカルパスにより示される場所にそれぞれ出力もしくはコピーすることを特徴とするデモアプリケーション生成プログラム。 Web application program that provides a service to the client terminal by calling a corresponding business logic in response to a request from the client terminal and displaying the processing result of the business logic in response to the client terminal A demo application generating program that causes a computer to operate as a Web server system that generates a demo application that can be reproduced independently by the client terminal with respect to a predetermined screen transition of the Web application program,
When the Web application program generates and outputs a screen that responds to the client terminal, the HTML data is acquired from an output buffer that holds the generated HTML data of the screen, and is included in the HTML data A URL expression or path is converted into a first local path based on a predetermined directory on the client terminal, and a path of the location of the HTML data is converted to a second path based on the predetermined directory. Convert to local path,
As the demo application, an HTML file composed of the HTML data is output to a location indicated by the second local path on the client terminal, and each file including a resource referred to by the HTML data is output on the client terminal. A demo application generation program that outputs or copies to a location indicated by the corresponding first local path.
Priority Applications (6)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2012204076A JP2014059699A (en) | 2012-09-18 | 2012-09-18 | Demo application generation system and demo application generation program |
| CN202110357746.8A CN113158651A (en) | 2012-09-18 | 2013-08-29 | Web server system and demonstration application generation method |
| PCT/JP2013/073185 WO2014045826A1 (en) | 2012-09-18 | 2013-08-29 | Web server system, dictionary system, dictionary call method, screen control display method, and demonstration application generation method |
| CN201380059955.8A CN104798067B (en) | 2012-09-18 | 2013-08-29 | Dictionary system and dictionary call method |
| US14/426,470 US9817811B2 (en) | 2012-09-18 | 2013-08-29 | Web server system, dictionary system, dictionary call method, screen control display method, and demonstration application generation method |
| CN201610910911.7A CN107092589B (en) | 2012-09-18 | 2013-08-29 | Web server system, screen control display method, and presentation application generation method |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2012204076A JP2014059699A (en) | 2012-09-18 | 2012-09-18 | Demo application generation system and demo application generation program |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2014059699A true JP2014059699A (en) | 2014-04-03 |
Family
ID=50616126
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2012204076A Pending JP2014059699A (en) | 2012-09-18 | 2012-09-18 | Demo application generation system and demo application generation program |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2014059699A (en) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2017208064A (en) * | 2016-05-12 | 2017-11-24 | 株式会社リコー | Information processing system, information processing apparatus, program, and screen generation method |
| US11159694B2 (en) | 2016-05-12 | 2021-10-26 | Ricoh Company, Ltd. | Information processing system, information processing apparatus, and method of generating screen |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2010170453A (en) * | 2009-01-26 | 2010-08-05 | Nippon Business Engineering:Kk | Static web site construction method, static web site construction service providing method, dynamic/static conversion processor, and dynamic/static conversion processing program |
| JP2011060196A (en) * | 2009-09-14 | 2011-03-24 | Hitachi Ltd | Method and system for recording and reproducing operation of web application |
-
2012
- 2012-09-18 JP JP2012204076A patent/JP2014059699A/en active Pending
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2010170453A (en) * | 2009-01-26 | 2010-08-05 | Nippon Business Engineering:Kk | Static web site construction method, static web site construction service providing method, dynamic/static conversion processor, and dynamic/static conversion processing program |
| JP2011060196A (en) * | 2009-09-14 | 2011-03-24 | Hitachi Ltd | Method and system for recording and reproducing operation of web application |
Non-Patent Citations (1)
| Title |
|---|
| "高いカスタム化機能を誇るPC Xサーバー Reflection X バージョン12.0 日本語版", UNIX USER, vol. 第14巻,第3号, JPN6016032098, 1 March 2005 (2005-03-01), JP, pages 10, ISSN: 0003383068 * |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2017208064A (en) * | 2016-05-12 | 2017-11-24 | 株式会社リコー | Information processing system, information processing apparatus, program, and screen generation method |
| US11159694B2 (en) | 2016-05-12 | 2021-10-26 | Ricoh Company, Ltd. | Information processing system, information processing apparatus, and method of generating screen |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN106708480B (en) | Management platform implementation method and device | |
| CN105518633B (en) | More equipment in Web server system, application and development auxiliary system, the multi-language support method in Web server system, Web server system support method and application and development householder method | |
| CN104636139B (en) | One kind visualizes cross-platform mobile application exploitation and generation system | |
| WO2014045826A1 (en) | Web server system, dictionary system, dictionary call method, screen control display method, and demonstration application generation method | |
| US8930824B2 (en) | Facilitating propagation of user interface patterns or themes | |
| US20080028302A1 (en) | Method and apparatus for incrementally updating a web page | |
| JP2004005568A (en) | Updating of high-speed gui style of legacy application | |
| JP3808020B2 (en) | Web server having Java servlet function, Java program update method, and computer program | |
| US8136043B2 (en) | GUI generation apparatus and method for generating GUI | |
| CN105589959A (en) | Form processing method and form processing system | |
| CN109284488B (en) | Method, device and medium for modifying front-end table column data based on local storage | |
| US10114617B2 (en) | Rapid visualization rendering package for statistical programming language | |
| JP5727413B2 (en) | Application development support system and application development support program | |
| CN102142004B (en) | Service processing method and service engine | |
| JP2014059699A (en) | Demo application generation system and demo application generation program | |
| JP5766651B2 (en) | Multilingual Web server system and multilingual support method in Web server system | |
| JP6231260B2 (en) | Screen control system, screen control program, screen creation support program, and screen control method | |
| JP2004038334A (en) | Operation position storage method, structured document display method, structured document display device, program, and operation position storage data | |
| CN116610385A (en) | Application generation method, device, computer device, storage medium and program product | |
| JP5917350B2 (en) | Dictionary system and dictionary calling method | |
| JP6113983B2 (en) | Screen control display system and screen control display program | |
| JP6331307B2 (en) | Information processing apparatus, information processing apparatus control method, and program | |
| JP2013200786A (en) | Screen control system, screen control program, screen creation support program and screen control method | |
| JP2013238976A (en) | Source code generation system | |
| JP5658196B2 (en) | Multi-device compatible web server system and multi-device compatible method in web server system |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20150804 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20160823 |
|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20170307 |