(57)【特許請求の範囲】
【請求項１】
ネットワークユーザの端末装置に表示するためのＷｅｂページのＨＴＭＬファイルを生成する処理を行うＪａｖａのアプリケーションを記憶する、Ｊａｖａサーブレットの機能を有するＷｅｂサーバであって、
前記アプリケーションの中から前記Ｗｅｂページのデザインに関するＨＴＭＬのソースコードを生成する処理を行うためのＪａｖａのソースコードを抽出する抽出手段と、
前記抽出手段によって抽出されたＪａｖａのソースコードをＨＴＭＬのソースコードに変換するＪａｖａ−ＨＴＭＬ変換手段と、
前記Ｗｅｂページに係る、前記Ｊａｖａ−ＨＴＭＬ変換手段によって変換されたＨＴＭＬのソースコードを、当該Ｗｅｂページを編集する編集者の端末装置に送信する送信手段と、
編集された、前記送信手段によって送信された前記Ｗｅｂページに係るＨＴＭＬのソースコードを取得する、取得手段と、
前記取得手段によって取得された、前記Ｗｅｂページに係るＨＴＭＬのソースコードをＪａｖａのソースコードに変換する、ＨＴＭＬ−Ｊａｖａ変換手段と、
前記アプリケーションの更新を、当該アプリケーションの中の前記Ｗｅｂページのデザインに関するＨＴＭＬのソースコードを生成する処理を行うためのＪａｖａのソースコードの部分を、前記取得手段によって取得された当該Ｗｅｂページに係るＨＴＭＬのソースコードが前記ＨＴＭＬ−Ｊａｖａ変換手段によって変換されることによって得られたＪａｖａのソースコードに書き換えることによって行う、アプリケーション更新手段と、
を有し、
前記Ｊａｖａ−ＨＴＭＬ変換手段は、前記抽出手段によって抽出されたＪａｖａのソースコードの中に所定のコードが含まれている場合は、当該所定のコードおよび当該所定のコードに係る部分を、ＨＴＭＬの、編集不可である部分を示すタグである編集不可タグでマーキングするように変換し、
前記ＨＴＭＬ−Ｊａｖａ変換手段は、前記取得手段によって取得されたＨＴＭＬのソースコードの中に前記編集不可タグが含まれている場合は、当該編集不可タグによってマーキングされている部分を、前記所定のコードを含むＪａｖａのソースコードに変換する、
ことを特徴とするＪａｖａサーブレットの機能を有するＷｅｂサーバ。
【請求項２】
前記アプリケーションは、所定の演算処理を行う業務ロジックおよび当該業務ロジックによる演算処理の結果に基づいて前記Ｗｅｂページのデザインに関するＨＴＭＬのソースコードを生成する処理を行う画面生成ロジックからなり、
前記所定のコードは、前記画面生成ロジックにおいて前記業務ロジックから値を受け取るために用いられるコードであり、
前記編集不可タグは、前記送信手段によって送信される前記Ｗｅｂページに係るＨＴＭＬのソースコードの中の、業務ロジックによる演算処理の結果によって当該Ｗｅｂページの表示の内容が異なってしまう部分を、示すために用いられる、
請求項１記載のＪａｖａサーブレットの機能を有するＷｅｂサーバ。
【請求項３】
前記取得手段によって取得された前記Ｗｅｂページに係るＨＴＭＬのソースコードに他のファイルのパスが含まれる場合に、当該パスのパス名を記憶するパス記憶手段と、
前記パス記憶手段に記憶されているパス名を更新するパス更新手段と、を有し、
前記アプリケーションの中の前記Ｗｅｂページのデザインに関するＨＴＭＬのソースコードを生成する処理を行うためのＪａｖａのソースコードに、他のファイルのパスが含まれている場合は、Ｊａｖａ−ＨＴＭＬ変換手段は、当該パスのパス名を、前記パス記憶手段に記憶されている当該パスのパス名に書き換えて、当該ＪａｖａのソースコードをＨＴＭＬのソースコードに変換する、
請求項１または請求項２記載のＪａｖａサーブレットの機能を有するＷｅｂサーバ。
【請求項４】
ネットワークユーザの端末装置に表示するためのＷｅｂページのＨＴＭＬファイルを生成する処理を行うＪａｖａのアプリケーションの更新方法であって、
前記アプリケーションの中から前記Ｗｅｂページのデザインに関するＨＴＭＬのソースコードを生成する処理を行うためのＪａｖａのソースコードを抽出する第一のステップと、
前記第一のステップで抽出したＪａｖａのソースコードをＨＴＭＬのソースコードに変換する第二のステップと、
前記Ｗｅｂページに係る、前記第二のステップで変換したＨＴＭＬのソースコードを、当該Ｗｅｂページを編集する編集者の端末装置に送信する、第三のステップと、
編集された、前記第三のステップで送信した前記Ｗｅｂページに係るＨＴＭＬのソースコードを取得する、第四のステップと、
前記第四のステップで取得した、前記Ｗｅｂページに係るＨＴＭＬのソースコードを、Ｊａｖａのソースコードに変換する第五のステップと、
前記アプリケーションの更新を、当該アプリケーションの中の前記Ｗｅｂページのデザインに関するＨＴＭＬのソースコードを生成する処理を行うためのＪａｖａのソースコードの部分を、前記第四のステップで取得した当該Ｗｅｂページに係るＨＴＭＬのソースコードが前記第五のステップで変換されることによって得られたＪａｖａのソースコードに書き換えることによって行う、第六のステップと、
を有し、
前記第二のステップにおいては、前記第一のステップで抽出したＪａｖａのソースコードの中に所定のコードが含まれている場合は、当該所定のコードおよび当該所定のコードに係る部分を、ＨＴＭＬの、編集不可である部分を示すタグである編集不可タグでマーキングするように変換し、
前記第五のステップにおいては、前記第四のステップで取得したＨＴＭＬのソースコードの中に前記編集不可タグが含まれている場合は、当該編集不可タグによってマーキングされている部分を、前記所定のコードを含むＪａｖａのソースコードに変換する、
ことを特徴とするＪａｖａのアプリケーションの更新方法。
【請求項５】
ネットワークユーザの端末装置に表示するためのＷｅｂページのＨＴＭＬファイルを生成する処理を行うＪａｖａのアプリケーションの更新を行うコンピュータを制御するための制御プログラムであって、
前記コンピュータに、
前記アプリケーションの中から前記Ｗｅｂページのデザインに関するＨＴＭＬのソースコードを生成する処理を行うためのＪａｖａのソースコードを抽出する第一の処理と、
前記第一の処理で抽出したＪａｖａのソースコードをＨＴＭＬのソースコードに変換する第二の処理と、
前記Ｗｅｂページに係る、前記第二の処理で変換したＨＴＭＬのソースコードを、当該Ｗｅｂページを編集する編集者の端末装置に送信する、第三の処理と、
編集された、前記第三の処理で送信した前記Ｗｅｂページに係るＨＴＭＬのソースコードを取得する、第四の処理と、
前記第四の処理で取得した、前記Ｗｅｂページに係るＨＴＭＬのソースコードを、Ｊａｖａのソースコードに変換する第五の処理と、
前記アプリケーションの更新を、当該アプリケーションの中の前記Ｗｅｂページのデザインに関するＨＴＭＬのソースコードを生成する処理を行うためのＪａｖａのソースコードの部分を、前記第四のステップで取得した当該Ｗｅｂページに係るＨＴＭＬのソースコードが前記第五のステップで変換されることによって得られたＪａｖａのソースコードに書き換えることによって行う、第六の処理と、
を実行させ、
前記第二の処理においては、前記第一の処理で抽出したＪａｖａのソースコードの中に所定のコードが含まれている場合は、前記コンピュータに、当該所定のコードおよび当該所定のコードに係る部分を、ＨＴＭＬの、編集不可である部分を示すタグである編集不可タグでマーキングするように変換させ、
前記第五の処理においては、前記第四の処理で取得したＨＴＭＬのソースコードの中に前記編集不可タグが含まれている場合は、前記コンピュータに、当該編集不可タグによってマーキングされている部分を、前記所定のコードを含むＪａｖａのソースコードに変換させる、
ことを特徴とする制御プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、Ｊａｖａサーブレットの機能を有するＷｅｂサーバにおけるＪａｖａプログラムの変更に関する。
【０００２】
【従来の技術】
サン・マイクロシステムズ社のプログラム言語であるＪａｖａ(米国 Sun Microsystems, Inc. の登録商標）技術の１つとして、Ｗｅｂサーバで用いられるＪａｖａサーブレットがある。Ｊａｖａサーブレットによってプログラムを実行すると、ＷＷＷブラウザからの要求に応じてＷｅｂページを表示するための記述言語であるＨＴＭＬ（Hypertext Markup Language ）のハイパーテキストすなわちＨＴＭＬファイルを生成し、そのＷＷＷブラウザに送信することができる。
【０００３】
係るプログラムは、主に業務ロジック、画面生成（描画）ロジック、および制御ロジックからなる。業務ロジックは、ユーザ認証などの業務的な処理を行う。画面生成ロジックは、Ｗｅｂページのデザインなど構成に関するものであり、業務ロジックによる処理の結果に基づいてＨＴＭＬファイルを生成する。よって、係るプログラムを実行することにより、それぞれのユーザの指示などに応じた内容のＷｅｂページを表示するためのＨＴＭＬファイルを生成することができる。つまり、内容が固定的ではない、動的なＷｅｂページを各ユーザに提供することができる。
【０００４】
このような特徴より、Ｊａｖａサーブレットを利用してネットワークのユーザに対してＷｅｂによるサービス（例えばオンラインショッピングまたは情報検索など）のサイトを開設するする業者も多い。
【０００５】
これらの業者は、Ｊａｖａサーブレットを利用したサイトを開設する際に、業務的な処理（例えばユーザ認証、商品の選択、課金、または検索など）を行う仕組みを構築し、さらにＷｅｂページのデザインを行わなければならない。これらの作業は大変なので、Ｊａｖａプログラミングのできるプログラマに業務ロジックおよび制御ロジックの作成の作業を行わせ、Ｗｅｂデザイナに画面生成ロジックの作成の作業を行わせる場合がほとんどである。
【０００６】
プログラマまたはＷｅｂデザイナは、サーブレットエンジン上で動作させるために、これらのロジックをＪａｖａのコードまたはＪＳＰ（Java Server Pages ）によって作成しなければならない。
【０００７】
Ｊａｖａによる作業を効率的に進めるために、例えば、特開２００１−３４４１０５号公報に記載されるように、各画面とサーブレットとを１対１の関係で定義できるようにする技術が提案されている。
【０００８】
【発明が解決しようとする課題】
しかし、ＪａｖａまたはＪＳＰによる作業は、高度なスキルが要求されるので、上記の公報に記載の技術を用いたとしても、Ｗｅｂデザイナにとって画面生成ロジックの作成および修正の作業は非常に難しい。
【０００９】
したがって、サイトの開設後、サイト内のＷｅｂページの更新の作業に手間が掛かってＷｅｂページの更新が遅れがちになり、またはプログラムの中にバグが生じやすくなるなど、サイトの円滑な運営を妨げてしまうおそれがあった。
【００１０】
本発明は、このような問題点に鑑み、Ｊａｖａサーブレットを用いたＷｅｂサーバがある環境において、ＪａｖａのスキルのないＷｅｂデザイナであっても容易にＷｅｂページのデザインの変更を行うことができるようにすることを目的とする。
【００１１】
【課題を解決するための手段】
本発明に係るＷｅｂサーバは、ネットワークユーザの端末装置に表示するためのＷｅｂページのＨＴＭＬファイルを生成する処理を行うＪａｖａのアプリケーションを記憶する、Ｊａｖａサーブレットの機能を有するＷｅｂサーバであって、前記アプリケーションの中から前記Ｗｅｂページのデザインに関するＨＴＭＬのソースコードを生成する処理を行うためのＪａｖａのソースコードを抽出する抽出手段と、前記抽出手段によって抽出されたＪａｖａのソースコードをＨＴＭＬのソースコードに変換するＪａｖａ−ＨＴＭＬ変換手段と、前記Ｗｅｂページに係る、前記Ｊａｖａ−ＨＴＭＬ変換手段によって変換されたＨＴＭＬのソースコードを、当該Ｗｅｂページを編集する編集者の端末装置に送信する送信手段と、編集された、前記送信手段によって送信された前記Ｗｅｂページに係るＨＴＭＬのソースコードを取得する、取得手段と、前記取得手段によって取得された、前記Ｗｅｂページに係るＨＴＭＬのソースコードをＪａｖａのソースコードに変換する、ＨＴＭＬ−Ｊａｖａ変換手段と、前記アプリケーションの更新を、当該アプリケーションの中の前記Ｗｅｂページのデザインに関するＨＴＭＬのソースコードを生成する処理を行うためのＪａｖａのソースコードの部分を、前記取得手段によって取得された当該Ｗｅｂページに係るＨＴＭＬのソースコードが前記ＨＴＭＬ−Ｊａｖａ変換手段によって変換されることによって得られたＪａｖａのソースコードに書き換えることによって行う、アプリケーション更新手段と、を有し、前記Ｊａｖａ−ＨＴＭＬ変換手段は、前記抽出手段によって抽出されたＪａｖａのソースコードの中に所定のコードが含まれている場合は、当該所定のコードおよび当該所定のコードに係る部分を、ＨＴＭＬの、編集不可である部分を示すタグである編集不可タグでマーキングするように変換し、前記ＨＴＭＬ−Ｊａｖａ変換手段は、前記取得手段によって取得されたＨＴＭＬのソースコードの中に前記編集不可タグが含まれている場合は、当該編集不可タグによってマーキングされている部分を、前記所定のコードを含むＪａｖａのソースコードに変換する、ことを特徴とする。
【００１２】
好ましくは、前記アプリケーションは、所定の演算処理を行う業務ロジックおよび当該業務ロジックによる演算処理の結果に基づいて前記Ｗｅｂページのデザインに関するＨＴＭＬのソースコードを生成する処理を行う画面生成ロジックからなり、
前記所定のコードは、前記画面生成ロジックにおいて前記業務ロジックから値を受け取るために用いられるコードであり、前記編集不可タグは、前記送信手段によって送信される前記Ｗｅｂページに係るＨＴＭＬのソースコードの中の、業務ロジックによる演算処理の結果によって当該Ｗｅｂページの表示の内容が異なってしまう部分を、示すために用いられる。
【００１３】
または、前記取得手段によって取得された前記Ｗｅｂページに係るＨＴＭＬのソースコードに他のファイルのパスが含まれる場合に、当該パスのパス名を記憶するパス記憶手段と、前記パス記憶手段に記憶されているパス名を更新するパス更新手段と、を有し、前記アプリケーションの中の前記Ｗｅｂページのデザインに関するＨＴＭＬのソースコードを生成する処理を行うためのＪａｖａのソースコードに、他のファイルのパスが含まれている場合は、Ｊａｖａ−ＨＴＭＬ変換手段は、当該パスのパス名を、前記パス記憶手段に記憶されている当該パスのパス名に書き換えて、当該ＪａｖａのソースコードをＨＴＭＬのソースコードに変換する。
【００１４】
本発明において、「Ｊａｖａのコード群」とは、Ｊａｖａのソースコードまたはこのソースコードをコンパイルして得られるＪａｖａバイトコード（中間コード）を示す。
【００１５】
【発明の実施の形態】
図１は本発明に係るＷｅｂサーバ１が設けられたネットワークシステムの例を示す図、図２はＷｅｂサーバ１のハードウェア構成の例を示す図、図３はＷｅｂサーバ１のプログラムの例を示す図、図４はログイン画面ＨＧ１の例を示す図、図５はＨＴＭＬのソースコードの例を示す図、図６はＪａｖａソースコードの例を示す図、図７は初期状態のＷｅｂページ編集画面ＨＧ２の例を示す図、図８はＨＴＭＬのソースコードが表示されたＷｅｂページ編集画面ＨＧ２の例を示す図、図９はＷｅｂサーバ１の機能的構成の例を示す図、図１０は編集後のログイン画面ＨＧ１' を示す図、図１１は更新が完了した旨のメッセージの画面を示す図である。
【００１６】
本発明に係るＷｅｂサーバ１は、図１に示すように、ネットワーク４を介して端末装置２、３と接続されている。ネットワーク４として、インターネット、専用線、または公衆回線などが用いられる。
【００１７】
端末装置３は、一般のユーザが所有するパーソナルコンピュータ、ワークステーション、ＰＤＡ（Personal Digital Assistant）、または携帯電話端末などである。端末装置３にはＷＷＷブラウザ（Ｗｅｂブラウザ）の機能が備えられており、Ｗｅｂサーバ１などからＨＴＭＬ（Hypertext Markup Language ）ファイルを取得することによって、種々の情報が記載されたＷｅｂページを閲覧し、または情報検索、オンラインショッピング、オークション、またはオンラインバンキングなどの種々のサービスのＷｅｂアプリケーションを利用することができる。
【００１８】
端末装置２は、これらのサービスの提供の際に用いられるＷｅｂページを作成しまたは編集するためのものである。例えば、Ｗｅｂページに季節に応じた挿し絵を入れたり、誤字が見つかった場合に修正したりする際に用いられる。端末装置２として、例えばＷＷＷブラウザがインストールされているパーソナルコンピュータまたはワークステーションなどが用いられる。
【００１９】
Ｗｅｂサーバ１は、図２に示すように、ＣＰＵ１０ａ、ＲＡＭ１０ｂ、ＲＯＭ１０ｃ、磁気記憶装置１０ｄ、ディスプレイ装置１０ｅ、およびマウスまたはキーボードなどの入力装置１０ｆなどによって構成される。
【００２０】
磁気記憶装置１０ｄには、オペレーティングシステム（ＯＳ）のほか、図３に示すように、ＪａｖａサーブレットによるＷｅｂアプリケーションを実現するためのプログラムが記憶されている。これらのプログラムは、必要に応じてＲＡＭ１０ｂにロードされ、ＣＰＵ１０ａによって実行される。
【００２１】
サーブレットエンジン７１は、ＪａｖａサーブレットにおけるＪａｖａ仮想マシン（ＪＶＭ）に相当するものである。なお、サーブレットエンジンは、サーブレットＡＰＩ２．２以降では、サーブレットコンテナと呼称される。
【００２２】
Ｊａｖａソースジェネレータ７２は、ＨＴＭＬで記述されたソースコードに基づいてＪａｖａソースコードを生成する、ＨＴＭＬ−Ｊａｖａ変換ツールである。Ｊａｖａコンパイラ７３は、Ｊａｖａソースコードをサーブレットエンジン７１で実行可能なＪａｖａバイトコードであるＪａｖａクラス（クラスファイル）にコンパイルする。
【００２３】
Ｗｅｂアプリケーション８０は、端末装置３に対してサービスを提供するためのプログラムであり、複数のＪａｖａクラス（サーブレットクラス）によって構成される。これらの中には、例えば図４に示すログイン画面ＨＧ１のような画面（Ｗｅｂページ）ごとのＪａｖａクラスが含まれている。このような画面のＪａｖａクラスとして、画面生成（描画）ロジックを実現するための画面生成ロジッククラスおよび業務ロジックを実現するための業務ロジッククラスがある。基本的に、１つの画面について画面生成ロジッククラスおよび業務ロジッククラスが少なくとも１つずつ用意されている。または、画面生成ロジックおよび業務ロジックが１つのＪａｖａクラスに含まれるように構成してもよい。
【００２４】
業務ロジックは、端末装置３における操作などに基づいて所定の演算処理を行う。例えば、ログイン画面ＨＧ１が表示された端末装置３において入力されたユーザＩＤおよびパスワードに基づいてユーザ認証を行う。画面生成ロジックは、画面（Ｗｅｂページ）のＨＴＭＬファイルを生成する処理を行う。業務ロジックと画面生成ロジックとは処理の流れが連携されており、例えば、画面生成ロジックは業務ロジックの処理結果（実行結果）に基づいてＨＴＭＬファイルを生成する。
【００２５】
画面生成ロジックは、次のような手順で作成される。まず、ＨＴＭＬで図５に示すように画面生成ロジックの基となる部分をコーディングする。コーディングされたソースコードをＪａｖａソースジェネレータ７２によって図６に示すようにＪａｖａソースコードに変換する。そして、これをＪａｖａコンパイラ７３によってＪａｖａバイトコードにコンパイルし、画面生成ロジックが得られる。
【００２６】
ＨＴＭＬのソースコードには、このＨＴＭＬのソースコードを編集（メンテナンス）する際に書き換えてはならない個所を示す本発明のオリジナルのタグを用いることができる。以下、係るタグを「Ｘタグ」を呼称する。
【００２７】
Ｘタグは、「＜Ｘ  ｎａｍｅ＝" …" ＞…＜／Ｘ＞」または「＜Ｘ＝…＝Ｘ＞」のように用いられる。例えば、図４のログイン画面ＨＧ１において、通常ユーザＩＤのテキストボックスの既定値（ｖａｌｕｅ＝…に示される値）として変数「ＵＳＥＲ＿ＩＤ」に格納されている値を用いる場合は「＜ＩＮＰＵＴ  ｔｙｐｅ＝" ｔｅｘｔ"   ｎａｍｅ＝" ＵＳＥＲ＿ＩＤ"   ｖａｌｕｅ＝" ＵＳＥＲ＿ＩＤ" ＞」のようにコードを記述するが、この既定値の部分を編集不可であるものとして表したい場合は「＜ＩＮＰＵＴ  ｔｙｐｅ＝" ｔｅｘｔ"   ｎａｍｅ＝" ＵＳＥＲ＿ＩＤ"   ｖａｌｕｅ＝" ＜Ｘ＝ＵＳＥＲ＿ＩＤ" ＝Ｘ＞＞」のように記述すればよい。このように、Ｘタグは、ＨＴＭＬのソースのうちの動的部分に対して用いることができる。「動的部分」とは、画面のデザイン（文字または画像など）のうち業務ロジックの処理の結果に応じて表示の内容が異なる部分をいう。Ｘタグに対する処理については後に説明する。
【００２８】
一方、業務ロジックは、プログラマによってコーディングされたＪａｖａソースコードをＪａｖａコンパイラ７３でコンパイルすることによって得られる。
【００２９】
また、磁気記憶装置１０ｄには、図３に示すように、画面生成ロジックをＷｅｂデザイナの端末装置２において編集（メンテナンス）するための編集アプリケーション７４も記憶されている。編集アプリケーション７４によると、例えば、端末装置２において図７または図８に示すＷｅｂページ編集画面ＨＧ２によってＷｅｂページ（ＨＴＭＬファイル）をメンテナンスすることができる。編集アプリケーション７４も、画面生成ロジックおよび業務ロジックなどによって構成され、Ｗｅｂサーバ１のサーブレットエンジン上で動作する。
【００３０】
このような構成により、Ｗｅｂサーバ１には、図９に示すように、ＨＴＭＬファイル受信部１０１、指定受付部１０２、指定画面抽出部１０３、第一の変換部１０４、コード更新部１０５、第二の変換部１０６、ＨＴＭＬファイル送信部１０７、パス記憶部１０８、およびパス更新部１０９などの機能が実現される。これらの機能によって、各ユーザに対して提供するサービスのためのＷｅｂページ（例えば図４のログイン画面ＨＧ１など）のデザインを変更することができる。以下、これらの機能について説明する。
【００３１】
端末装置２のＷＷＷブラウザにおいて、所定のＵＲＬが指定されると、Ｗｅｂサーバ１から取得したＨＴＭＬファイルに基づいて図７に示すＷｅｂページ編集画面ＨＧ２が表示される。ここで、Ｗｅｂデザイナは、編集したいＷｅｂページのＩＤ（以下、「ＧＩＤ」と記載する。）、ＷｅｂデザイナのユーザＩＤおよびパスワードをテキストボックスＢＸ２１〜ＢＸ２３にそれぞれ入力し、編集ボタンＢＮ２１をクリックする。例えば、図４に示すログイン画面ＨＧ１を編集したい場合は、ＧＩＤとして「ＧＩＤ０１」を入力する。編集ボタンＢＮ２１がクリックされると、入力されたＧＩＤ、ユーザＩＤ、およびパスワードがＷｅｂサーバ１に対して送信される。
【００３２】
図９の指定受付部１０２は、端末装置２から取得したユーザＩＤおよびパスワードに基づいて端末装置２のユーザ（Ｗｅｂデザイナ）が正しいユーザであるか否かの認証つまりセキュリティのチェックを行う。そして、正しいユーザである旨の認証が得られた場合に、ＧＩＤの指定を受理し、指定画面抽出部１０３に対してそのＧＩＤを伝える。
【００３３】
指定画面抽出部１０３は、伝えられたＧＩＤに対応する画面生成ロジックのＪａｖａバイトコードを磁気記憶装置１０ｄより抽出する。第二の変換部１０６は、抽出されたＪａｖａバイトコードをＨＴＭＬのソースコードに変換する。ＨＴＭＬファイル送信部１０７は、変換されたＨＴＭＬのソースコードを編集する画面を表示するためのＨＴＭＬファイルを端末装置２に送信する。
【００３４】
このとき、端末装置２において、Ｗｅｂページ編集画面ＨＧ２のテキストボックスＢＸ２４には、図８に示すように、Ｗｅｂサーバ１から受信したＨＴＭＬのソースコードが表示される。Ｗｅｂデザイナは、このＨＴＭＬのソースコードを修正することによって、Ｗｅｂページのデザインの編集を行うことができる。プレビューボタンＢＮ２３がクリックされると、修正されたＨＴＭＬのソースコードに基づいてＷＷＷブラウザに図１０に示すようなログイン画面ＨＧ１' が表示（プレビュー）される。Ｗｅｂデザイナは、これを見て編集の出来具合いを確かめることができる。そして、Ｗｅｂページ編集画面ＨＧ２に戻ってアップデートボタンＢＮ２２がクリックされると、修正されたＨＴＭＬのソースコードがＷｅｂサーバ１に対して送信される。
【００３５】
Ｗｅｂサーバ１において、修正されたＨＴＭＬのソースコードを図９のＨＴＭＬファイル受信部１０１が受信すると、第一の変換部１０４は、このＨＴＭＬのソースコードをＪａｖａソースコードに変換し、さらにＪａｖａバイトコードに変換（コンパイル）する。
【００３６】
コード更新部１０５は、変換されたＪａｖａバイトコードを元のＪａｖａバイトコードに上書きすることによって、画面生成ロジックのコードを更新（差替え）する。このとき、端末装置３には、図１１に示すような画面生成ロジッククラスの更新が完了した旨のメッセージが表示される。
【００３７】
図１２は画面ＨＧ４（Ｗｅｂページ）の例を示す図、図１３は図１２の画面ＨＧ４のためのＨＴＭＬのソースコードの例を示す図、図１４は業務ロジックおよび画面生成ロジックにおけるＸタグの機能を説明する図、図１５は図１３（ａ）のＨＴＭＬのソースコードを編集した例を示す図である。
【００３８】
次に、ＨＴＭＬのＸタグの処理とともに、ＨＴＭＬとＪａｖａとの間でのコード変換について説明する。前に述べた通り、Ｗｅｂデザイナは、ＨＴＭＬによってＷｅｂページの作成およびメンテナンスを行う。例えば、図１２のＷｅｂページ（画面ＨＧ４）を作成する場合は、図１３（ａ）のようにＨＴＭＬのソースコードを記述する。画面ＨＧ４の「大阪府」という文字列の部分を動的部分として扱いたい場合は、Ｘタグを用いる。すなわち、図１３（ｂ）のように「大阪府」の部分をＸタグでマーキングすればよい。
【００３９】
図９の第一の変換部１０４は、ＨＴＭＬのソースコードを、次のようなルールでＪａｖａソースコードに変換する。
（ａ）  Ｘタグでマーキングされていない部分は、ＨＴＭＬのソースコードに示されるそのままの画面を表示させるように機能するコードに変換する。
（ｂ）  Ｘタグでマーキングされている部分は、このＨＴＭＬのソースコードを基に生成された画面生成ロジックの実行時に、業務ロジックからマーキング名（ｎａｍｅ＝…が示す値）に基づいて値を受け取るように機能する「ｇｅｔＨＴＭＬ」というコードに変換する（図５、図６参照）。例えば、図１３（ｂ）のソースコードに含まれる「＜Ｘ  ｎａｍｅ＝" ＡＤＤＲＥＳＳ" ＞大阪府＜／Ｘ＞」の場合は、図１４に示すように業務ロジックの実行結果を「ＡＤＤＲＥＳＳ」という名の変数を介して取得するように機能するコードに変換する。
（ｃ）  画像のＵＲＬ（パス）またはサブミット先のＵＲＬとなる部分は、そのＵＲＬを外部ファイルから動的に読み取ることができるように機能するコードに変換する。つまり、例えば、次のようにしてコード化を行う。図９のパス記憶部１０８は、端末装置２から得たＨＴＭＬのソースコードに含まれる画像などのＵＲＬを抽出し、そのうちのファイル名以外の部分すなわちパス名をパス情報８９として記憶する。例えば、ＨＴＭＬのソースコードに「ｓｒｃ＝" ／ｔｅｓｔ１／ｉｍａｇｅｓ／ｇａｚｏｕ．ｇｉｆ" 」という記述があった場合は、「／ｔｅｓｔ１／ｉｍａｇｅｓ／」をパス情報８９として外部ファイルに記憶する。第一の変換部１０４は、ＨＴＭＬのソースコードに含まれるＵＲＬのうちのパス名の部分を、パス情報８９を識別する文字列と置き換えた後、Ｊａｖａソースコードに変換する。
【００４０】
これらのルールに基づいて変換されたＪａｖａソースコードは、コンパイルされてＪａｖａバイトコードとなり、Ｊａｖａサーブレットの実行環境下に格納される。以上のようにして、画像生成ロジックのＨＴＭＬのソースコードがＪａｖａバイトコードに変換される。
【００４１】
なお、前に述べた通り、プログラマは、業務ロジックについてはＪａｖａのソースコードとして記述しなければならない。さらに、画面生成ロジックと連携する業務ロジックについては、その画面生成ロジックとの間でデータをやり取りが行われるようコーディングしなければならない。例えば、図１４の場合は、「ＡＤＤＲＥＳＳ」によって値が出力（セット）される機能を業務ロジックに実装させなければならない。
【００４２】
一方、図９の第二の変換部１０６は、画像生成ロジックのＪａｖａバイトコードに「ｇｅｔＨＴＭＬ」に相当するコードが含まれている場合に、係る部分がＸタグになるようにＨＴＭＬのソースコードに変換する。
【００４３】
また、画像などのＵＲＬ（パス）に相当する部分については、パス情報８９に基づいてＨＴＭＬへの変換を行う。したがって、端末装置２から取得したＨＴＭＬのソースコードに示されるＵＲＬがそのまま復元されるとは限らず、異なるＵＲＬに変換されて得られる場合がある。
【００４４】
例えば、テスト段階において端末装置２から取得したＨＴＭＬのソースコードに「／ｔｅｓｔ１／ｉｍａｇｅｓ／ｇａｚｏｕ．ｇｉｆ」という画像のＵＲＬが含まれていたとする。このとき、パス情報８９として「／ｔｅｓｔ１／ｉｍａｇｅｓ／」というパス名が得られる。そして、本番環境に移行する際にシステム管理者の操作に従って図９のパス更新部１０９がそのパス情報８９を「／ｈｏｎｂａｎ／ｉｍａｇｅｓ／」と書き換えたとする。すると、ＪａｖａバイトコードをＨＴＭＬのソースコードに変換した際に、画像のＵＲＬは「／ｈｏｎｂａｎ／ｉｍａｇｅｓ／ｇａｚｏｕ．ｇｉｆ」となる。このように、外部ファイルに含まれるパス情報８９を変更可能とすることによって、同一の階層に多数の画像のＵＲＬが含まれる場合であっても、容易に動的に本番環境または次のテスト段階のＵＲＬへの変更を行うことができる。
【００４５】
このようにして得られたＨＴＭＬのソースコードは、ＨＴＭＬファイル送信部１０７によって端末装置２に送信され、Ｗｅｂデザイナによって例えば図１５のように編集される。編集されたソースコードは、再び第一の変換部１０４によってコンパイルなどが施されてＪａｖａバイトコードとなり、そして元の画面生成ロジックと置き換えられる。
【００４６】
図１６はＷｅｂサーバ１における処理の流れを説明するフローチャート、図１７は画面ＨＧ５（Ｗｅｂページ）の例を示す図である。次に、端末装置２または端末装置３からアクセスがあった場合のＷｅｂサーバ１の処理の流れを、図１６に示すフローチャートを参照して説明する。
【００４７】
端末装置２からＷｅｂページのデザインの編集の指示があった場合は（＃１１でＹｅｓ）、指定された画面ＩＤ（ＧＩＤ）に対応する画面生成ロジックのＪａｖａバイトコードを抽出し、これに基づいて「ｇｅｔＨＴＭＬ」の部分をＸタグでマーキングしたＨＴＭＬファイルを生成し（＃１２）、図８に示すようなＷｅｂページ編集画面ＨＧ２のためのＨＴＭＬファイルを端末装置２に送信する（＃１３）。
【００４８】
Ｗｅｂページ編集画面ＨＧ２が表示された端末装置２において、Ｗｅｂデザイナは、Ｘタグの部分を書き換えないように注意しながらテキストボックスＢＸ２４内のＨＴＭＬのソースコードを修正（編集）する（＃１４）。例えば、図１３（ｂ）のソースコードのうちのＸタグで示された動的部分以外の部分つまりデザインが固定的または静的な部分を編集し、図１５のようなソースコードにする。編集されたソースコードはＷｅｂサーバ１に送信され（＃１５）、Ｊａｖａソースコードに変換され（＃１６）、さらにＪａｖａバイトコードにコンパイルされる（＃１７）。そして、元のＪａｖａバイトコードと置き換えられ、これによりＷｅｂページのデザインの編集が完了する。編集の完了後、念のために、ログインの認証機能が問題なく作動するか否かを確認する。
【００４９】
一方、端末装置３からアクセスがあった場合は（＃１１でＮｏ）、まず、業務ロジックが実行される（＃２１）。次に、業務ロジックによる実行結果に基づいて画面生成ロジックが動作し、ＨＴＭＬファイルが生成される（＃２２）。例えば、業務ロジックの実行の結果が「大阪市中央区城見」であれば、図１７に示すように動的部分ＭＶが「大阪市中央区城見」となる画面ＨＧ５が表示されるようなＨＴＭＬファイルが生成される。そして、生成されたＨＴＭＬファイルが端末装置３に送信される（＃２３）。
【００５０】
ステップ＃１２〜＃１８および＃２１〜＃２３の処理は、端末装置２、３からアクセスがあるごとに適宜繰り返される。
【００５１】
本実施形態によると、Ｊａｖａサーブレットによって提供されるＷｅｂアプリケーションの画面のデザインの編集を、Ｊａｖａのスキルのない者であっても容易に行うことができる。また、編集はＷＷＷブラウザ上で行うことができるので、端末装置２には、ＦＴＰ（File Transfer Protocol）のアプリケーションやコンパイラなどを用意しておく必要がない。
【００５２】
Ｘタグを用いることにより、画面生成ロジックと業務ロジックとの連携を崩すようなバグを防止することができる。さらに、ＨＴＭＬのソースコードに含まれる画像ファイルのＵＲＬをパス情報として外部ファイルに記憶しておくことにより、テスト環境から本番環境への移行の際のＵＲＬの付替えの手間を少なくすることができる。
【００５３】
１つのＨＴＭＬのソースコードの中に複数個のＸタグを用いることも可能である。第二の変換部１０６は、編集対象のＷｅｂページのＨＴＭＬのソースコードを、Ｊａｖａバイトソースを変換して生成したが、Ｊａｖａソースコードを変換して生成してもよい。
【００５４】
Ｗｅｂデザイナは、ＨＴＭＬのソースコードの修正を、Ｗｅｂページ作成用アプリケーション（いわゆるホームページ作成ソフト）を用いて行ってもよい。ホームページ作成ソフトに、Ｘタグの部分に修正禁止を示す特殊な印を付ける機能を設けてもよい。
【００５５】
その他、Ｗｅｂサーバ１、端末装置２、３の全体または各部の構成、プログラムの構成および内容、処理内容、処理順序などは、本発明の趣旨に沿って適宜変更することができる。
【００５６】
【発明の効果】
本発明によると、Ｊａｖａサーブレットによって提供されるＷｅｂアプリケーションの画面のデザインの編集を、Ｊａｖａのスキルのない者であっても容易に行うことができるようにすることができる。
【００５７】
請求項２の発明によると、編集の際に画面生成ロジックと業務ロジックとの連携を崩すようなバグを防止することができる。請求項３の発明によると、テスト環境から本番環境への移行の際に、ＵＲＬの付替えの手間を少なくすることができる。
【図面の簡単な説明】
【図１】本発明に係るＷｅｂサーバが設けられたネットワークシステムの例を示す図である。
【図２】Ｗｅｂサーバのハードウェア構成の例を示す図である。
【図３】Ｗｅｂサーバのプログラムの例を示す図である。
【図４】ログイン画面の例を示す図である。
【図５】ＨＴＭＬのソースコードの例を示す図である。
【図６】Ｊａｖａソースコードの例を示す図である。
【図７】初期状態のＷｅｂページ編集画面の例を示す図である。
【図８】ＨＴＭＬのソースコードが表示されたＷｅｂページ編集画面の例を示す図である。
【図９】Ｗｅｂサーバの機能的構成の例を示す図である。
【図１０】編集後のログイン画面を示す図である。
【図１１】更新が完了した旨のメッセージの画面を示す図である。
【図１２】画面（Ｗｅｂページ）の例を示す図である。
【図１３】図１２の画面のためのＨＴＭＬのソースコードの例を示す図である。
【図１４】業務ロジックおよび画面生成ロジックにおけるＸタグの機能を説明する図である。
【図１５】図１３（ａ）のＨＴＭＬのソースコードを編集した例を示す図である。
【図１６】Ｗｅｂサーバにおける処理の流れを説明するフローチャートである。
【図１７】画面（Ｗｅｂページ）の例を示す図である。
【符号の説明】
１  Ｗｅｂサーバ
２  端末装置
８０  Ｗｅｂアプリケーション
８９  パス情報
１０１  ファイル受信部（取得手段）
１０３  指定画面抽出部（抽出手段）
１０４  第一の変換部（ＨＴＭＬ−Ｊａｖａ変換手段）
１０５  コード更新部（アプリケーション更新手段）
１０６  第二の変換部（Ｊａｖａ−ＨＴＭＬ変換手段）
１０７  ファイル送信部（送信手段）
１０８  パス記憶部（パス記憶手段）
１０９  パス更新部（パス更新手段）
【図１】
0003808020.tif 000002
【図２】
0003808020.tif 000003
【図３】
0003808020.tif 000004
【図４】
0003808020.tif 000005
【図５】
0003808020.tif 000006
【図６】
0003808020.tif 000007
【図７】
0003808020.tif 000008
【図８】
0003808020.tif 000009
【図９】
0003808020.tif 000010
【図１０】
0003808020.tif 000011
【図１１】
0003808020.tif 000012
【図１２】
0003808020.tif 000013
【図１３】
0003808020.tif 000014
【図１４】
0003808020.tif 000015
【図１５】
0003808020.tif 000016
【図１６】
0003808020.tif 000017
【図１７】
0003808020.tif 000018