JP2010262548A - Data provision method and server - Google Patents
Data provision method and server Download PDFInfo
- Publication number
- JP2010262548A JP2010262548A JP2009114103A JP2009114103A JP2010262548A JP 2010262548 A JP2010262548 A JP 2010262548A JP 2009114103 A JP2009114103 A JP 2009114103A JP 2009114103 A JP2009114103 A JP 2009114103A JP 2010262548 A JP2010262548 A JP 2010262548A
- Authority
- JP
- Japan
- Prior art keywords
- server
- customization
- client
- response data
- data
- 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
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
Abstract
Description
本発明は、データ提供方法およびサーバに関し、特に、クライアントに提供するデータに対してカスタマイズを行う技術に関する。 The present invention relates to a data providing method and a server, and more particularly to a technique for customizing data to be provided to a client.
Software as a Service(SaaS)と呼ばれるソフトウェア機能の提供形態が注目を集めている。SaaSでは、WebサーバがWebアプリとしてソフトウェア機能を提供し(SaaSアプリと呼ぶ)、SaaSユーザはWebブラウザを用いてSaaSアプリを利用する。このような利用形態の元では、複数の企業が一つのSaaSアプリを利用することが想定されるため、企業毎又はユーザ毎にWebアプリを企業やユーザに合わせてカスタマイズすることが望まれている。この場合、既存のWebアプリを修正してカスタマイズ機能を追加したり、新規のWebアプリを開発する際にカスタマイズ機能を追加することは負担が大きい。 A form of providing software functions called Software as a Service (SaaS) is attracting attention. In SaaS, a web server provides a software function as a web application (referred to as a SaaS application), and a SaaS user uses a SaaS application using a web browser. Under such a usage pattern, it is assumed that multiple companies use one SaaS application. Therefore, it is desired to customize the Web application for each company or each user according to the company or user. . In this case, it is burdensome to modify an existing web application to add a customization function or to add a customization function when developing a new web application.
特許文献1記載の技術では、 Webブラウザがネットワークを介してカスタマイズ用データベースにアクセスしてカスタマイズ情報を取得し、そのカスタマイズ情報に基づいてWebブラウザに表示した要素のカスタマイズを実行する技術を開示している。
The technology described in
しかしながら、特許文献1記載の技術では、Webブラウザがネットワークを介してWebサーバやプロキシサーバとは異なるデータベースへアクセスしてカスタマイズデータを取得するため、ネットワーク負荷が大きいという課題があった。また、データベースにアクセスする分カスタマイズされた表示を行うまで時間がかかる課題があった。また、Webブラウザ上に一度表示した要素に対してカスタマイズを施すため、Webブラウザの表示が乱れたように見えることがあるという課題があった。さらに、Webサーバが配信するデータを動的に生成したり、ユーザからの入力を受け付けたりするWebアプリの場合、ユーザからの入力をリポジトリに保存したり、表示したいデータに応じてURLが変更されたり、コンテンツがダイナミックに変更されたりするため、このような場合にはカスタマイズすることが困難であるという課題があった。
However, the technique described in
上記課題を解決するため、本発明は、クライアントと、クライアントとネットワークを介して接続された第1のサーバと、第1のサーバとネットワークを介して接続された第2のサーバと、を備えるシステムにおけるデータ提供方法であって、クライアントが第1のサーバにリクエストを送信するステップと、第1のサーバがクライアントからのリクエストを第2のサーバに送信するステップと、第2のサーバがリクエストに対するレスポンスデータを第1のサーバに送信するステップと、第1のサーバが第2のサーバからのレスポンスデータをクライアントに送信するステップと、を備える。第1のサーバは、クライアントからのカスタマイズ情報に基づいて第2のサーバから受信したレスポンスデータに対してカスタマイズを適用し、カスタマイズを適用したレスポンスデータをクライアントへ送信し、クライアントは、カスタマイズを適用したレスポンスデータを表示する。
In order to solve the above problems, the present invention provides a system including a client, a first server connected to the client via a network, and a second server connected to the first server via the network. The method of providing data in
本発明によれば、ネットワーク負荷を軽減したWebアプリのカスタマイズが可能となる。 According to the present invention, it is possible to customize a web application with a reduced network load.
本発明の実施形態では、WebブラウザとWebアプリを公開するWebサーバの間にプロキシサーバを配し、WebブラウザからWebサーバへのリクエストと、Webサーバからのレスポンスがプロキシサーバを経由するようにする。 In the embodiment of the present invention, a proxy server is arranged between a web browser and a web server that publishes a web application so that requests from the web browser to the web server and responses from the web server pass through the proxy server. .
プロキシサーバがレスポンスを受けると、そのレスポンスに適用すべきカスタマイズ情報が存在するかどうかを確認し、存在しているならばカスタマイズを実施する。各カスタマイズ情報はサーバ、クライアントのどちらで実施するかを示す属性を持つ。 When the proxy server receives the response, it confirms whether there is customization information to be applied to the response, and if it exists, performs customization. Each customization information has an attribute indicating whether it is executed by the server or the client.
サーバ側で実施するカスタマイズ情報であった場合、プロキシサーバで受け取ったレスポンスに対してカスタマイズを施す。 If the customization information is implemented on the server side, the response received by the proxy server is customized.
クライアント側で実行するカスタマイズ情報であった場合、カスタマイズを施すプログラムをレスポンスに埋め込みWebブラウザに送出する。 If the customization information is executed on the client side, the customization program is embedded in the response and sent to the Web browser.
また、レスポンスに対してユーザがさらに変更を加えることができるようにカスタマイズエディタプログラムもレスポンスに埋め込む。 A customized editor program is also embedded in the response so that the user can make further changes to the response.
Webブラウザでは、レスポンスを画面に表示する。レスポンスにクライアント側で実行すべきカスタマイズ情報が含まれているならばそのカスタマイズを実行する。また、カスタマイズエディタのプログラムも実行し、ユーザがカスタマイズ情報を作成できるようにする。 In the Web browser, the response is displayed on the screen. If the response contains customization information that should be executed on the client side, the customization is executed. It also runs a customization editor program to allow the user to create customization information.
また、カスタマイズエディタで作成したカスタマイズ情報に異常があった場合、そのカスタマイズ情報を適用するとカスタマイズエディタでどのような操作も受け付けなくなってしまうことがある。そこで、カスタマイズ情報に状態も含め、カスタマイズ情報を追加又は修正した直後はテスト状態とし、最初にそのカスタマイズ情報を適用するときは無効状態にする。同時に、テスト状態のカスタマイズ情報を適用した場合はレスポンスにこのカスタマイズ情報を確定して良いかどうかを確認する機能も含める。ユーザが確定すると、そのカスタマイズ情報の状態は有効となる。このようにすることで、異常なカスタマイズ情報が適用される回数を一回のみとする。 Also, if there is an abnormality in the customization information created with the customization editor, any operation may not be accepted by the customization editor if the customization information is applied. Therefore, the status is included in the customization information, and immediately after adding or correcting the customization information, the test status is set. At the same time, when the customization information of the test state is applied, a function for confirming whether or not the customization information can be confirmed is included in the response. When the user is confirmed, the state of the customization information becomes valid. In this way, the number of times that the abnormal customization information is applied is limited to one time.
従来はカスタマイズ情報の適用先を特定するためにURLを用いていたが、Webアプリの場合、ユーザからのデータ入力によりページが増加するため、予めURLを知ることは難しいという問題があったが、適用先のURLを正規表現で表したり、適用先のページの中に特定の要素が存在するか否か等の特徴を判定する条件を与えたりすることで適用先を柔軟に表現することを可能とする。 In the past, URLs were used to specify the application destination of customization information, but in the case of web applications, there was a problem that it was difficult to know the URL in advance because the number of pages increased due to data input from the user. It is possible to express the application destination flexibly by expressing the URL of the application destination with a regular expression or by giving conditions for judging whether or not a specific element exists in the application destination page. And
図1に本発明の実施形態の構成図を示す。Webブラウザ111が動作するWebブラウザ処理装置110、Webサーバ131が稼動するWebサーバ処理装置130、プロキシサーバ121が稼動するプロキシサーバ処理装置120が各々ネットワーク100を介して接続している。
FIG. 1 shows a configuration diagram of an embodiment of the present invention. A web
プロキシサーバ121はWebサーバ131が返すレスポンスを加工するレスポンス加工処理部122、ユーザが予め作成したカスタマイズ情報を格納するカスタマイズ情報格納リポジトリ123、レスポンスに埋め込んでユーザがカスタマイズ情報を作成可能とするカスタマイズエディタプログラム124がある。
The
Webサーバ131は、ユーザの入力を受け付けたり、動的にページを生成したりするWebアプリであっても良い。
The
各処理装置、即ちWebブラウザ処理装置110、プロキシサーバ処理装置120、Webサーバ処理装置130は、図2に示すコンピュータ200の構成を備えており、Webブラウザ111、Webサーバ131、プロキシサーバ121はプログラムで実現する。
Each processing device, that is, the Web
図2に一般的なコンピュータ200の構成を示す。ハードディスク203には,プログラムやデータを保存する。ここではハードディスクを例に説明するが、磁気ディスクや不揮発性メモリなどの各種記憶装置であればこれに限られない。中央処理装置202では,これらハードディスク203に蓄えたプログラムやデータを必要に応じてメモリ201に読み込み、中央処理装置202を用いて処理する。ビデオメモリ204は,表示に用いるメモリであり,ビデオメモリ204への変更は,表示装置205に反映する。通信装置206は、ネットワークを介して別のコンピュータと通信するために利用する。通信により、得られたプログラム又はデータは中央処理装置202を用いてハードディスク203に保存したり、メモリ201に格納して処理したりする。以下の図面で説明する本実施形態の処理動作も、各処理装置における中央処理装置202が各処理動作を実行するプログラムやデータをメモリ201に読み込み、必要な処理を実行したり、通信装置206を介して他の処理装置と通信する。
FIG. 2 shows a configuration of a
なお、図1のレスポンス加工処理部122はハードウェアでもソフトウェアでも良い。ソフトウェアである場合には、上述のように図2の中央処理装置202によって必要な処理が実行される。また、カスタマイズエディタプログラム124も図2の中央処理装置202によって必要な処理が実行される。カスタマイズ情報格納リポジトリ123は、記憶装置であるハードディスク203に格納される。
The
また、図1では簡単にするために各々Webブラウザ111、Webサーバ131、プロキシサーバ121が一つずつであるシステムを示しているが、通常のWebシステムでは各々複数存在することが一般的である。Webサーバ131が複数存在するときは、各Webサーバ131に対してプロキシサーバ121を配しても良いし、一つのプロキシサーバ121を通して複数のWebサーバ131にアクセスするように配置しても良い。一つのプロキシサーバ121を通して複数のWebサーバ131にアクセスする場合には、アクセス先となるWebサーバ131に関する情報がプロキシサーバ121に送信され、当該情報に基づいてプロキシサーバ121からWebサーバ131へのアクセスが実行される。
Further, FIG. 1 shows a system in which there is one
また、図1ではWebブラウザ111、Webサーバ131、プロキシサーバ121を別々の処理装置で稼動させているが、同じ処理装置上で稼動させても良い。
In FIG. 1, the
プロキシサーバ121はリバースプロキシサーバとして稼動しても良いし、フォワードプロキシサーバとして稼動しても良い。
The
リバースプロキシサーバではWebサーバへの振り分けの設定を予め施しておき、Webブラウザ111がリバースプロキシサーバのIPアドレス宛にリクエストを出すと適切なWebサーバ131にリクエストを転送し、Webサーバ131からのレスポンスをWebブラウザ111に戻す。プロキシサーバ121ではリクエスト又はレスポンスに対して適当な処理を施すことができる。
In the reverse proxy server, the distribution settings to the web server are set in advance. When the
フォワードプロキシサーバではWebブラウザ111にフォワードプロキシサーバのIPアドレスを設定し、Webブラウザ111からWebサーバ131に出すリクエスト、Webサーバ131から受けるレスポンスは自動的にフォワードプロキシサーバを経由する。フォワードプロキシサーバでは、リクエスト、レスポンスに対して適当な処理を実施することができる。図3にWebサーバ131が返すレスポンスに対して適用するカスタマイズ情報があるときに、そのカスタマイズ情報を適用する処理の流れを示す。
In the forward proxy server, the IP address of the forward proxy server is set in the
事前にWebサーバ131を利用するユーザ301が誰であるかを、ログイン処理等を用いて判別しているものとする。
It is assumed that the
ユーザ301がリンククリック等302を行うと、Webブラウザ111はプロキシサーバ121にリクエスト303を送出し、プロキシサーバ121も同様にリクエスト304をWebサーバ131に送出する。Webサーバ131にリクエスト304を送出する。Webサーバ131がリクエスト304を受け取ると、リクエスト304に応じた処理305を実施し、レスポンス306を返す。
When the
プロキシサーバ121がレスポンス306を受けると、そのレスポンス306に対してレスポンス加工処理307を実施し、加工したレスポンス308を返す。
When the
Webブラウザ111が加工したレスポンス308を受け取るとクライアント処理309としてレスポンスに含まれるHTMLを表示したり含まれるプログラムを実行したりする。Webブラウザ111はその結果を表示310し、ユーザ301は閲覧する。
When the
図4にレスポンス加工処理307の流れを示す。
FIG. 4 shows the flow of the
最初にWebサーバ131が返したレスポンスを解析する(401)。Webサーバ131はレスポンスとしてHTMLデータを返すことが一般的であるが、このHTMLデータはテキストデータであり、プログラムで加工するのが困難である。そこで、HTMLデータに含まれる要素をDocument Object Model(DOM)等のオブジェクトにすることで加工し易くする。ここではDOMにしたこととして説明する。
First, the response returned by the
次に、カスタマイズ情報格納リポジトリ123からカスタマイズ情報を検索する(402)。以下のステップの説明に先立ち、カスタマイズ情報について図5を用いて説明する。 Next, the customization information is searched from the customization information storage repository 123 (402). Prior to the description of the following steps, the customization information will be described with reference to FIG.
カスタマイズ情報は、Webサーバ131のレスポンスをどのようにカスタマイズすべきかを示す情報である。カスタマイズ情報は図5に示すカスタマイズ情報格納リポジトリ123に格納する。図5の各行が一つのカスタマイズ情報である。各カスタマイズ情報は、ID501、適用条件502、適用組織・ユーザ503、カスタマイズ内容504、状態505、実行箇所506を持つ。
The customization information is information indicating how the response of the
ID501はカスタマイズ情報を一意に識別するIDである。 ID 501 is an ID for uniquely identifying customization information.
適用条件502は、カスタマイズ内容504を適用するHTMLの条件を格納する。以下のような適用条件が考えられる。
The
(1)リクエスト先URLの条件・・・リクエスト先のURLを適用条件として利用する。URLは固定で記述するだけでなく、正規表現で記述し、その正規表現に合うURLのときにだけカスタマイズ内容を適用するようにしても良い。 (1) Request destination URL condition: Request destination URL is used as an application condition. The URL may be described not only by a fixed expression but also by a regular expression, and the customization contents may be applied only when the URL matches the regular expression.
(2)HTMLに含まれる要素の有無・・・HTMLに含まれる要素の有無を適用条件として利用する。例えば、HTML内のIDがtable_idである表が存在することを条件とする場合、その要素を取得するためにXPathを用い、存在の有無を確認する方法が考えられる。XPathの例としては、例えば「//table[@id=’table_id’]」などが考えられる。 (2) Presence / absence of elements contained in HTML: Presence / absence of elements contained in HTML is used as an application condition. For example, if there is a condition that there is a table whose ID in the HTML is table_id, there is a method of using XPath to acquire the element and checking the existence. As an example of XPath, for example, “// table [@ id =’ table_id ’]” can be considered.
(3)HTMLに含まれる要素の値・・・HTMLに含まれる要素の値が特定の値だったときにのみカスタマイズ内容を適用する。HTMLに含まれる要素の値を取得する方法は上記同様XPathを用いる方法が考えられる。上記複数の条件をand/orで組み合わせて適用条件としても良い。 (3) Value of element included in HTML: The customization content is applied only when the value of the element included in HTML is a specific value. As a method for acquiring the value of an element included in HTML, a method using XPath can be considered as described above. The plurality of conditions may be combined with and / or as application conditions.
適用組織・ユーザ503は、Webサーバ131のユーザ301の属性に応じてカスタマイズ内容を適用するかどうかを判定する。ユーザ301の属性としては、例えば、組織名、部・課名、ユーザ名などが考えられる。
The application organization /
各属性が特定の値のときにカスタマイズ内容を適用するように設定する。また、各ユーザ301の上記ユーザ属性は、別途ユーザ管理リポジトリ等を用いて管理していることを想定する。
Set to apply customization when each attribute has a specific value. Further, it is assumed that the user attribute of each
カスタマイズ内容504は、HTMLデータに対するカスタマイズの内容である。カスタマイズ内容504は、実行可能なプログラムで記述しても良いし、カスタマイズ定義として記述して別のプログラムでカスタマイズ定義を解釈しながらカスタマイズを実施するように構成しても良い。
The
状態505は、カスタマイズ内容504の適用状態を示しており、以下のような状態505を持つことが考えられる。
A
(1)test・・・テスト状態であることを表す。カスタマイズ情報を新規に作成した直後はテスト状態となる。詳しくは後述する。 (1) test: represents a test state. Immediately after creating new customization information, it is in a test state. Details will be described later.
(2)available・・・有効状態であることを表す。 (2) available: Indicates that the state is valid.
(3)disable・・・無効状態であることを表す。 (3) disable: Indicates an invalid state.
なお、どのように状態が移り変わるかについては後述する。 Note that how the state changes will be described later.
実行箇所506はカスタマイズを実行する箇所を表す。以下が考えられる。
An
(1)server・・・プロキシサーバ121で実行することを表す。Webサーバ131が返すHTML内に存在する要素をカスタマイズする場合、serverを設定すれば良い。
(1) server... Indicates execution by the
(2)client・・・Webブラウザ111で実行するカスタマイズ情報であることを表す。Webブラウザ111でHTML内に含まれるプログラムを実行したときに出現する要素をカスタマイズする場合、clientを設定し、その要素が出現後、カスタマイズを実施するようにする。
(2) client: represents customization information executed by the
また、server、clientを明示的に記述するのではなく、条件で記述する方法も考えられる。例えば、URLが特定の正規表現に合致するとき、サーバプロキシで受け取ったレスポンスに特定の要素が存在するとき、特定の要素が特定の値を持つとき、等の条件を組み合わせ、条件が成り立つ場合はserverで処理し、成り立たない場合はclientとして処理する、等と、プロキシサーバ121内で判定しても良い。
In addition, it is possible to write by conditions instead of explicitly describing server and client. For example, when a URL matches a specific regular expression, a specific element exists in the response received by the server proxy, a specific element has a specific value, etc. It may be determined in the
ここで、図4の説明に戻る。カスタマイズ情報を検索する処理402では、解析したレスポンスデータ、利用しているユーザ301、状態505を参照し、適用すべきカスタマイズ情報を探す処理である。
Here, the description returns to FIG. The
次に、カスタマイズ情報格納リポジトリ123内の各行を取得する(403)。具体的には次の3つの判定を実施し、全てに適合するカスタマイズ情報を取得する。即ち、URLや解析したレスポンスが適用条件に適合するかを評価し判定、現在ログインしているユーザ名とユーザの属性情報が、適用組織・ユーザに適合するかを評価し判定、状態がtest、availableであるかを判定、の3つの判定である。全てのカスタマイズ情報について検索処理を終えたら、取得した各カスタマイズ情報について以下の処理を実施する。
Next, each row in the customization
サーバ側カスタマイズ情報であるかどうかを判定し(404)、サーバ側カスタマイズ情報であればサーバ側カスタマイズを実行する(405)。カスタマイズを実行すると、レスポンスを解析する処理401で作成したDOMを変更することになる。
It is determined whether the server-side customization information is present (404). If the server-side customization information is obtained, server-side customization is executed (405). When customization is executed, the DOM created in the
次に、クライアント側カスタマイズ情報が存在するか判定し(406)、存在する場合にはDOMにクライアント側カスタマイズ情報を埋め込む(407)。カスタマイズ情報の状態がtestであるかを判定し(408)、testであれば、カスタマイズ情報可能リポジトリの本カスタマイズ情報の状態をdisableにする処理409を実施し、確定確認を行う処理を埋め込む(410)。確定確認については図10の画面を用いて後で説明する。
Next, it is determined whether or not the client side customization information exists (406). If it exists, the client side customization information is embedded in the DOM (407). It is determined whether the status of the customization information is test (408). If it is test, the
検索した結果得られた全カスタマイズ情報について処理し終えたなら(411)、DOMにテキストエディタプログラムを埋め込む(412)。カスタマイズエディタプログラム124はWebブラウザで実行可能なJavaScript(登録商標)等のプログラムで実現する。
When all the customization information obtained as a result of the search has been processed (411), a text editor program is embedded in the DOM (412). The
最後に、DOMをテキストデータに変換する処理413を実行し、Webブラウザに加工したレスポンスデータ308を返す。
Finally, processing 413 for converting the DOM into text data is executed, and
図6にクライアント処理の流れを示す。クライアントはWebブラウザであり、HTMLのレンダリング機能及びJavaScript(登録商標)の実行機能を持つものとする。まず、HTMLのレンダリング機能を用い、レスポンスに含まれるHTMLを表示する(601)。Webサーバ131が返す本来のレスポンスにJavaScript(登録商標)コードが含まれているならそれも実行することでWebブラウザ内にページを表示する。
Fig. 6 shows the flow of client processing. The client is a Web browser and has an HTML rendering function and a JavaScript (registered trademark) execution function. First, the HTML included in the response is displayed using the HTML rendering function (601). If a JavaScript (registered trademark) code is included in the original response returned by the
レスポンスにクライアント側カスタマイズ情報が存在するなら(602)、JavaScript(登録商標)の実行機能を用いてクライアント側カスタマイズを実行する(603)ことにより、Webブラウザに表示したページに修正を加える。最後に、カスタマイズエディタを実行する(604)。カスタマイズエディタもJavaScript(登録商標)により実現されていることを想定する。 If the client side customization information exists in the response (602), the client side customization is executed using the JavaScript (registered trademark) execution function (603), thereby correcting the page displayed on the Web browser. Finally, the customization editor is executed (604). It is assumed that the customization editor is also realized by JavaScript (registered trademark).
以上の処理の結果、生成されるWebページの表示イメージを図7に示す。ページの右下にカスタマイズボタン701を新たに追加している。これがカスタマイズエディタへの入り口となる。このようにカスタマイズエディタへの入り口は普段は邪魔にならないように目立たない位置に配置する。
A display image of the Web page generated as a result of the above processing is shown in FIG. A customize
カスタマイズボタン701を押すと、図8に示すようにカスタマイズメニュー801を表示する。カスタマイズの様子を、社員情報一覧テーブル806内の一番右の操作列を削除する作業を例に説明する。
When the customize
カスタマイズメニュー801の「テーブル変更」のサブメニューから「列の削除」を選択すると、列の削除ダイアログ802を表示する。削除したい範囲803を選択し、「適用条件」、「実行箇所」、「公開範囲」を設定する。
When “delete column” is selected from the “change table” submenu of the customize
OKボタン804を押下したときの処理の流れを図9に示す。
FIG. 9 shows the flow of processing when the
カスタマイズ指示901を出すと、Webブラウザ111からユーザ301が設定したカスタマイズ情報902をプロキシサーバ121に送出する。
When the
プロキシサーバ121はカスタマイズ情報格納処理903を行いカスタマイズ情報格納リポジトリ123に、カスタマイズ情報を格納する。このとき、カスタマイズ情報の状態はtestとする。
The
次に、Webブラウザ111で現在表示しているページをリロードする。現在と同じURLに対してWebブラウザからリクエスト303を送出する。プロキシサーバ121を介してWebサーバにリクエスト304が到達すると、Webサーバ131における処理305を行い、レスポンス306を返す。プロキシサーバ121がレスポンス306を受け取ると、レスポンス加工処理307を実施する。レスポンス加工処理は図4と同様である。
Next, the page currently displayed on the
今回は、状態がtestであるカスタマイズ情報が含まれており、カスタマイズ情報を検索する処理において、状態がtestであるカスタマイズ情報を取得したらそのカスタマイズ情報の状態をdisableにする。 This time, customization information whose state is test is included. In the process of searching for customization information, if customization information whose state is test is acquired, the state of the customization information is disabled.
次に、加工したレスポンス308をWebブラウザ111に送出し、図6で示したクライアント処理310を実施することでユーザに対してカスタマイズ結果を表示310する。(確定ボタン押下904以降のシーケンスについての説明は後述する。)
カスタマイズ結果、表示する画面の例を図10に示す。削除を指定した列803を削除したページを表示し、「カスタマイズを確定してよろしいですか?」というメッセージを表示した確定確認ダイアログ1001を表示することで確定確認を行う。キャンセルボタンを押すと現在のページをリロードする。リロード時は列の削除のカスタマイズがdisable状態であるため、カスタマイズは適用されない。
Next, the processed
An example of the screen to be displayed as a result of customization is shown in FIG. Confirmation confirmation is performed by displaying the page in which the
図9後半部分を用いて、確定ボタン押下時の処理を説明する。確定ボタン押下904を行うとWebブラウザ111は確定指示905をプロキシサーバに対して実施する。確定したいカスタマイズ情報がどれであるのかを示すIDが同時に送信されるように設定してあるものとする。プロキシサーバ121では、確定処理として、カスタマイズ情報格納リポジトリ123のID501に対応するカスタマイズ情報の状態505をavailableに変更する。
The process when the confirm button is pressed will be described using the latter half of FIG. When the confirmation button is pressed 904, the
以上の処理により、プロキシサーバ121を通して、適用条件、適用組織・ユーザに合うページを読み込んだときに列の削除のカスタマイズが実施されるようになる。
With the above processing, column deletion customization is performed when a page suitable for the application condition and application organization / user is read through the
これまでは、Webサーバ131が出力したレスポンスに対するカスタマイズのみを説明したが、プロキシサーバ121がリクエスト加工処理部を持ち、リクエストに対してカスタマイズを実施しても良い。例えば、Webブラウザ111でユーザ301が入力したデータを、プロキシサーバ121で適切に変換し、Webサーバ131に送信する処理が考えられる。具体例として、ユーザはWebブラウザ111に、社員の氏名を入力すると、リクエスト加工処理部で社員の氏名を社員番号に変換してWebサーバ131に送出し、Webサーバ131では社員番号を受け付けて処理する等が考えられる。
So far, only the customization for the response output by the
なお、ここではWebブラウザ111にWebサーバ131からのレスポンスを表示させた後にカスタマイズする例を示しているが、いったんカスタマイズした後はカスタマイズ情報をプロキシサーバ121のカスタマイズ情報格納リポジトリ123に格納しておき、その後はWebブラウザ111からの設定処理をすることなく自動的にカスタマイズした内容をWebブラウザ111で表示することが可能である。
In this example, customization is performed after the response from the
本実施例では、カスタマイズの例として、テーブルからの列の削除を用いて説明したが、他にも図11に示すようなカスタマイズが考えられる。 In this embodiment, as an example of customization, description has been made using deletion of a column from a table, but customization as shown in FIG. 11 is also conceivable.
図11においてカスタマイズ種類1101はカスタマイズメニュー801に表示する名前を表し、説明1102はカスタマイズの説明を表し、ユーザ設定情報1103はカスタマイズエディタを通してユーザが入力する情報を表し、例1104はカスタマイズの具体例を表す。
In FIG. 11, the
各カスタマイズ種類1101について以下で説明する。
Each
文字列変更は、ページ内に存在する特定の文字列を別の文字列に変更するカスタマイズである。 The character string change is customization for changing a specific character string existing in the page to another character string.
属性変更はページ内に存在する要素の属性を変更するカスタマイズである。色やフォントサイズなどの属性を変更できる。 Attribute change is customization that changes the attributes of elements that exist in the page. You can change attributes such as color and font size.
入力フォーム変更は、ユーザからの入力を受け付ける入力フォームを変更するカスタマイズである。 The input form change is customization for changing an input form that receives input from the user.
テーブル変更は、テーブル(表)の見た目、操作性を変更するカスタマイズである。 Table change is customization that changes the appearance and operability of a table.
閲覧権限追加は、ページの閲覧権限を追加するカスタマイズである。 The addition of browsing authority is customization that adds browsing authority for a page.
カスタマイズ権限追加は、カスタマイズ機能毎に利用権限を設定するカスタマイズである。 The customization authority addition is customization for setting the use authority for each customization function.
カスタマイズ機能追加は、プログラム又は複数のカスタマイズ機能を組み合わせて新たにカスタマイズ機能を追加するカスタマイズである。 The customization function addition is customization in which a customization function is newly added by combining a program or a plurality of customization functions.
要素追加は、ページに新たな要素を追加するカスタマイズである。 Element addition is customization that adds a new element to the page.
要素削除は、ページ内の要素を削除するカスタマイズである。 Element deletion is customization that deletes an element in a page.
マッシュアップは、別のWebサーバやWebアプリから情報を取得し、カスタマイズ対象のページに埋め込むカスタマイズである。 A mashup is a customization that obtains information from another web server or web application and embeds it in the page to be customized.
プログラムは、ページのカスタマイズを実現するプログラムを記述することで実現するカスタマイズする。 The program is customized by describing a program that realizes page customization.
管理は、カスタマイズではなく、既に施したカスタマイズの状態を変更したり、公開範囲を変更したり、カスタマイズ情報を削除したりする機能である。 Management is not a customization, but a function that changes the state of customization already applied, changes the scope of disclosure, and deletes customization information.
カスタマイズ機能追加についてより詳細に説明する。カスタマイズ機能追加イメージを図12に示す。 The customization function addition will be described in more detail. Figure 12 shows an image of adding the customization function.
画面のテーマを設定するカスタマイズ機能を作成する様子を例に説明する。テーマとは画面の色調を表し、例えば春を選択すると画面の背景をピンクにし、文字を赤に変更する等の変更がなされるものとする。 An example of creating a customization function for setting a screen theme will be described. The theme represents the color of the screen. For example, when spring is selected, the background of the screen is changed to pink and the characters are changed to red.
カスタマイズ機能追加ダイアログ1200を表示し、ユーザ301はカスタマイズ機能を定義する。メニュー名1201には、どのような名前でカスタマイズメニュー801に追加するのかを設定する。ユーザ設定項目1202は、このカスタマイズ機能を利用するユーザ301が追加するカスタマイズ機能を利用するにあたって設定する項目を表す。項目名、入力フォーム、変数名、型で構成する。項目名は、質問の名前である。入力フォームでは、ユーザからの入力方法を指定する。本例では、春、夏、秋、冬の何れかを選択できるように設定している。変数名は、カスタマイズを実行するプログラムで利用するときの変数名である。型は入力するデータの型である。
The customization
カスタマイズプログラム1203はカスタマイズプログラムを設定する欄であり、ファイルで指定することを想定する。ここを編集可能なテキストエリア等にすることによりカスタマイズ機能追加ダイアログ1200内で直接コードを変更する方法も考えられる。
The
既存のカスタマイズ機能をプログラムで容易に利用できるライブラリとして提供することで簡単にカスタマイズ機能を作成できるようにする。今回は、属性変更によりHTMLの各要素の背景色及び、各文字の色を変更するため、カスタマイズプログラムから既存の属性変更機能を簡単に活用できるようにライブラリ化しておくと良い。 The customization function can be easily created by providing the existing customization function as a library that can be easily used by the program. This time, since the background color of each element of HTML and the color of each character are changed by changing the attribute, it is better to make a library so that the existing attribute changing function can be easily used from the customization program.
作成したカスタマイズ機能を登録すると、図13に示すようにカスタマイズメニュー801にテーマ変更メニュー1302を追加し、これを選択するとテーマ変更ダイアログ1300が出現する。テーマ変更ダイアログ1300では、設定項目1202の設定に従って春、夏、秋、冬を選択する入力フォーム1301が出現する。適当なテーマを選択してOKボタン1303を押下するとテーマが変更され、ページの彩色が変わる。
When the created customization function is registered, a theme change menu 1302 is added to the customize
以上のように、本発明の実施形態により、既存のアプリをカスタマイズ可能にすることができる。さらに、プロキシサーバとWebブラウザのどちらでもカスタマイズを実施可能とすることで、従来Webブラウザで行っていたカスタマイズの量をなくす又は減らすことができるため、Webブラウザで一度表示した要素に変更を加える場合に起こりがちな画面のちらつきを防ぐことができる。 As described above, according to the embodiment of the present invention, an existing application can be customized. In addition, by enabling customization on both the proxy server and the Web browser, the amount of customization that was previously performed on the Web browser can be eliminated or reduced. The screen flickering that tends to occur can be prevented.
また、Webブラウザにカスタマイズのために必要な情報をプロキシサーバで埋め込んだ上でWebブラウザにレスポンスを返すため、従来技術に比べネットワーク負荷を軽減できる。 In addition, the information required for customization in the Web browser is embedded in the proxy server and the response is returned to the Web browser, so the network load can be reduced compared to the conventional technology.
また、カスタマイズ情報の状態を管理して、異常があるカスタマイズ情報が適用されることが一回のみとすることで、容易に異常状態から復帰できるようになる。 In addition, by managing the status of the customization information and applying the customized information having an abnormality only once, it is possible to easily recover from the abnormal state.
さらに、カスタマイズの適用先を柔軟に表現できるようにすることで様々なWebアプリのカスタマイズに適用可能となる。 Furthermore, it is possible to apply to customization of various Web applications by allowing the application destination of customization to be expressed flexibly.
100 ネットワーク
110 Webブラウザ処理装置
111 Webブラウザ
120 プロキシサーバ処理装置
121 プロキシサーバ
122 レスポンス加工処理部
123 カスタマイズ情報格納リポジトリ
124 カスタマイズエディタプログラム
130 Webサーバ処理装置
131 Webサーバ
200 コンピュータ
201 メモリ
202 中央処理装置
203 ハードディスク
204 ビデオメモリ
205 表示装置
206 通信装置
501 ID欄
502 適用条件欄
503 適用組織・ユーザ欄
504 カスタマイズ内容欄
505 状態欄
506 実行箇所欄
701 カスタマイズボタン
801 カスタマイズメニュー
802 列の削除ダイアログ
803 削除する範囲
804 OKボタン
805 キャンセルボタン
1001 確定確認ダイアログ
1002 確定ボタン
1003 キャンセルボタン
1200 カスタマイズ機能追加ダイアログ
1201 メニュー名欄
1202 ユーザ設定項目欄
1203 カスタマイズプログラム設定欄
1204 OKボタン
1205 キャンセルボタン
1300 テーマ変更ダイアログ
1301 テーマ名選択
1302 テーマ変更メニュー
1303 OKボタン
1304 キャンセルボタン
100 network
110 Web browser processor
111 Web browser
120 Proxy server processing unit
121 Proxy server
122 Response processing section
123 Customized information storage repository
124 Customized editor program
130 Web server processor
131 Web server
200 computers
201 memory
202 Central processing unit
203 hard disk
204 Video memory
205 Display device
206 Communication equipment
501 ID field
502 Applicable condition column
503 Applicable organization / user field
504 Customized content field
505 Status column
506 Execution location column
701 Customize button
801 Customize menu
802 Delete column dialog
803 Range to delete
804 OK button
805 Cancel button
1001 Confirmation confirmation dialog
1002 Confirm button
1003 Cancel button
1200 Customize function addition dialog
1201 Menu name field
1202 User setting item field
1203 Customized program setting field
1204 OK button
1205 Cancel button
1300 Theme change dialog
1301 Select theme name
1302 Theme change menu
1303 OK button
1304 Cancel button
Claims (14)
前記クライアントが前記第1のサーバにリクエストを送信するステップと、
前記第1のサーバが前記クライアントからのリクエストを前記第2のサーバに送信するステップと、
前記第2のサーバが前記リクエストに対するレスポンスデータを前記第1のサーバに送信するステップと、
前記第1のサーバが前記第2のサーバからのレスポンスデータを前記クライアントに送信するステップと、を備え、
前記第1のサーバは、前記クライアントからのカスタマイズ情報に基づいて前記第2のサーバから受信したレスポンスデータに対してカスタマイズを適用し、前記カスタマイズを適用したレスポンスデータを前記クライアントへ送信し、
前記クライアントは、前記カスタマイズを適用したレスポンスデータを表示することを特徴とするデータ提供方法。 A data providing method in a system comprising a client, a first server connected to the client via a network, and a second server connected to the first server via a network,
The client sending a request to the first server;
The first server sending a request from the client to the second server;
The second server sending response data to the request to the first server;
The first server sending response data from the second server to the client, and
The first server applies customization to the response data received from the second server based on customization information from the client, and sends the response data to which the customization is applied to the client;
The data providing method, wherein the client displays response data to which the customization is applied.
前記第1のサーバは、前記クライアントから送信されたカスタマイズ情報を予め記憶し、
前記予め記憶されたカスタマイズ情報に基づいて前記第2のサーバから受信したレスポンスデータに対してカスタマイズを適用することを特徴とするデータ提供方法。 The data providing method according to claim 1,
The first server stores in advance customization information transmitted from the client,
A data providing method, wherein customization is applied to response data received from the second server based on the customization information stored in advance.
前記クライアントは、前記第1のサーバとは異なるカスタマイズ情報を格納するデータベースにアクセスすることなく、前記第1のサーバに記憶されたカスタマイズ情報に基づいてカスタマイズを適用されたレスポンスデータを受信することを特徴とするデータ提供方法。 The data providing method according to claim 2,
The client receives response data to which customization is applied based on customization information stored in the first server without accessing a database storing customization information different from that of the first server. A characteristic data providing method.
前記第1のサーバは、前記第2のサーバからのレスポンスデータにカスタマイズエディタプログラムを付加して前記クライアントに送信し、
前記クライアントは、前記カスタマイズエディタプログラムを実行し、前記カスタマイズエディタプログラムを通じてユーザにより入力されたカスタマイズ情報を前記第1のサーバへ送信することを特徴とするデータ提供方法。 In the data provision method in any one of Claim 1 to 3,
The first server adds a customized editor program to the response data from the second server and sends it to the client,
The data providing method, wherein the client executes the customization editor program and transmits customization information input by a user through the customization editor program to the first server.
前記クライアントは、Webアプリを実行するWebブラウザであり、
前記第1のサーバは、プロキシサーバであり、
前記第2のサーバは、前記Webアプリを提供するWebサーバであることを特徴とするデータ提供方法。 In the data provision method in any one of Claim 1 to 4,
The client is a web browser that executes a web application,
The first server is a proxy server;
The data providing method, wherein the second server is a web server that provides the web application.
前記クライアントまたは前記サーバとネットワークを介して通信するための通信部と、
前記クライアントまたは前記サーバから前記通信部を介して受信したデータを記憶する記憶部と、
前記通信部と前記記憶部とを制御する演算部と、を備え、
前記通信部は、前記クライアントから送信された前記サーバへのリクエストを受信し、受信した前記リクエストを前記サーバへ送信し、前記サーバから前記リクエストを受けて送信されたレスポンスデータを受信し、
前記演算部は、前記クライアントからのカスタマイズ情報に基づいて前記サーバから受信したレスポンスデータに対してカスタマイズを実行し、
前記通信部は、前記カスタマイズを適用したレスポンスデータを前記クライアントへ送信することを特徴とする中間サーバ。 An intermediate server connected to the client and server via a network,
A communication unit for communicating with the client or the server via a network;
A storage unit for storing data received from the client or the server via the communication unit;
An arithmetic unit that controls the communication unit and the storage unit,
The communication unit receives a request to the server transmitted from the client, transmits the received request to the server, receives response data transmitted in response to the request from the server,
The arithmetic unit performs customization on the response data received from the server based on customization information from the client,
The intermediate server, wherein the communication unit transmits response data to which the customization is applied to the client.
前記記憶部は、前記クライアントから送信されたカスタマイズ情報を予め記憶し、
前記演算部は、前記予め記憶されたカスタマイズ情報に基づいて前記サーバから受信したレスポンスデータに対してカスタマイズを実行することを特徴とする中間サーバ。 The intermediate server according to claim 6,
The storage unit stores in advance customization information transmitted from the client,
The intermediate server characterized in that the arithmetic unit performs customization on the response data received from the server based on the customization information stored in advance.
前記通信部は、前記サーバからのレスポンスデータにカスタマイズエディタプログラムを付加して前記クライアントに送信することを特徴とする中間サーバ。 The intermediate server according to claim 6 or 7,
The intermediate server, wherein the communication unit adds a customized editor program to response data from the server and transmits the response data to the client.
前記クライアントは、Webアプリを実行するWebブラウザであり、
前記サーバは、Webアプリを提供するWebサーバであり、
前記中間サーバは、プロキシサーバであることを特徴とする中間サーバ。 In the intermediate server according to any one of claims 6 to 8,
The client is a web browser that executes a web application,
The server is a web server that provides a web application,
The intermediate server is a proxy server.
前記クライアントが前記第1のサーバにリクエストを送信するステップと、
前記第1のサーバが前記クライアントからのリクエストを前記第2のサーバに送信するステップと、
前記第2のサーバが前記リクエストに対するレスポンスデータを前記第1のサーバに送信するステップと、
前記第1のサーバが前記第2のサーバからのレスポンスデータを前記クライアントに送信するステップと、を備え、
前記第1のサーバまたは前記クライアントが、前記レスポンスデータをカスタマイズするための情報および前記カスタマイズを前記第1のサーバまたは前記クライアントのいずれで実行するかを示す情報を含むカスタマイズ情報に基づいて、前記レスポンスデータに対してカスタマイズを実行し、
前記クライアントは、前記カスタマイズが適用されたレスポンスデータを表示することを特徴とするデータ提供方法。 A data providing method in a system comprising a client, a first server connected to the client via a network, and a second server connected to the first server via a network,
The client sending a request to the first server;
The first server sending a request from the client to the second server;
The second server sending response data to the request to the first server;
The first server sending response data from the second server to the client, and
The response based on customization information including information for the first server or the client to customize the response data and information indicating whether the customization is executed by the first server or the client. Perform customizations on the data,
The data providing method, wherein the client displays response data to which the customization is applied.
前記カスタマイズ情報が、前記第1のサーバでカスタマイズを実行すべきことを示す場合には、前記第1のサーバが前記レスポンスデータに対してカスタマイズを実行し、前記カスタマイズを実行したレスポンスデータを前記クライアントに送信し、
前記カスタマイズ情報が、前記クライアントでカスタマイズを実行すべきことを示す場合には、前記クライアントが前記レスポンスデータに対してカスタマイズを実行することを特徴とするデータ提供方法。 The data providing method according to claim 10,
When the customization information indicates that customization is to be executed on the first server, the first server executes customization on the response data, and the response data on which the customization has been executed is sent to the client. To
When the customization information indicates that customization is to be executed at the client, the client executes customization on the response data.
前記カスタマイズ情報は、前記クライアントから前記第1のサーバへ予め送信され、
前記カスタマイズ情報が、前記第1のサーバでカスタマイズを実行すべきことを示す場合には、前記第1のサーバが前記レスポンスデータに対してカスタマイズを実行し、前記カスタマイズを実行したレスポンスデータを前記クライアントに送信し、
前記カスタマイズ情報が、前記クライアントでカスタマイズを実行すべきことを示す場合には、前記クライアントが前記レスポンスデータに対してカスタマイズを実行することを特徴とするデータ提供方法。 The data providing method according to claim 11,
The customization information is transmitted in advance from the client to the first server,
When the customization information indicates that customization is to be executed on the first server, the first server executes customization on the response data, and the response data on which the customization has been executed is sent to the client. To
When the customization information indicates that customization is to be executed at the client, the client executes customization on the response data.
前記第1のサーバは、前記第2のサーバからのレスポンスデータにカスタマイズエディタプログラムを付加して前記クライアントに送信し、
前記クライアントは、前記カスタマイズエディタプログラムを実行し、前記カスタマイズエディタプログラムを通じてユーザにより入力されたカスタマイズ情報を前記第1のサーバへ送信することを特徴とするデータ提供方法。 The data providing method according to claim 11 or 12,
The first server adds a customized editor program to the response data from the second server and sends it to the client,
The data providing method, wherein the client executes the customization editor program and transmits customization information input by a user through the customization editor program to the first server.
前記クライアントは、Webアプリを実行するWebブラウザであり、
前記第1のサーバは、プロキシサーバであり、
前記第2のサーバは、前記Webアプリを提供するWebサーバであることを特徴とするデータ提供方法。 In the data provision method in any one of Claim 10 to 13,
The client is a web browser that executes a web application,
The first server is a proxy server;
The data providing method, wherein the second server is a web server that provides the web application.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009114103A JP5393242B2 (en) | 2009-05-11 | 2009-05-11 | Data providing method and intermediate server device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009114103A JP5393242B2 (en) | 2009-05-11 | 2009-05-11 | Data providing method and intermediate server device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010262548A true JP2010262548A (en) | 2010-11-18 |
JP5393242B2 JP5393242B2 (en) | 2014-01-22 |
Family
ID=43360547
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009114103A Expired - Fee Related JP5393242B2 (en) | 2009-05-11 | 2009-05-11 | Data providing method and intermediate server device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5393242B2 (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101195943B1 (en) | 2010-11-19 | 2012-10-29 | (주)공영디비엠 | Method for service of multi-tenant based database as a service |
JP2015064635A (en) * | 2013-09-24 | 2015-04-09 | 日本電気株式会社 | Information processing system, processing device, distributed processing method, and program |
JP2016001382A (en) * | 2014-06-11 | 2016-01-07 | 株式会社エヌ・ティ・ティ・データ | Web page providing system, web page providing method, program, and communication device |
JP2016045624A (en) * | 2014-08-21 | 2016-04-04 | Necフィールディング株式会社 | Information processing device, information processing system, information processing method, and program |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000222324A (en) * | 1999-01-26 | 2000-08-11 | Internatl Business Mach Corp <Ibm> | Web page customization system |
JP2003099352A (en) * | 2001-09-20 | 2003-04-04 | Ocha No Gyokuroen:Kk | Information-processing device and information-processing program |
JP2005242961A (en) * | 2004-02-27 | 2005-09-08 | Takayuki Ito | Information sharing system, and web page editing program and web page editing method from web browser used therefor |
-
2009
- 2009-05-11 JP JP2009114103A patent/JP5393242B2/en not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000222324A (en) * | 1999-01-26 | 2000-08-11 | Internatl Business Mach Corp <Ibm> | Web page customization system |
JP2003099352A (en) * | 2001-09-20 | 2003-04-04 | Ocha No Gyokuroen:Kk | Information-processing device and information-processing program |
JP2005242961A (en) * | 2004-02-27 | 2005-09-08 | Takayuki Ito | Information sharing system, and web page editing program and web page editing method from web browser used therefor |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101195943B1 (en) | 2010-11-19 | 2012-10-29 | (주)공영디비엠 | Method for service of multi-tenant based database as a service |
JP2015064635A (en) * | 2013-09-24 | 2015-04-09 | 日本電気株式会社 | Information processing system, processing device, distributed processing method, and program |
JP2016001382A (en) * | 2014-06-11 | 2016-01-07 | 株式会社エヌ・ティ・ティ・データ | Web page providing system, web page providing method, program, and communication device |
JP2016045624A (en) * | 2014-08-21 | 2016-04-04 | Necフィールディング株式会社 | Information processing device, information processing system, information processing method, and program |
Also Published As
Publication number | Publication date |
---|---|
JP5393242B2 (en) | 2014-01-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6761112B2 (en) | Methods and systems for server-side rendering of native content for presentation | |
US20140096014A1 (en) | Method for enabling dynamic client user interfaces on multiple platforms from a common server application via metadata | |
US11537683B2 (en) | Configuration of content site user interaction monitoring in data networks | |
US20120272178A1 (en) | Method and device for providing easy access in a user agent to data resources related to client-side web applications | |
US20110154187A1 (en) | Methods, software and devices for providing server hosted web applications | |
US20100229081A1 (en) | Method for Providing a Navigation Element in an Application | |
US10417317B2 (en) | Web page profiler | |
US20150317405A1 (en) | Web Page Variation | |
JP2017504129A (en) | Construction of a state expression represented in a web browser | |
US20220043546A1 (en) | Selective server-side rendering of scripted web page interactivity elements | |
US20150012819A1 (en) | Template-driven decoration engine | |
JP5393242B2 (en) | Data providing method and intermediate server device | |
US10114617B2 (en) | Rapid visualization rendering package for statistical programming language | |
RU2634221C2 (en) | Method and device for drawing presentation of electronic document on screen | |
JP7014960B2 (en) | Information processing equipment, servers, their processing methods and programs | |
US20220206763A1 (en) | Information processing system, information processing apparatus information processing method, and program | |
US20140379790A1 (en) | Information processing apparatus, method and medium | |
JP2009026013A (en) | Content registration/provision device, content registration/provision control method, and content registration/provision control program | |
JP6128503B1 (en) | Program, server and system for providing services related to electronic manuals | |
JP5835447B2 (en) | Information processing apparatus, information processing system, control method, and program | |
JP6115664B2 (en) | Information processing apparatus and program | |
US20090254631A1 (en) | Defining clippable sections of a network document and saving corresponding content | |
US8291311B2 (en) | Web display program conversion system, web display program conversion method and program for converting web display program | |
JP6217473B2 (en) | Web service providing device | |
Mabbutt et al. | Managing Scripts and Styles |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110902 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20121204 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20121205 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130204 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130723 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130822 |
|
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: 20130917 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20131015 |
|
LAPS | Cancellation because of no payment of annual fees |