JP2019125308A - Information processing device, control method therefor, and computer program - Google Patents

Information processing device, control method therefor, and computer program Download PDF

Info

Publication number
JP2019125308A
JP2019125308A JP2018007228A JP2018007228A JP2019125308A JP 2019125308 A JP2019125308 A JP 2019125308A JP 2018007228 A JP2018007228 A JP 2018007228A JP 2018007228 A JP2018007228 A JP 2018007228A JP 2019125308 A JP2019125308 A JP 2019125308A
Authority
JP
Japan
Prior art keywords
information processing
mapping file
input
unit
program development
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.)
Granted
Application number
JP2018007228A
Other languages
Japanese (ja)
Other versions
JP7060788B2 (en
Inventor
知子 石田
Tomoko Ishida
知子 石田
剛 高塚
Takeshi Takatsuka
剛 高塚
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Marketing Japan Inc
Canon IT Solutions Inc
Original Assignee
Canon Marketing Japan Inc
Canon IT Solutions Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Marketing Japan Inc, Canon IT Solutions Inc filed Critical Canon Marketing Japan Inc
Priority to JP2018007228A priority Critical patent/JP7060788B2/en
Publication of JP2019125308A publication Critical patent/JP2019125308A/en
Application granted granted Critical
Publication of JP7060788B2 publication Critical patent/JP7060788B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

To provide a mechanism for easily building applications that use web services.SOLUTION: Provided is an information processing device for building applications, comprising display control means configured to identifiably display a data structure of a return value obtained from a Web service in an element-by-element manner on a display unit; and input reception means configured to receive an input for associating each element of the data structure displayed on the display unit with a data model definition.SELECTED DRAWING: Figure 5

Description

本発明は、情報処理装置、情報処理装置の制御方法、およびコンピュータプログラムに関する。   The present invention relates to an information processing apparatus, a control method of the information processing apparatus, and a computer program.

従来から、入出力定義やデータモデル定義などを設定し、Webアプリケーションを構築するWebアプリケーション開発ツールが存在する。   Conventionally, there are web application development tools that set up input / output definitions, data model definitions, etc. and build web applications.

また、一般に公開されているサーバにて提供される機能やリソースを活用するWebサービスの利用も高まっており、複数のWebサービスを組み合わせることによって、統合的なWebアプリケーションを作成することができる。Webサービスの一例として、HTTP(HyperText Transport Protocol)などのインターネット関連技術を応用して、SOAP(Simple Object Access Protocol)と呼ばれるXML(Extensible Markup Language)形式のプロトコルを用いてメッセージの送受信を行うサービスがある。このWebサービスを呼び出すWebサービスクライアント(クライアントアプリケーション)には、公開されているWSDL(Web Services Description Language)が利用される。WSDLは、Webサービスを記述している言語である。   In addition, the use of Web services that utilize functions and resources provided by publicly available servers is also increasing, and by combining multiple Web services, it is possible to create an integrated Web application. As an example of a Web service, a service that transmits and receives messages using an Extensible Markup Language (XML) format protocol called Simple Object Access Protocol (SOAP) by applying Internet related technology such as HTTP (HyperText Transport Protocol). is there. A published Web Services Description Language (WSDL) is used for a web service client (client application) that calls this web service. WSDL is a language that describes Web services.

特許文献1には、WSDL等で記載されたWebサービスの定義情報を用いて、マッピングファイルと呼ばれる(データモデルとWebサービスの入出力データを対応付ける)定義ファイルを生成するWebアプリケーション開発ツールの仕組みが示されている。   Patent Document 1 describes a mechanism of a Web application development tool that generates a definition file (corresponding to a data model and input / output data of a Web service) called a mapping file using Web service definition information described in WSDL or the like. It is shown.

特開2011−59751号公報JP, 2011-59751, A

ところで、SOAPにおけるWSDLのようにサービスの構造を定義しているものが存在しないRESTのようなプロトコルも存在する。したがって、このようなプロトコルを用いてWebサービスのリソースをユーザが取得しアプリケーションを開発する場合には、WSDLのような既存の定義を利用してマッピングファイルを作成することは困難であった。   By the way, there is also a REST-like protocol which does not define the structure of a service, such as WSDL in SOAP. Therefore, when a user acquires a Web service resource using such a protocol and develops an application, it is difficult to create a mapping file using an existing definition such as WSDL.

そこで本発明は、上記課題に鑑みてなされたものであり、Webサービスを利用するアプリケーションを容易に構築する仕組みを提供することである。   Therefore, the present invention has been made in view of the above problems, and an object thereof is to provide a mechanism for easily constructing an application using a Web service.

そこで、本発明は、アプリケーションを構築する情報処理装置であって、Webサービスから取得した戻り値のデータ構造を要素単位で識別可能に表示部に表示する表示制御手段と、前記表示部に表示されたデータ構造を要素毎にデータモデル定義と対応づけるための入力を受け付ける入力受付手段と、を有することを特徴とする。   Therefore, the present invention is an information processing apparatus for constructing an application, comprising: display control means for displaying on a display unit a data structure of a return value acquired from a Web service in a distinguishable manner in units of elements; And an input receiving unit for receiving an input for associating the data structure with the data model definition for each element.

本発明によれば、Webサービスを利用するアプリケーションを容易に構築する仕組みを提供することが可能となる。   According to the present invention, it is possible to provide a mechanism for easily constructing an application that uses a Web service.

本実施形態における情報処理システムの一例を示す図である。It is a figure showing an example of the information processing system in this embodiment. 本実施形態における情報処理システムの各構成に適用可能なハードウェア構成の一例を示す図である。It is a figure which shows an example of the hardware constitutions applicable to each structure of the information processing system in this embodiment. 本実施形態におけるプログラム開発装置の機能構成を示す図である。It is a figure which shows the function structure of the program development apparatus in this embodiment. 本実施形態におけるプログラム開発装置の機能構成を示す図である。It is a figure which shows the function structure of the program development apparatus in this embodiment. マッピングファイルを生成するためのフローチャートの一例である。It is an example of the flowchart for producing | generating a mapping file. マッピングルールを生成するためのフローチャートの一例である。7 is an example of a flowchart for generating a mapping rule. マッピングファイルの表示画面の一例を示す図である。It is a figure which shows an example of the display screen of a mapping file. マッピングファイルの編集画面の一例を示す図である。It is a figure which shows an example of the edit screen of a mapping file. データモデル定義の表示画面の一例を示す図である。It is a figure which shows an example of the display screen of a data model definition. マッピングファイルの編集画面の一例を示す図である。It is a figure which shows an example of the edit screen of a mapping file. REST通信メッセージの一例を示す図である。It is a figure which shows an example of a REST communication message. マッピングファイルの一例を示す図である。It is a figure which shows an example of a mapping file. XML形式のメッセージから生成されたマッピングファイルとデータモデル定義との関係を示す図である。It is a figure which shows the relationship between the mapping file produced | generated from the message of XML format, and a data model definition. JSON形式のメッセージから生成されたマッピングファイルとデータモデル定義との関係を示す図である。It is a figure which shows the relationship of the mapping file and data model definition which were produced | generated from the message of JSON format. Webアプリケーション/Webサービス生成のフローチャートの一例である。It is an example of the flowchart of Web application / Web service generation.

以下、本発明の実施形態を、図面を参照して詳細に説明する。   Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.

図1は、本実施形態に係わるプログラム開発装置(開発者がアプリケーションの構築のために使用する情報処理装置)、プログラム開発サーバ、データベースサーバ、アプリケーションクライアント(クライアント装置)、アプリケーションサーバの構成の一例を示すシステム(情報処理システム)構成図である。   FIG. 1 shows an example of the configuration of a program development apparatus (an information processing apparatus used by a developer to build an application), a program development server, a database server, an application client (client apparatus), and an application server according to this embodiment. It is a system (information processing system) block diagram shown.

プログラム開発装置101は、開発者の操作に従って画面レイアウト及びデータベース検索指示などを定義する。プログラム開発装置101単体では、開発者の入力受付を行い、後述するプログラム開発サーバ102に実際のプログラム生成処理、アプリケーション生成処理をさせてもよいし、プログラム開発装置101単体でプログラム生成、アプリケーション生成まで処理してもよい。   The program development apparatus 101 defines a screen layout, a database search instruction, and the like according to the operation of the developer. The program development apparatus 101 alone may receive input from the developer, and may cause the program development server 102 described later to execute actual program generation processing and application generation processing, or the program development apparatus 101 alone may execute program generation and application generation. It may be processed.

なお、本実施形態においては、プログラム開発装置101で生成するアプリケーションはWebアプリケーションを一例として説明するが、これに限定されるものではない。アプリケーションには、携帯電話・スマートフォン・タブレットなどの情報処理装置で動作するアプリケーションや組込みソフトウェアなどのWeb技術による通信を利用しないアプリケーションを含まれる。また、アプリケーションは、Webサービスも含まれる。   In the present embodiment, the application generated by the program development apparatus 101 will be described by taking a Web application as an example, but is not limited to this. The application includes an application that operates on an information processing apparatus such as a mobile phone, a smartphone, and a tablet, and an application that does not use communication by web technology such as embedded software. Applications also include web services.

更に、本実施形態においては、プログラム開発装置101はアプリケーションのプログラムを生成するものとして説明するが、この方法に限定するものではない。例えば、プログラム開発装置101はプログラムを生成することなく、プログラム開発サーバ102やクラウド環境等でアプリケーションが動作する様にアプリケーション環境を構築する方法であってもよい。   Furthermore, in the present embodiment, although the program development apparatus 101 is described as generating an application program, the present invention is not limited to this method. For example, the program development apparatus 101 may be a method of constructing an application environment so that an application operates in the program development server 102 or a cloud environment without generating a program.

また、以下の説明では、SOAPにおけるWSDLのようにWebサービスの構造を定義しているものが存在しないプロトコルの一態様としてRESTを例に説明するが、これに限られるものではない。   Further, in the following description, REST is described as an example of a protocol in which there is no protocol that defines the structure of the Web service, such as WSDL in SOAP, but the present invention is not limited to this.

プログラム開発サーバ102a〜102b(情報処理装置)は、プログラム開発装置101により入力された開発者の指示に従って、プログラムを開発する。プログラム開発サーバ102aはLANなどのネットワーク106内に配置されてもよいし、プログラム開発サーバ102bはインターネット上やクラウド上に配置されてもよい。   The program development servers 102 a to 102 b (information processing apparatuses) develop programs in accordance with a developer's instruction input by the program development apparatus 101. The program development server 102a may be disposed in a network 106 such as a LAN, and the program development server 102b may be disposed on the Internet or on a cloud.

データベースサーバ103a〜103b(情報処理装置)は、開発されたアプリケーションが使用するデータベースであり、開発の際に動作確認などのために利用してもよい。例えば、開発者が利用するためにデータベースサーバ103は、プログラム開発装置101と同一の装置で構成されていてもよいし、LANなどのネットワーク106内に配置されてもよい(データベースサーバ103a)。またインターネット上やクラウド上に配置されてもよい(データベースサーバ103b)。また、プログラム開発装置101が、プログラム開発サーバ102と協調する場合には、プログラム開発サーバ102とデータベースサーバ103が同一の装置内に構成されていてもよい。   The database servers 103a to 103b (information processing apparatuses) are databases used by developed applications, and may be used for operation confirmation or the like at the time of development. For example, the database server 103 may be configured with the same device as the program development device 101 for use by a developer, or may be disposed in a network 106 such as a LAN (database server 103a). It may be arranged on the Internet or on the cloud (database server 103b). When the program development device 101 cooperates with the program development server 102, the program development server 102 and the database server 103 may be configured in the same device.

アプリケーションサーバ105a〜105b(情報処理装置)は、プログラム開発装置101で開発されたアプリケーションを実行する。LANなどのネットワーク106内に配置されてもよい(アプリケーションサーバ105a)し、またインターネット上やクラウド上に配置されてもよい(アプリケーションサーバ105b)。また、ネットワーク106、インターネット、クラウド上のデータベースサーバ103と接続して動作する可能である。   The application servers 105 a to 105 b (information processing apparatuses) execute the applications developed by the program development apparatus 101. It may be disposed in a network 106 such as a LAN (application server 105a), or may be disposed on the Internet or on a cloud (application server 105b). In addition, it can operate by connecting to the network 106, the Internet, and the database server 103 on the cloud.

アプリケーションクライアント104a〜104b(情報処理装置)は、アプリケーションサーバ105と協調してプログラム開発装置101で開発したアプリケーションプログラムを動作させる、ユーザの入力端末である。LANなどのネットワーク106内に配置されてもよい(アプリケーションクライアント104a)し、またインターネット上やクラウド上に配置されてもよい(アプリケーションクライアント104b)。また、情報処理装置は、携帯端末やタブレット型の端末であってもよい。   The application clients 104 a to 104 b (information processing apparatuses) are input terminals of users that operate application programs developed by the program development apparatus 101 in cooperation with the application server 105. It may be located in a network 106 such as a LAN (application client 104a), and may be located on the Internet or on a cloud (application client 104b). The information processing apparatus may be a portable terminal or a tablet type terminal.

図2は、本実施形態に係わるプログラム開発装置101、プログラム開発サーバ102、データベースサーバ103、アプリケーションクライアント104、アプリケーションサーバ105として適用可能な各ハードウェア構成の一例を示すブロック図である。   FIG. 2 is a block diagram showing an example of each hardware configuration applicable as the program development apparatus 101, the program development server 102, the database server 103, the application client 104, and the application server 105 according to the present embodiment.

図2において、CPU201は、システムバス204に接続される各デバイスを統括的に制御する。   In FIG. 2, the CPU 201 centrally controls the devices connected to the system bus 204.

また、ROM203あるいは外部メモリ211には、CPU201の制御プログラムであるオペレーティングシステム(OS)や、各サーバ、クライアント、装置など情報処理装置の後述する各種機能を実現するためのプログラムが記憶されている。   The ROM 203 or the external memory 211 stores an operating system (OS) which is a control program of the CPU 201, and programs for realizing various functions of the information processing apparatus such as each server, client, and device described later.

RAM202は、CPU201の主メモリ、ワークエリア、一時待避領域等として機能する。   The RAM 202 functions as a main memory, a work area, a temporary save area, and the like of the CPU 201.

入力コントローラ205は、入力部209からの入力を制御する。この入力部209としては、情報処理装置では、キーボード、マウス等のポインティングデバイスが挙げられる。   The input controller 205 controls an input from the input unit 209. In the information processing apparatus, examples of the input unit 209 include pointing devices such as a keyboard and a mouse.

出力コントローラ206は、出力部210の表示を制御する。この出力部210としては、例えば、CRTや液晶ディスプレイ等が挙げられる。つまり、出力部210は、画面を表示する表示部としての機能を備える。この場合、CPU201は、出力コントローラ206を介して表示部の表示を制御することが可能である。換言すると、CPU201は、表示制御手段の一態様である。   The output controller 206 controls the display of the output unit 210. As this output part 210, CRT, a liquid crystal display, etc. are mentioned, for example. That is, the output unit 210 has a function as a display unit that displays a screen. In this case, the CPU 201 can control display on the display unit via the output controller 206. In other words, the CPU 201 is an aspect of the display control unit.

外部メモリコントローラ207は、ブートプログラム、各種のアプリケーション、フォントデータ、ユーザーファイル、編集ファイル、プリンタドライバ等を記憶する外部メモリ211へのアクセスを制御する。加えて、各サーバ、クライアント、装置等の各種機能を実現するための各種テーブル、パラメータが記憶されている。この外部メモリ211としては、ハードディスク(HD)やフレキシブルディスク(FD)、PCMCIAカードスロットにアダプタを介して接続されるコンパクトフラッシュ(登録商標)、スマートメディア等が挙げられる。   The external memory controller 207 controls access to the external memory 211 that stores a boot program, various applications, font data, user files, editing files, printer drivers, and the like. In addition, various tables and parameters for realizing various functions of each server, client, device, etc. are stored. Examples of the external memory 211 include a hard disk (HD) and a flexible disk (FD), Compact Flash (registered trademark) connected to a PCMCIA card slot via an adapter, and smart media.

通信I/Fコントローラ208は、ネットワークを介して外部機器との通信制御処理を実行する。   The communication I / F controller 208 executes communication control processing with an external device via a network.

図3および図4を用いて、プログラム開発装置101の機能構成を説明する。なお、プログラム開発装置101における各機能は、プログラム開発装置101のCPU201により実行されるものである。また、CPU201によって実行されるプログラム212は、外部メモリ211に記録されており、必要に応じてRAM202にロードされる。つまり、各機能は、CPU201とメモリ(RAM202)とが協業することにより実現される。   The functional configuration of the program development apparatus 101 will be described using FIGS. 3 and 4. Each function in the program development apparatus 101 is executed by the CPU 201 of the program development apparatus 101. The program 212 executed by the CPU 201 is stored in the external memory 211, and is loaded into the RAM 202 as needed. That is, each function is realized by cooperation between the CPU 201 and the memory (RAM 202).

プログラム開発装置101は、Webアプリケーションを開発する開発者により設定されたリポジトリ定義部304の各定義を用いて、Webアプリケーション生成部306によりWebアプリケーション440を生成する。当該処理については、図15を用いて後述する。   The program development apparatus 101 generates the Web application 440 by the Web application generation unit 306 using each definition of the repository definition unit 304 set by the developer who develops the Web application. The process will be described later with reference to FIG.

プログラム開発装置101は、入力受付部301と、マッピングファイル編集部302と、マッピングルール生成部303と、リポジトリ定義部304と、表示制御部305と、Webアプリケーション生成部306とを含む。   The program development device 101 includes an input reception unit 301, a mapping file editing unit 302, a mapping rule generation unit 303, a repository definition unit 304, a display control unit 305, and a Web application generation unit 306.

入力受付部301は、ユーザによる各表示画面への入力操作を受け付ける機能部である。入力受付部301は、本実施形態において、後述する図7〜図10に表示される各表示画面への入力操作を受け付ける。   The input receiving unit 301 is a functional unit that receives an input operation on each display screen by the user. In the present embodiment, the input receiving unit 301 receives an input operation on each display screen displayed in FIGS. 7 to 10 described later.

リポジトリ定義部304は、アプリケーション定義401、入出力定義402、データモデル定義403、ビジネスプロセス定義404、拡張定義405、マッピングファイル406、を備える。これらの定義・ファイルは、入力受付部301で受け付けた入力内容を基に生成される。   The repository definition unit 304 includes an application definition 401, an input / output definition 402, a data model definition 403, a business process definition 404, an extension definition 405, and a mapping file 406. These definitions and files are generated based on the input content received by the input receiving unit 301.

入出力定義402は、プログラムへ引数として入力される項目を定義する入力定義情報と、プログラムから処理結果として出力する項目を定義する出力定義情報とを入出力定義情報として管理する。具体的に、入力定義情報は、生成されたWebアプリケーションの画面を介して当該Webアプリケーションのユーザが入力する入力項目を定義した情報である。また、出力定義情報は、生成されたWebアプリケーションの画面として出力する出力項目を定義した情報である。   The input / output definition 402 manages, as input / output definition information, input definition information that defines items to be input as arguments to a program and output definition information that defines items to be output as processing results from the program. Specifically, the input definition information is information that defines an input item input by the user of the Web application via the generated screen of the Web application. The output definition information is information that defines an output item to be output as a screen of the generated Web application.

データモデル定義403は、データベースのスキーマ情報(すなわち、項目の属性や名称、桁数)を管理する情報である。   The data model definition 403 is information for managing schema information of the database (that is, the attribute, name, and number of digits of the item).

ビジネスプロセス定義404は、業務フローを管理する情報である。   The business process definition 404 is information for managing a business flow.

拡張定義405は、マッピングファイル406を呼び出すための定義である。また、拡張定義405は入出力定義402から呼び出されて用いられる。   The extension definition 405 is a definition for calling the mapping file 406. Also, the extension definition 405 is called from the input / output definition 402 and used.

マッピングファイル406は、Webサービスの入出力データ項目と、Webアプリケーションの取り扱うデータモデルのデータ項目とを対応付けるファイルである。また、マッピングファイル406は、外部のWebサービスをRESTにより取得したデータ(リソース)とデータモデル定義403を対応づけるものである。なお、以下の説明では、マッピングファイルのテンプレートとは、マッピングファイルに対してマッピングルールおよびデータモデル定義とが対応づけられていないファイルを示す。また、マッピングルールは、REST通信メッセージを解析し、マッピングファイルに対応づけが可能となったデータを示す。ここで、REST通信メッセージとは、RESTによって取得されたWebサービスの戻り値を示す。また、本実施形態において、REST通信メッセージは、なお、本実施形態では、REST通信メッセージは、アプリケーション作成者であるユーザがブラウザなどを用いて取得し、プログラム開発装置101に入力する。データを記述するためフォーマットの一例として、XML形式、およびJSON形式の場合を例に説明するが、これに限られるものでない。   The mapping file 406 is a file that associates input / output data items of the Web service with data items of a data model handled by the Web application. Further, the mapping file 406 associates data (resource) acquired by REST with an external web service with the data model definition 403. In the following description, the mapping file template indicates a file in which the mapping rule and the data model definition are not associated with the mapping file. Also, the mapping rule analyzes the REST communication message and indicates data that can be mapped to the mapping file. Here, the REST communication message indicates the return value of the Web service acquired by REST. Further, in the present embodiment, in the present embodiment, a user who is an application creator acquires a REST communication message using a browser or the like and inputs the REST communication message to the program development apparatus 101. Although an XML format and a JSON format are described as an example of a format for describing data, the present invention is not limited to this.

マッピングファイル編集部302は、マッピングファイルの生成・編集を行うとともに、編集したマッピングファイルとデータモデル定義403との対応づけを行う機能部である。マッピングファイル編集部302は、マッピングファイルGUI表示部421と、マッピングファイル生成部422と、マッピングファイル更新部423と、を備える。   The mapping file editing unit 302 is a functional unit that generates and edits a mapping file and associates the edited mapping file with the data model definition 403. The mapping file editing unit 302 includes a mapping file GUI display unit 421, a mapping file generation unit 422, and a mapping file updating unit 423.

マッピングファイルGUI表示部421は、データを表示制御部305で表示可能なGUIを生成するための機能部である。マッピングファイルGUI表示部421は、図11から図14で示すように記述されたデータを、図7から図10で示す各表示画面を生成する。マッピングファイルGUI表示部421で生成された画面は、表示制御部305により表示される。   The mapping file GUI display unit 421 is a functional unit for generating a GUI capable of displaying data by the display control unit 305. The mapping file GUI display unit 421 generates the display screens shown in FIGS. 7 to 10 with the data described as shown in FIGS. 11 to 14. The screen generated by the mapping file GUI display unit 421 is displayed by the display control unit 305.

マッピングファイル生成部422は、ユーザからの指示に応じてマッピングファイルを生成する機能部である。図7の710は、マッピングファイルGUI表示部421で生成されたマッピングファイルの一態様であり、図12の1200は、マッピングファイルの一態様である。   The mapping file generation unit 422 is a functional unit that generates a mapping file in accordance with an instruction from the user. 710 in FIG. 7 is an aspect of the mapping file generated by the mapping file GUI display unit 421, and 1200 in FIG. 12 is an aspect of the mapping file.

マッピングファイル更新部423は、ユーザからの、図7〜図10に表示される各表示画面への入力操作に応じてマッピングファイルを更新する機能部である。ここで、マッピングファイルの更新は、マッピングルールが対応づけられたマッピングファイルの一部の要素を削除する態様を含む。   The mapping file updating unit 423 is a functional unit that updates the mapping file in accordance with an input operation on each display screen displayed in FIGS. 7 to 10 from the user. Here, the updating of the mapping file includes an aspect of deleting some elements of the mapping file to which the mapping rule is associated.

マッピングルール生成部303は、REST通信メッセージの取得・解析を行うことによりマッピングルールの生成を行う。マッピングルール生成部303は、REST通信メッセージ取得部431と、REST通信メッセージ解析部432とを備える。   The mapping rule generation unit 303 generates a mapping rule by acquiring and analyzing a REST communication message. The mapping rule generation unit 303 includes a REST communication message acquisition unit 431 and a REST communication message analysis unit 432.

REST通信メッセージ取得部431は、RESTによってWebサービスの戻り値を取得する。Webサービスの戻り値は、例えば、図11の1100、および1110で示すデータである。REST通信メッセージ取得部431は、図7の取得部741に入力されたREST通信メッセージを取得することができる。   The REST communication message acquisition unit 431 acquires the return value of the Web service by REST. The return value of the Web service is, for example, data indicated by 1100 and 1110 in FIG. The REST communication message acquisition unit 431 can acquire the REST communication message input to the acquisition unit 741 of FIG. 7.

REST通信メッセージ解析部432は、REST通信メッセージ取得部431で取得した戻り値のデータ構造を解析する。なお、当該解析処理については、図6を用いて後述する。また、当該解析処理の結果表示される画面については、図8,10を用いて後述する。   The REST communication message analysis unit 432 analyzes the data structure of the return value acquired by the REST communication message acquisition unit 431. The analysis process will be described later with reference to FIG. Moreover, the screen displayed as a result of the said analysis process is later mentioned using FIG.

表示制御部305は、後述する図7〜図10に表示される各表示画面の表示を制御する機能部である。具体的には、表示制御部305は、マッピングファイル生成部422で生成されたマッピングファイルの表示画面、およびマッピングファイル編集部302で編集されたマッピングファイルの表示画面を表示する。   The display control unit 305 is a functional unit that controls display of each display screen displayed in FIGS. 7 to 10 described later. Specifically, the display control unit 305 displays a display screen of the mapping file generated by the mapping file generation unit 422 and a display screen of the mapping file edited by the mapping file editing unit 302.

Webアプリケーション生成部306は、リポジトリ定義部304に基づきWebアプリケーションを生成する機能を備える。Webアプリケーション生成部306は、リポジトリ定義解析部461と、Webアプリケーションコード生成部462とを備える。   The web application generation unit 306 has a function of generating a web application based on the repository definition unit 304. The web application generation unit 306 includes a repository definition analysis unit 461 and a web application code generation unit 462.

リポジトリ定義解析部461は、リポジトリ定義部304の各定義を読み込み解析する。Webアプリケーションコード生成部462は、当該解析した定義を用いてソースコードを生成する。Webアプリケーション生成部306は、ソースコードコンパイル部410を介し、Webアプリケーション440としてプログラムを生成することができる。   The repository definition analysis unit 461 reads and analyzes each definition of the repository definition unit 304. The web application code generation unit 462 generates source code using the analyzed definition. The web application generation unit 306 can generate a program as the web application 440 via the source code compilation unit 410.

Webアプリケーション440は、コンパイルJava(登録商標)コード441とHTML/JSP/JavaScript(登録商標)442とを含む。   The web application 440 includes compiled Java (registered trademark) code 441 and HTML / JSP / JavaScript (registered trademark) 442.

次に、図5を用いて、マッピングファイルを生成するための処理を説明する。図5は、マッピングファイルを生成するためのフローチャートの一例である。プログラム開発装置101の各機能部により実行される。   Next, processing for generating a mapping file will be described using FIG. FIG. 5 is an example of a flowchart for generating a mapping file. It is executed by each functional unit of the program development device 101.

S501において、プログラム開発装置101は、マッピングファイルの作成指示を取得する。当該作成指示は、ユーザによる入力操作により取得される。   In step S501, the program development device 101 acquires a mapping file creation instruction. The creation instruction is acquired by an input operation by the user.

S502において、プログラム開発装置101は、マッピングファイルのテンプレートを作成する。当該マッピングファイルのテンプレートの一例を図12に示す。図12のマッピングファイル1200は、マッピングファイルのテンプレートをXML形式で表示したものである。そして、マッピングファイル1200をGUIで表示したものを図7の710に示す。ここで、図7のマッピングファイル表示画面710について説明する。マッピングファイル表示画面710は、操作一覧部711を含み、マッピングファイル1200の内容をユーザが認識しやすい態様で表示する。操作一覧部711の各項目は、RESTでの呼び出し方法を定義するための項目である。具体的には、操作一覧部711は、コード712、操作名713、URLパス714、HTTPメソッド715、メッセージ形式716の入力を受け付ける。   In step S502, the program development device 101 creates a mapping file template. An example of the mapping file template is shown in FIG. The mapping file 1200 in FIG. 12 is a mapping file template displayed in XML format. And what displayed the mapping file 1200 by GUI is shown by 710 of FIG. Here, the mapping file display screen 710 of FIG. 7 will be described. The mapping file display screen 710 includes an operation list unit 711 and displays the contents of the mapping file 1200 in a manner that is easy for the user to recognize. Each item of the operation list unit 711 is an item for defining a calling method in REST. Specifically, the operation list unit 711 receives the input of the code 712, the operation name 713, the URL path 714, the HTTP method 715, and the message format 716.

コード712および操作名713は、それぞれ、REST操作を識別するコード、および名称である。URLパス714は、RESTによる通信で呼び出すWebサービスのURLを示す。HTTPメソッド715は、HTTPにおけるメソッドを示し、例えば、GET、POST、PUT、DELETEのいずれか1つから選択することができる。メッセージ形式716は、RESTによる通信で取得するメッセージの形式を示し、XML形式、およびJSON形式のいずれか1つから選択することができる。なお、これらの各選択項目は一例であり、RESTでの呼び出し方法を定義するための項目の一態様であり、これに限られるものでない。   The code 712 and the operation name 713 are a code and a name for identifying a REST operation, respectively. The URL path 714 indicates the URL of the Web service to be called by communication by REST. The HTTP method 715 indicates a method in HTTP, and can be selected from, for example, one of GET, POST, PUT, and DELETE. The message format 716 indicates the format of a message to be acquired by communication by REST, and can be selected from any one of XML format and JSON format. In addition, each of these selection items is an example, and is one aspect of the item for defining the calling method in REST, and is not limited to this.

マッピングファイル表示画面710における1つの行は、1つのWebサービスの呼び出し方法を定義している。そのため、ユーザは、マッピングファイル表示画面710から複数のWebサービスの呼び出し方法の定義を行うことが可能である。つまり、1つのWebアプリケーションに対して、複数のWebサービスを使用することも可能である。   One line in the mapping file display screen 710 defines one Web service invocation method. Therefore, the user can define how to invoke a plurality of Web services from the mapping file display screen 710. That is, it is also possible to use multiple web services for one web application.

また、タブ717は、プログラム開発装置101で生成するWebアプリケーションと、利用するWebサービスの入出力関係を規定する。タブ717で「入力」が選択されている場合、Webサービスのリソースを、生成したWebアプリケーションが使用する。一方、タブ717で「出力」が選択されている場合、生成したWebアプリケーションを、Webサービスとして利用させる場合を示す。   Also, the tab 717 defines the input / output relationship between the web application generated by the program development apparatus 101 and the web service to be used. When “input” is selected in the tab 717, the generated Web application uses the Web service resource. On the other hand, when “output” is selected in the tab 717, a case where the generated web application is used as a web service is shown.

S503において、プログラム開発装置101は、マッピングルールを生成する。なお、当該マッピングルールの生成処理については、図6を用いて詳細に説明する。   In S503, the program development device 101 generates a mapping rule. The process of generating the mapping rule will be described in detail with reference to FIG.

S504において、プログラム開発装置101は、マッピングファイルの編集画面を表示する。ここで、図8を用いてマッピングファイルの編集画面について説明する。図8の編集画面800および編集画面810は、マッピングファイルを編集を受け付けるための表示画面である。編集画面800は、図7のマッピングファイル表示画面720で表示されるマッピングファイルのテンプレートに、S503で生成されたマッピングルールが対応づけて表示された画面である。なお、編集画面800は、REST通信メッセージ1100から生成されたマッピングルールの編集画面である。また、編集画面810は、REST通信メッセージ1110から生成されたマッピングルールの編集画面である。以下、編集画面800を用いて各項目について説明するが、編集画面810についても同様である。ここで、編集画面800は、マッピングルールのデータ構造を、要素単位で識別可能に表示している。また、編集画面800は、各要素の要素数も識別可能に表示している。一例として、編集画面800において、要素804の子要素は、要素805である。編集画面800は、各要素単位で編集、削除するための入力操作を受け付ける。   In S504, the program development device 101 displays an editing screen of the mapping file. Here, the editing screen of the mapping file will be described with reference to FIG. The editing screen 800 and the editing screen 810 of FIG. 8 are display screens for accepting editing of the mapping file. The editing screen 800 is a screen in which the mapping rule generated in S503 is displayed in association with the mapping file template displayed on the mapping file display screen 720 of FIG. 7. The editing screen 800 is a screen for editing the mapping rule generated from the REST communication message 1100. The editing screen 810 is an editing screen of the mapping rule generated from the REST communication message 1110. Hereinafter, each item will be described using the editing screen 800, but the same applies to the editing screen 810. Here, the editing screen 800 displays the data structure of the mapping rule so as to be identifiable in element units. The editing screen 800 also displays the number of elements of each element in a distinguishable manner. As an example, in the editing screen 800, a child element of the element 804 is an element 805. The editing screen 800 receives an input operation for editing and deleting in units of elements.

S505において、プログラム開発装置101は、マッピングルールの編集指示を受け付ける。ここで、編集画面800から要素807の削除を受け付ける。編集画面800は、行単位あるいはプロパティ単位で削除のための操作入力を受け付ける。図10における編集画面1000は、編集画面800から要素807が削除された後の編集画面である。編集画面800から所定の要素(要素807)が削除されることにより、当該削除された要素よりも下の階層にある要素が編集画面上で繰り上がって表示される。同様に、図10における編集画面1010は、編集画面810から要素812が削除された後の編集画面である。このため、編集画面は、編集の操作に応じてマッピングファイルの構造をより見やすく表示することができる。   In S505, the program development device 101 receives an editing instruction of the mapping rule. Here, deletion of the element 807 from the editing screen 800 is accepted. The editing screen 800 receives an operation input for deletion in units of lines or in units of properties. The editing screen 1000 in FIG. 10 is an editing screen after the element 807 is deleted from the editing screen 800. As a predetermined element (element 807) is deleted from the editing screen 800, elements at a level lower than the deleted element are raised and displayed on the editing screen. Similarly, the editing screen 1010 in FIG. 10 is the editing screen after the element 812 has been deleted from the editing screen 810. Therefore, the editing screen can display the structure of the mapping file more easily in accordance with the editing operation.

S506において、プログラム開発装置101は、マッピングルールとデータモデルコードとを対応づける。図10における編集画面1000は、編集画面800にデータモデル定義1001の対応づけがされた状態を示す。また、同様に、図10における編集画面1010は、編集画面810にデータモデル定義1011の対応づけがされた状態を示す。ここで、対応づけられたデータモデル定義は、図9に示すデータモデル定義表示画面900で示す定義である。データモデル定義表示画面900において、データモデル901を一覧で表示する表示画面である。   In S506, the program development device 101 associates the mapping rule with the data model code. The editing screen 1000 in FIG. 10 shows a state in which the data model definition 1001 is associated with the editing screen 800. Similarly, the editing screen 1010 in FIG. 10 shows a state in which the data model definition 1011 is associated with the editing screen 810. Here, the associated data model definition is a definition shown on the data model definition display screen 900 shown in FIG. The data model definition display screen 900 is a display screen for displaying the data models 901 as a list.

次に、図6を用いて、マッピングルールを生成するためのフローを説明する。図6は、マッピングルールを生成するためのフローチャートの一例である。   Next, a flow for generating a mapping rule will be described using FIG. FIG. 6 is an example of a flowchart for generating a mapping rule.

S601において、プログラム開発装置101は、図7のマッピングファイル表示画面710における操作一覧部711への入力を受け付ける。図7のマッピングファイル表示画面720は、操作一覧部711に各項目が入力された後の画面である。ここで、図12を用いて、マッピングファイル1210およびマッピングファイル1220について説明する。マッピングファイル1210およびマッピングファイル1220は、マッピングファイル1200に、操作一覧部711を介して各種情報が入力された後のマッピングファイルである。ここで、マッピングファイル1210は、メッセージ形式716でXML形式が選択された場合のマッピングファイルである。また、マッピングファイル1220は、メッセージ形式716でJSON形式が選択された場合のマッピングファイルである。   In step S601, the program development device 101 receives an input to the operation list unit 711 in the mapping file display screen 710 of FIG. The mapping file display screen 720 of FIG. 7 is a screen after each item has been input to the operation list unit 711. Here, the mapping file 1210 and the mapping file 1220 will be described with reference to FIG. The mapping file 1210 and the mapping file 1220 are mapping files after various information is input to the mapping file 1200 via the operation list unit 711. Here, the mapping file 1210 is a mapping file when the XML format is selected in the message format 716. Also, the mapping file 1220 is a mapping file when the JSON format is selected in the message format 716.

S602において、プログラム開発装置101は、REST通信メッセージを受け付ける。プログラム開発装置101は、コンテキストメニュー表示730からREST通信メッセージを読み込む旨の選択を受け付ける。プログラム開発装置101は、当該選択を受け付けたことに応じて入力ボックス740を表示する。入力ボックス740は、REST通信メッセージの入力を受け付けるための取得部741を備える。プログラム開発装置101は、取得部741にメッセージが入力され、「OK」ボタンが押下されることによりREST通信メッセージを受け付ける。ここで、REST通信メッセージの一例について、図11を用いて説明する。図11における1100は、XML形式で取得したREST通信メッセージの一例である。また、図11における1110は、JSON形式で取得したREST通信メッセージの一例である。なお、以下の説明では、REST通信メッセージ1100に基づいて説明し、REST通信メッセージ1110については説明を省略する。   In S602, the program development device 101 receives a REST communication message. The program development apparatus 101 receives the selection to read the REST communication message from the context menu display 730. The program development device 101 displays the input box 740 in response to the reception of the selection. The input box 740 includes an acquisition unit 741 for receiving an input of a REST communication message. The program development apparatus 101 receives a message from the acquisition unit 741 and accepts the REST communication message by pressing the “OK” button. Here, an example of the REST communication message will be described with reference to FIG. 1100 in FIG. 11 is an example of a REST communication message acquired in XML format. Also, 1110 in FIG. 11 is an example of a REST communication message acquired in JSON format. The following description will be made based on the REST communication message 1100, and the description of the REST communication message 1110 will be omitted.

S603において、プログラム開発装置101は、取得部741に入力されたREST通信メッセージの形式が適正か否かを判定する。具体的には、プログラム開発装置101は、取得部741に入力されたREST通信メッセージの形式とメッセージ形式716とが一致するか否かを判定する。プログラム開発装置101は、メッセージ形式同士が一致しないすると判定する場合には、S604の処理を実行する。その一方で、プログラム開発装置101は、メッセージ形式同士が一致しないと判定した場合には、マッピングルールの生成を終了する。   In step S603, the program development device 101 determines whether the format of the REST communication message input to the acquisition unit 741 is appropriate. Specifically, the program development device 101 determines whether or not the format of the REST communication message input to the acquisition unit 741 matches the message format 716. When it is determined that the message formats do not match, the program development device 101 executes the process of S604. On the other hand, when the program development apparatus 101 determines that the message formats do not match, the generation of the mapping rule ends.

S604において、プログラム開発装置101は、REST通信メッセージにおける最初の要素を親に設定する。ここで、具体的な処理について、図11のREST通信メッセージ1100を用いて説明する。REST通信メッセージ1100において、最初の要素1101は、「ns:ST1C_IO306_getDataResponse」である。   In S604, the program development device 101 sets the first element in the REST communication message as a parent. Here, specific processing will be described using the REST communication message 1100 of FIG. In the REST communication message 1100, the first element 1101 is "ns: ST1C_IO 306_getDataResponse".

S605において、プログラム開発装置101は、上述の最初の要素における要素数を1に設定する。   In step S605, the program development device 101 sets the number of elements in the first element described above to one.

S606において、プログラム開発装置101は、親の要素名をプロパティ名として設定する。REST通信メッセージ1100において、プロパティ名として「ns:ST1C_IO306_getDataResponse」が設定される。   In S606, the program development device 101 sets the element name of the parent as the property name. In the REST communication message 1100, “ns: ST1C_IO 306_getDataResponse” is set as the property name.

ここで、S605とS606の処理が行われた後の表示画面について図8を用いて説明する。プログラム開発装置101は、図8で示すようにプロパティ名801に「ns:ST1C_IO306_getDataResponse」が表示される。また、プロパティ名801の「ns:ST1C_IO306_getDataResponse」に対応する要素数803の欄に「1」が表示される。   Here, the display screen after the process of S605 and S606 is performed will be described with reference to FIG. The program development apparatus 101 displays “ns: ST1C_IO 306_getDataResponse” in the property name 801 as shown in FIG. Further, “1” is displayed in the column of the element number 803 corresponding to “ns: ST1C_IO 306_getDataResponse” of the property name 801.

S607において、プログラム開発装置101は、S608からS614までの処理を子要素の数だけ繰り返される。REST通信メッセージ1100において、親の要素を「ns:ST1C_IO306_getDataResponse」としている場合には、子要素は「ns:return」である。   In S607, the program development device 101 repeats the processing from S608 to S614 as many as the number of child elements. In the REST communication message 1100, when the parent element is "ns: ST1C_IO 306_getDataResponse", the child element is "ns: return".

S608において、プログラム開発装置101は、要素がすでに設定済みの要素であるか否かを判定する。具体的には、プログラム開発装置101は、同じフルパスがすでに出力されている場合はS611に進む。一例として、REST通信メッセージ1100における子要素「ns:return」のフルパスは「ns:ST1C_IO306_getDataResponse/ns:return」となる。プログラム開発装置101は、現在の子要素が1102である場合には、先に同一の要素が設定されていないため、S610に進む。その一方で、プログラム開発装置101は、現在の子要素が1102である場合には、先に同一の要素が設定されているため、S609に進む。   In step S608, the program development device 101 determines whether the element is an element that has already been set. Specifically, the program development apparatus 101 proceeds to S611 if the same full path has already been output. As an example, the full path of the child element “ns: return” in the REST communication message 1100 is “ns: ST1C_IO 306_getDataResponse / ns: return”. If the current child element is 1102, the program development apparatus 101 proceeds to S610 because the same element is not set in advance. On the other hand, if the current child element is 1102, the program development apparatus 101 proceeds to S609 because the same element is set in advance.

S609において、プログラム開発装置101は、子の要素数を複数に設定する。図8において、要素数の項目において、複数の要素数が設定された例を806に示す。複数となる場合は、例えば、図11の1100における要素1105と要素1106のように同一の要素が複数存在する場合である。   In S609, the program development device 101 sets the number of child elements to a plurality. An example in which a plurality of element numbers are set in the item of the element number in FIG. In the case of multiple elements, for example, there are a plurality of identical elements such as element 1105 and element 1106 in 1100 of FIG.

S610において、プログラム開発装置101は、子の要素数を1に設定する。   In S610, the program development device 101 sets the number of elements of the child to one.

S611において、プログラム開発装置101は、子の要素名をマッピングファイルに出力する。ここで、図8で示すようにプロパティ名欄の805に「ns:return」が設定される。また、「ns:return」は、親の要素である「ns:ST1C_IO306_getDataResponse」の下部に表示される。   In S611, the program development device 101 outputs the element name of the child to the mapping file. Here, as shown in FIG. 8, “ns: return” is set in the property name column 805. Also, “ns: return” is displayed below the parent element “ns: ST1C_IO 306_getDataResponse”.

S612において、プログラム開発装置101は、現在の子の要素にさらに子の要素があるかを判定する。プログラム開発装置101は、現在の子の要素にさらに子の要素がある場合には、S613に進む。その一方で、プログラム開発装置101は、現在の子の要素に子がない場合にはS614に進む。ここで、REST通信メッセージ1100を用いて当該処理について具体的に説明する。プログラム開発装置101は、現在の子の要素が1102の場合、さらに、子の要素1103(「ns:queryResult」)が存在するため、S613へ進む。一方で、プログラム開発装置101は、現在の子要素が1104である場合には、更なる子要素が存在しないためS614へ進む。   In step S612, the program development apparatus 101 determines whether the current child element further includes a child element. If there is another child element in the current child element, the program development device 101 proceeds to S613. On the other hand, if there is no child in the current child element, the program development device 101 proceeds to S614. Here, the processing will be specifically described using the REST communication message 1100. If the current child element is 1102, the program development apparatus 101 proceeds to S613 because the child element 1103 ("ns: queryResult") further exists. On the other hand, if the current child element is 1104, the program development apparatus 101 proceeds to S614 because there is no further child element.

S613において、プログラム開発装置101は、子の要素を親と設定してS608からS614の処理を繰り返す。   In S613, the program development device 101 sets the child element as a parent and repeats the processing of S608 to S614.

S614において、プログラム開発装置101は、子の要素全ての処理が終了した場合にマッピングルールの生成を終了する。   In step S614, the program development apparatus 101 ends the generation of the mapping rule when the processing of all the child elements is completed.

上述の処理により、REST通信メッセージのデータ構造が要素単位で識別可能に表示される。そのため、ユーザはREST通信メッセージ階層構造を容易に識別することが可能となる。具体的には、プログラム開発装置101は、REST通信メッセージにおける要素同士の階層構造を識別可能に表示する。また、プログラム開発装置101は、REST通信メッセージにおける同一の要素が存在するか否かを識別可能に表示している。更に、プログラム開発装置101は、REST通信メッセージにおける同一の要素が存在するか否かを識別可能に表示する。更に、プログラム開発装置101は、単一で存在する要素と複数存在する要素とを識別可能に表示しているともいえる。   By the above-described processing, the data structure of the REST communication message is displayed in an element-by-element manner in an identifiable manner. Therefore, the user can easily identify the REST communication message hierarchical structure. Specifically, the program development apparatus 101 displays the hierarchical structure of the elements in the REST communication message in an identifiable manner. Further, the program development device 101 identifiably displays whether or not the same element in the REST communication message exists. Furthermore, the program development device 101 identifiably displays whether the same element in the REST communication message exists. Furthermore, it can be said that the program development device 101 identifiably displays a single element and a plurality of elements.

次に、図12から図14を用いて、マッピングファイルおよびマッピングルールについて説明する。初めに、図12を用いてマッピングファイルについて説明する。   Next, the mapping file and the mapping rule will be described using FIG. 12 to FIG. First, the mapping file will be described with reference to FIG.

マッピングファイル1200は、図7のマッピングファイル表示画面710で表示されるデータである。すなわち、マッピングファイル1200は、マッピングファイルのテンプレートである。   The mapping file 1200 is data displayed on the mapping file display screen 710 of FIG. 7. That is, the mapping file 1200 is a template of the mapping file.

マッピングファイル1210は、図7のマッピングファイル表示画面720で表示されるデータであって、メッセージ形式716でXML形式が選択された場合のマッピングファイルである。マッピングファイル1210は、マッピングファイル1200から、要素1201に要素1211が追加されたデータである。   The mapping file 1210 is data displayed on the mapping file display screen 720 of FIG. 7 and is a mapping file when the XML format is selected in the message format 716. The mapping file 1210 is data obtained by adding the element 1211 to the element 1201 from the mapping file 1200.

マッピングファイル1220は、図7のマッピングファイル表示画面720で表示されるデータであって、メッセージ形式716でJSON形式が選択された場合のマッピングファイルである。マッピングファイル1220は、マッピングファイル1200から、要素1201に要素1221が追加されたデータである。   The mapping file 1220 is data displayed on the mapping file display screen 720 of FIG. 7 and is a mapping file when the JSON format is selected in the message format 716. The mapping file 1220 is data in which the element 1221 is added to the element 1201 from the mapping file 1200.

次に、図13を用いてXML形式で呼び出されたREST通信メッセージに基づくマッピングファイルについて説明する。   Next, a mapping file based on a REST communication message called in XML format will be described using FIG.

マッピングファイル1300は、図8の編集画面800で表示されるマッピングファイルである。なお、要素1302は、編集画面800における要素807に対応する。また要素1301の前後は、マッピングファイル1210に対応するため省略する。   The mapping file 1300 is a mapping file displayed on the editing screen 800 of FIG. The element 1302 corresponds to the element 807 in the editing screen 800. Further, the front and back of the element 1301 are omitted because they correspond to the mapping file 1210.

マッピングファイル1310は、編集画面1000で表示されるマッピングファイルである。ここで、要素1311は、編集画面1000で表示されるデータモデル定義1001に対応する。   The mapping file 1310 is a mapping file displayed on the editing screen 1000. Here, the element 1311 corresponds to the data model definition 1001 displayed on the editing screen 1000.

次に、図14を用いてJSON形式で呼び出されたREST通信メッセージに基づくマッピングルールについて説明する。   Next, a mapping rule based on a REST communication message called in JSON format will be described using FIG.

マッピングファイル1400は、図8の編集画面810で表示されるマッピングファイルである。なお、要素1401は、編集画面810における要素812に対応する。   The mapping file 1400 is a mapping file displayed on the editing screen 810 of FIG. The element 1401 corresponds to the element 812 in the editing screen 810.

マッピングファイル1410は、編集画面1010で表示されるマッピングファイルである。ここで、要素1411は、データモデル定義1011に対応する。   The mapping file 1410 is a mapping file displayed on the editing screen 1010. Here, the element 1411 corresponds to the data model definition 1011.

次に、図15を用いてWebアプリケーション/Webサービス生成のフローチャートの一例を示す図である。   Next, FIG. 15 is a diagram showing an example of a flowchart of Web application / Web service generation.

ステップS1501において、プログラム開発装置101は、ユーザによるWebアプリケーション/Webサービス生成指示を受け付けると、外部メモリ211に記憶されているリポジトリ定義部304のアプリケーション定義401をRAM202に読み込む。   In step S1501, when the program development device 101 receives a Web application / Web service generation instruction from the user, the program development device 101 reads the application definition 401 of the repository definition unit 304 stored in the external memory 211 into the RAM 202.

ステップS1502において、プログラム開発装置101は、外部メモリ211に記憶されているリポジトリ定義部304のデータモデル定義403をRAM202に読み込む。   In step S1502, the program development device 101 reads the data model definition 403 of the repository definition unit 304 stored in the external memory 211 into the RAM 202.

ステップS1503において、プログラム開発装置101は、外部メモリ211に記憶されているリポジトリ定義部304の入出力定義402をRAM202に読み込む。   In step S 1503, the program development device 101 reads the input / output definition 402 of the repository definition unit 304 stored in the external memory 211 into the RAM 202.

ステップS1504において、プログラム開発装置101は、外部メモリ211に記憶されているリポジトリ定義部304のビジネスプロセス定義404をRAM202に読み込む。   In step S1504, the program development device 101 reads the business process definition 404 of the repository definition unit 304 stored in the external memory 211 into the RAM 202.

ステップS1505において、プログラム開発装置101は、外部メモリ211に記憶されているリポジトリ定義部304のデータモデル定義403をRAM202に読み込む。   In step S1505, the program development device 101 reads the data model definition 403 of the repository definition unit 304 stored in the external memory 211 into the RAM 202.

ステップS1506において、プログラム開発装置101は、RAM202に読み込んだリポジトリ定義部304の各定義・各ファイルから情報を取得し、ソースコードを生成する。なお、生成されたソースコードにはプログラミング言語が記載されたファイルに加え、HTML、JavaScript(登録商標)、JSP、Java(登録商標)等のWebアプリケーションやWebサービスの提供に利用されるファイルも含まれる。   In step S1506, the program development apparatus 101 acquires information from each definition and each file of the repository definition unit 304 read into the RAM 202, and generates a source code. Note that the generated source code includes files used to provide Web applications and Web services such as HTML, JavaScript (registered trademark), JSP, and Java (registered trademark) in addition to files in which the programming language is described. Be

以上、上述の実施形態によれば、情報処理装置は、Webサービスから取得した戻り値のデータ構造を要素単位で識別可能に表示部に表示し、当該表示部に表示されたデータ構造を要素毎にデータモデル定義と対応づけるための入力を受け付けることができる。そのため、Webサービスを利用するアプリケーションを容易に構築する仕組みを提供することが可能となる。したがって、ユーザは、RESTのようなサービスの定義を取得できないプロトコルにおいても、取得したリソースを容易にアプリケーションの構築に利用することができる。特に、Webサービスのリソースの階層構造を容易に識別できることによりユーザが、必要なリソースを選択的に編集することができる。   As described above, according to the above-described embodiment, the information processing apparatus displays the data structure of the return value acquired from the Web service on the display unit in a distinguishable manner in element units, and the data structure displayed on the display unit is displayed for each element Can accept input to be associated with the data model definition. Therefore, it is possible to provide a mechanism for easily building an application that uses a Web service. Therefore, the user can easily use the acquired resources for building an application even in a protocol that can not acquire the definition of a service such as REST. In particular, the user can selectively edit necessary resources by easily identifying the hierarchical structure of Web service resources.

また、情報処理装置は、データ構造の要素のうち単一で存在する要素と複数存在する要素とを識別可能に表示部に表示することができる。そのため、全ての要素を階層構造で提示せず同一の要素についてはまとめてプロパティ単位で表示できる。したがって、Webサービスのリソースの階層構造の全体を把握することに寄与する。   Further, the information processing apparatus can display a single existing element and a plurality of existing elements of the elements of the data structure on the display unit in a distinguishable manner. Therefore, not all elements are presented in a hierarchical structure, and the same elements can be collectively displayed in property units. Therefore, it contributes to grasping the whole hierarchical structure of resources of Web service.

以上、本発明について、上述した実施の形態を用いて説明したが、本発明は上述した実施の形態に限定されるものではない。特に、プログラム開発装置101の各機能は、本実施の形態に限定されるものでなく、複数のプログラム開発装置で協業して処理されるものであってもよい。更に、プログラム開発装置は、オンプレミス環境で用いられるサーバであってもよいし、クラウドサービスにおける仮想的なサーバであってもよい。   As mentioned above, although this invention was demonstrated using embodiment mentioned above, this invention is not limited to embodiment mentioned above. In particular, the functions of the program development apparatus 101 are not limited to those in the present embodiment, and may be processed jointly by a plurality of program development apparatuses. Furthermore, the program development device may be a server used in an on-premises environment, or may be a virtual server in a cloud service.

本発明は、例えば、システム、装置、方法、プログラム若しくは記憶媒体等としての実施形態も可能であり、具体的には、複数の機器から構成されるシステムに適用してもよいし、また、1つの機器からなる装置に適用してもよい。   The present invention is also applicable to, for example, an embodiment as a system, an apparatus, a method, a program, a storage medium, etc. Specifically, the present invention may be applied to a system composed of a plurality of devices. The present invention may be applied to an apparatus consisting of two devices.

なお、本実施形態は、コンピュータや制御コンピュータがプログラム(コンピュータプログラム)を実行することによって実現することもできる。また、プログラムをコンピュータに供給するための手段、例えばかかるプログラムを記録したCD−ROM等のコンピュータが読み取り可能な記録媒体又はかかるプログラムを伝送するインターネット等の伝送媒体も実施例として適用することができる。また、上記のプログラムも実施形態として適用することができる。上記のプログラム、記録媒体、伝送媒体およびプログラムプロダクトは、本発明の範疇に含まれる。   Note that the present embodiment can also be realized by a computer or a control computer executing a program (computer program). In addition, means for supplying a program to a computer, for example, a computer-readable recording medium such as a CD-ROM recording the program or a transmission medium such as the Internet transmitting the program can be applied as an embodiment. . The above program can also be applied as an embodiment. The above program, recording medium, transmission medium and program product are included in the scope of the present invention.

以上、実施形態に基づいて詳述してきたが、特定の実施形態に限られるものではなく、発明の要旨を逸脱しない範囲の様々な形態も本発明の範疇に含まれる。さらに、上述した実施形態は一実施の形態を示すものにすぎず、上述した実施形態から容易に想像可能な発明も本発明の範疇に含まれる。   As mentioned above, although it explained in full detail based on an embodiment, it is not limited to a specific embodiment, and various forms of the range which does not deviate from the gist of an invention are also included in the category of the present invention. Furthermore, the above-described embodiment shows only one embodiment, and the invention easily conceived from the above-described embodiment is also included in the scope of the present invention.

101 プログラム開発装置
301 入力受付部
302 リポジトリ定義部
303 マッピングファイル編集部
304 マッピングルール生成部
305 表示制御部
306 Webアプリケーション生成部
DESCRIPTION OF SYMBOLS 101 Program development apparatus 301 Input reception part 302 Repository definition part 303 Mapping file editing part 304 Mapping rule generation part 305 Display control part 306 Web application generation part

Claims (9)

アプリケーションを構築する情報処理装置であって、
Webサービスから取得した戻り値のデータ構造を要素単位で識別可能に表示部に表示する表示制御手段と、
前記表示部に表示されたデータ構造を要素毎にデータモデル定義と対応づけるための入力を受け付ける入力受付手段と、
を有することを特徴とする情報処理装置。
An information processing apparatus for building an application,
Display control means for displaying the data structure of the return value acquired from the Web service on the display unit so as to be identifiable in element units;
Input receiving means for receiving an input for associating the data structure displayed on the display unit with the data model definition for each element;
An information processing apparatus comprising:
前記表示制御手段は、前記データ構造における要素同士の階層構造を識別可能に表示部に表示することを特徴とする請求項1に記載の情報処理装置。   The information processing apparatus according to claim 1, wherein the display control unit displays a hierarchical structure of elements in the data structure in a distinguishable manner on a display unit. 前記表示制御手段は、前記データ構造に同一の要素が存在するか否かを識別可能に表示部に表示することを特徴とする請求項1または2に記載の情報処理装置。   The information processing apparatus according to claim 1, wherein the display control unit displays the presence or absence of the same element in the data structure on a display unit in a distinguishable manner. 前記表示制御手段は、前記データ構造の要素のうち単一で存在する要素と複数存在する要素とを識別可能に表示部に表示することを特徴とする請求項3に記載の情報処理装置。   4. The information processing apparatus according to claim 3, wherein the display control unit displays a single existing element and a plurality of existing elements of the elements of the data structure on the display unit in a distinguishable manner. 前記入力受付手段は、前記表示部に表示されたデータ構造を要素単位で削除するための入力を受け付けることを特徴とする請求項1乃至4のいずれか1項に記載の情報処理装置。   The information processing apparatus according to any one of claims 1 to 4, wherein the input receiving unit receives an input for deleting the data structure displayed on the display unit in an element unit. 前記Webサービスから取得した戻り値は、XML形式またはJSON形式の少なくともいずれか一方を含むことを特徴とする請求項1乃至5のいずれか1項に記載の情報処理装置。   The information processing apparatus according to any one of claims 1 to 5, wherein the return value acquired from the Web service includes at least one of an XML format and a JSON format. 前記Webサービスから取得した戻り値は、RESTによる通信を用いて取得されたデータであることを特徴とする請求項1乃至6のいずれか1項に記載の情報処理装置。   The information processing apparatus according to any one of claims 1 to 6, wherein the return value acquired from the Web service is data acquired using communication by REST. アプリケーションを構築する情報処理装置の制御方法であって、
Webサービスから取得した戻り値のデータ構造を要素単位で識別可能に表示部に表示する表示制御工程と、
前記表示部に表示されたデータ構造を要素毎にデータモデル定義と対応づけるための入力を受け付ける入力受付工程と、
を有することを特徴とする情報処理装置の制御方法。
A control method of an information processing apparatus for constructing an application,
A display control step of displaying the data structure of the return value acquired from the Web service on the display unit so as to be identifiable in element units;
An input receiving step of receiving an input for associating the data structure displayed on the display unit with the data model definition for each element;
And controlling the information processing apparatus.
コンピュータを請求項1乃至7のいずれか1項に記載の各手段として機能させるためのコンピュータプログラム。   A computer program for causing a computer to function as each means according to any one of claims 1 to 7.
JP2018007228A 2018-01-19 2018-01-19 Information processing equipment, information processing equipment control methods, and computer programs Active JP7060788B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018007228A JP7060788B2 (en) 2018-01-19 2018-01-19 Information processing equipment, information processing equipment control methods, and computer programs

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018007228A JP7060788B2 (en) 2018-01-19 2018-01-19 Information processing equipment, information processing equipment control methods, and computer programs

Publications (2)

Publication Number Publication Date
JP2019125308A true JP2019125308A (en) 2019-07-25
JP7060788B2 JP7060788B2 (en) 2022-04-27

Family

ID=67398874

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018007228A Active JP7060788B2 (en) 2018-01-19 2018-01-19 Information processing equipment, information processing equipment control methods, and computer programs

Country Status (1)

Country Link
JP (1) JP7060788B2 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006146677A (en) * 2004-11-22 2006-06-08 Hitachi Ltd Application development support system, data format generation method using the same, and data processing system
JP2017062851A (en) * 2011-04-28 2017-03-30 キヤノンマーケティングジャパン株式会社 Information processing system, application server, information processing method, program, and recording medium
JP2018005451A (en) * 2016-06-30 2018-01-11 キヤノンマーケティングジャパン株式会社 Information processing device, information processing system, method for controlling the same, and program
JP2018010628A (en) * 2016-06-30 2018-01-18 キヤノンマーケティングジャパン株式会社 Information processing apparatus, server, processing method thereof, and program

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006146677A (en) * 2004-11-22 2006-06-08 Hitachi Ltd Application development support system, data format generation method using the same, and data processing system
JP2017062851A (en) * 2011-04-28 2017-03-30 キヤノンマーケティングジャパン株式会社 Information processing system, application server, information processing method, program, and recording medium
JP2018005451A (en) * 2016-06-30 2018-01-11 キヤノンマーケティングジャパン株式会社 Information processing device, information processing system, method for controlling the same, and program
JP2018010628A (en) * 2016-06-30 2018-01-18 キヤノンマーケティングジャパン株式会社 Information processing apparatus, server, processing method thereof, and program

Also Published As

Publication number Publication date
JP7060788B2 (en) 2022-04-27

Similar Documents

Publication Publication Date Title
US8073857B2 (en) Semantics-based data transformation over a wire in mashups
US9524283B2 (en) Techniques to remotely access form information and generate a form
US10331765B2 (en) Methods and apparatus for translating forms to native mobile applications
US20050125771A1 (en) System and method for dynamic generation and customization of web service client applications for terminals
US10437926B2 (en) System and method to generate a data-rich template
CN111488148A (en) Webpage source code generation method and device
JP2004287972A (en) Edi system, and format definition and production program for edi message
US20200068039A1 (en) Integrating a plurality of third party service interactions into a portal system
US9075891B2 (en) Method and device for editing an object represented in a web page
JP7014960B2 (en) Information processing equipment, servers, their processing methods and programs
JP7060788B2 (en) Information processing equipment, information processing equipment control methods, and computer programs
JP2006163855A (en) Web application development support device, and development support method
CN114817794A (en) Webpage content control method, device, equipment and medium
JP2013200844A (en) Screen control system, screen control program, screen creation support program and screen control method
JP6635104B2 (en) Information processing apparatus, its processing method and program
JP2005339333A (en) Form management system
JP2012150740A (en) Program generating device and method
JP5415249B2 (en) Server system and service linkage method
Hasim et al. Developing Microframework based on Singleton and Abstract Factory Design Pattern
Pohja Web application user interface technologies
Miravet et al. Using standards to build the DIMAG connected mobile applications framework
Yaici et al. A model-based approach for the generation of adaptive user interfaces on portable devices
JP2020107020A (en) Program, information processor, and processing method
KR20220122246A (en) System and method for producing homepage in SaaS ENVIRONMENT
CN115878170A (en) Data processing method and device, storage medium and electronic equipment

Legal Events

Date Code Title Description
RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20180703

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20181031

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20190115

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210118

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20211216

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20211221

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220218

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220315

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220328

R151 Written notification of patent or utility model registration

Ref document number: 7060788

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151