(57)【要約】【課題】  既存のアプリケーションを容易にＷｅｂサービス化する仕組みを提供する。【解決手段】  アプリケーションの持つ機能をＷｅｂサービスとして提供するサーバであって、アプリケーションが当該アプリケーションの画面を介して入力を受け付ける入力項目及びアプリケーションが当該アプリケーションの画面に出力する出力項目を管理する。アプリケーションの持つ機能をＷｅｂサービスとして公開する。管理されている入力項目からＷｅｂサービスへ入力する入力データ項目の選択を受け付け、受け付けた入力データ項目を管理する。管理されている入力データ項目に対応する入力データを受信し、受信した入力データを用いて、公開されている機能を実行することを特徴とするサーバ。【選択図】  図６
2018010631.tif 000002
【特許請求の範囲】
【請求項１】
アプリケーションの持つ機能をＷｅｂサービスとして提供するサーバであって、
前記アプリケーションが当該アプリケーションの画面を介して入力を受け付ける入力項目及び前記アプリケーションが当該アプリケーションの画面に出力する出力項目を管理するアプリケーション入出力項目管理手段と、
前記アプリケーション入出力項目管理手段により管理されている入力項目の情報を取得するアプリケーション入力項目取得手段と、
前記アプリケーションの持つ機能をＷｅｂサービスとして公開するＷｅｂサービス公開手段と、
前記アプリケーション入力項目取得手段により取得された入力項目から前記Ｗｅｂサービスへ入力する入力データ項目の選択を受け付け、受け付けた入力データ項目を管理する入力データ項目管理手段と、
前記入力データ項目管理手段により管理されている入力データ項目に対応する入力データを受信する入力データ受信手段と、
前記入力データ受信手段により受信した入力データを用いて、前記Ｗｅｂサービス公開手段により公開されている機能を実行するＷｅｂサービス実行手段と
を備えることを特徴とするサーバ。
【請求項２】
前記アプリケーション入出力項目管理手段により管理されている出力項目の情報を取得するアプリケーション出力項目取得手段と、
前記アプリケーション出力項目取得手段により取得された出力項目から前記Ｗｅｂサービスが出力する出力データ項目の選択を受け付け、受け付けた出力データ項目を管理する出力データ項目管理手段と、
前記Ｗｅｂサービス実行手段により前記機能が実行された後、前記出力データ項目管理手段により管理されている出力データ項目に従って出力データを送信する出力データ送信手段と
を更に備えることを特徴とする請求項１に記載のサーバ。
【請求項３】
前記入力データ項目管理手段により管理されている入力データ項目を前記Ｗｅｂサービスへ入力する入力データ項目とし、前記出力データ項目管理手段により管理されている出力データ項目を前記Ｗｅｂサービスが出力する出力データ項目として定義したＷｅｂサービス定義情報を生成するＷｅｂサービス定義情報生成手段を
を更に備えることを特徴とする請求項２に記載のサーバ。
【請求項４】
前記アプリケーション入力項目取得手段により取得された入力項目以外の項目を前記Ｗｅｂサービスへ入力する入力データ項目として追加する指示を受け付ける追加入力データ項目受付手段と、
前記追加入力データ項目受付手段により受け付けた入力データ項目に対応する追加入力データを受信する追加入力データ受信手段とを更に備え
前記Ｗｅｂサービス実行手段は、
前記入力データ受信手段により受信した入力データ及び前記追加入力データ受信手段により受信した追加入力データを用いて、前記Ｗｅｂサービス公開手段により公開されている前記アプリケーションの持つ機能を実行すること
を特徴とする請求項１乃至３のいずれか１項に記載のサーバ。
【請求項５】
前記アプリケーション出力項目取得手段により取得された出力項目以外の項目を前記Ｗｅｂサービスから出力する出力データ項目として追加する指示を受け付ける追加出力データ項目受付手段と、
前記出力データ送信手段は、
前記Ｗｅｂサービス実行手段により前記機能が実行された後、前記追加出力データ項目受付手段により受け付けた出力データ項目に対応する出力データを送信すること
を特徴とする請求項２乃至４のいずれか１項に記載のサーバ。
【請求項６】
前記アプリケーションは、複数の機能を持ち、
前記入力データ項目管理手段は、前記機能ごとに前記入力データ項目を管理し、
前記機能を識別する機能識別情報を受信する機能識別情報受信手段を更に備え、
前記入力データ受信手段は、
前記機能識別情報受信手段により受信した機能識別情報に対応する機能に対応付けて前記入力データ項目管理手段により管理されている入力データ項目に対応する入力データを受信し、
前記Ｗｅｂサービス実行手段は、
前記入力データ受信手段により受信した入力データを用いて、前記機能識別情報受信手段により受信した機能識別情報に対応する機能を実行すること
を特徴とする請求項１乃至５のいずれか１項に記載のサーバ。
【請求項７】
アプリケーションの持つ機能をＷｅｂサービスとして提供するサーバにおける処理方法であって、
前記サーバが、
前記アプリケーションが当該アプリケーションの画面を介して入力を受け付ける入力項目及び前記アプリケーションが当該アプリケーションの画面に出力する出力項目を管理するアプリケーション入出力項目管理ステップと、
前記アプリケーション入出力項目管理ステップにより管理されている入力項目の情報を取得するアプリケーション入力項目取得ステップと、
前記アプリケーションの持つ機能をＷｅｂサービスとして公開するＷｅｂサービス公開ステップと、
前記アプリケーション入力項目取得ステップにより取得された入力項目から前記Ｗｅｂサービスへ入力する入力データ項目の選択を受け付け、受け付けた入力データ項目を管理する入力データ項目管理ステップと、
前記入力データ項目管理により管理されている入力データ項目に対応する入力データを受信する入力データ受信ステップと、
前記入力データ受信ステップにより受信した入力データを用いて、前記Ｗｅｂサービス公開ステップにより公開されている機能を実行するＷｅｂサービス実行ステップと
を実行することを特徴とする処理方法。
【請求項８】
アプリケーションの持つ機能をＷｅｂサービスとして提供するサーバで実行可能なプログラムであって、
前記サーバを、
前記アプリケーションが当該アプリケーションの画面を介して入力を受け付ける入力項目及び前記アプリケーションが当該アプリケーションの画面に出力する出力項目を管理するアプリケーション入出力項目管理手段と、
前記アプリケーション入出力項目管理手段により管理されている入力項目の情報を取得するアプリケーション入力項目取得手段と、
前記アプリケーションの持つ機能をＷｅｂサービスとして公開するＷｅｂサービス公開手段と、
前記アプリケーション入力項目取得手段により取得された入力項目から前記Ｗｅｂサービスへ入力する入力データ項目の選択を受け付け、受け付けた入力データ項目を管理する入力データ項目管理手段と、
前記入力データ項目管理により管理されている入力データ項目に対応する入力データを受信する入力データ受信手段と、
前記入力データ受信手段により受信した入力データを用いて、前記Ｗｅｂサービス公開手段により公開されている機能を実行するＷｅｂサービス実行手段
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アプリケーションを構築するためのサーバに関する。
【背景技術】
【０００２】
従来から、入出力定義やデータモデル定義などを設定し、Ｗｅｂアプリケーションを構築するＷｅｂアプリケーション構築ツールが存在する。
【０００３】
Ｗｅｂアプリケーション構築ツールには、Ｗｅｂアプリケーション開発者が使用する情報処理装置にインストールしてＷｅｂアプリケーションを構築するタイプや、ブラウザ等を用いてクラウド上で提供されるＷｅｂアプリケーション構築サービスにアクセスしてＷｅｂアプリケーションを構築するタイプ等がある。本発明は、後者のタイプに関する発明である。
【０００４】
一方、Ｗｅｂアプリケーションの持つ機能を、他のアプリケーション等から利用できるようにすべく、Ｗｅｂサービス化したいという要望があった。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１１−５９７５１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかし、特許文献１の仕組みでは、Ｗｅｂアプリケーション構築ツールによって構築したＷｅｂアプリケーションをＷｅｂサービス化することができないという問題があった。
【０００７】
そこで、本発明の目的は、既存のアプリケーションを容易にＷｅｂサービス化する仕組みを提供することである。
【課題を解決するための手段】
【０００８】
アプリケーションの持つ機能をＷｅｂサービスとして提供するサーバであって、前記アプリケーションが当該アプリケーションの画面を介して入力を受け付ける入力項目及び前記アプリケーションが当該アプリケーションの画面に出力する出力項目を管理するアプリケーション入出力項目管理手段と、前記アプリケーション入出力項目管理手段により管理されている入力項目の情報を取得するアプリケーション入力項目取得手段と、前記アプリケーションの持つ機能をＷｅｂサービスとして公開するＷｅｂサービス公開手段と、前記アプリケーション入力項目取得手段により取得された入力項目から前記Ｗｅｂサービスへ入力する入力データ項目の選択を受け付け、受け付けた入力データ項目を管理する入力データ項目管理手段と、前記入力データ項目管理により管理されている入力データ項目に対応する入力データを受信する入力データ受信手段と、前記入力データ受信手段により受信した入力データを用いて、前記Ｗｅｂサービス公開手段により公開されている機能を実行するＷｅｂサービス実行手段とを備えることを特徴とするサーバ。
【発明の効果】
【０００９】
本発明によれば、既存のアプリケーションを容易にＷｅｂサービス化する仕組みを提供することができる。
【図面の簡単な説明】
【００１０】
【図１】第１の実施形態の情報処理システム１００の構成の一例を示す図
【図２】第１の実施形態の情報処理装置１０１およびサーバ１０２のハードウエア構成の一例を示す図
【図３】第１の実施形態の情報処理装置１０１およびサーバ１０２の機能構成の一例を示すブロック図
【図４】第１の実施形態のＷｅｂアプリケーション画面に基づきＷｅｂサービスを構築するフローチャートの一例を示す図
【図５】第１の実施形態のＷｅｂアプリケーション画面構築のフローチャートの一例を示す図
【図６】第１の実施形態のＷｅｂアプリケーション（登録画面）構築／Ｗｅｂサービス入力項目定義の画面の一例を示す図
【図７】第１の実施形態のＷｅｂアプリケーション（検索画面）構築／Ｗｅｂサービス入力項目定義の画面の一例を示す図
【図８】第１の実施形態のＷＳＤＬ生成のフローチャートの一例を示す図
【図９】第１の実施形態のＢＰリクエスト生成のフローチャートの一例を示す図
【図１０】第１の実施形態のＢＰリクエストＷＳＤＬ１０００の一例を示す図
【図１１】第１の実施形態のＢＰレスポンス生成のフローチャートの一例を示す図
【図１２】第１の実施形態のＢＰレスポンスＷＳＤＬ１２００の一例を示す図
【図１３】第１の実施形態のｇｅｔＤａｔａリクエスト生成のフローチャートの一例を示す図
【図１４】第１の実施形態のｇｅｔＤａｔａリクエストＷＳＤＬ１４００の一例を示す図
【図１５】第１の実施形態のｇｅｔＤａｔａレスポンス生成のフローチャートの一例を示す図
【図１６】第１の実施形態のｇｅｔＤａｔａレスポンスＷＳＤＬ１６００の一例を示す図
【図１７】第１の実施形態のＷｅｂアプリケーション画面及びＷｅｂサービス利用処理の一例を示すフローチャート
【図１８】第１の実施形態の情報処理装置１０１において、作成した画面をＷｅｂサービス化して実行した画面の一例を示す図
【図１９】第１の実施形態のサーバ１０２にて管理するテーブルの一例を示す図
【図２０】第１の実施形態のサーバ１０２にて生成するＷｅｂサービスインタフェースコードの一例を示す図
【図２１】第２の実施形態のＷｅｂアプリケーション画面に基づきＷｅｂサービスを構築するフローチャートの一例を示す図
【図２２】第２の実施形態のＷｅｂアプリケーション（登録画面）構築／Ｗｅｂサービス入力項目定義の画面の一例を示す図
【図２３】第２の実施形態のサーバ１０２にて管理するテーブルの一例を示す図
【図２４】第３の実施形態のＷｅｂアプリケーション画面に基づきＷｅｂサービスを構築するフローチャートの一例を示す図
【図２５】第３の実施形態のＷｅｂアプリケーション（登録画面）構築／Ｗｅｂサービス入力項目定義の画面の一例を示す図
【図２６】第３の実施形態のサーバ１０２にて管理するテーブルの一例を示す図
【図２７】第４の実施形態のＷｅｂアプリケーション画面に基づきＷｅｂサービスを構築するフローチャートの一例を示す図
【図２８】第４の実施形態のＷｅｂアプリケーション（登録画面）構築／Ｗｅｂサービス入力項目定義の画面の一例を示す図
【図２９】第４の実施形態のＷｅｂアプリケーション／Ｗｅｂサーバの設定の一例を示す図
【発明を実施するための形態】
【００１１】
以下、図面を参照して本発明の実施形態を詳細に説明する。
【００１２】
〔第１の実施形態〕
図１は、本実施形態の情報処理システム１００の構成の一例を示す図である。
【００１３】
図１に示すように、情報処理システム１００は、情報処理装置１０１およびサーバ１０２が、ネットワーク１０３により通信可能に接続された構成をとる。
【００１４】
情報処理装置１０１は、Ｗｅｂアプリケーション開発者が使用する、デスクトップＰＣ、携帯電話、スマートフォン、タブレット端末、ノートＰＣ、およびＰＤＡ端末などの端末であって、ネットワーク１０３を介してサーバ１０２の記憶装置に記憶されている情報を取得し、インストールされているブラウザなどのアプリケーションを用いてディスプレイ装置２１０に表示する。
【００１５】
サーバ１０２は、Ｗｅｂアプリケーション構築サービスを提供するサーバであって、情報処理装置１０１からの要求に応じて、情報の検索を行い、検索結果を返信する。情報処理装置１０１とサーバ１０２間の通信は、ＨＴＴＰのリクエスト・レスポンスでもよいし、ＳＯＡＰなどを利用したウェブサービスに用いられるリクエスト・レスポンスなどであってもよい。
【００１６】
つまり、情報処理装置１０１は、サーバ１０２が提供するＷｅｂアプリケーション構築サービスにアクセスして、Ｗｅｂアプリケーションを構築する。
【００１７】
なお、本実施形態においては、Ｗｅｂアプリケーション構築サービスで構築されるアプリケーションは、アプリケーション利用者の情報処理装置のブラウザを利用するＷｅｂアプリケーションとしたが、Ｗｅｂアプリケーションに限定するものではなく、Ｗｅｂ以外の技術を用いたアプリケーションであってもよい。
【００１８】
また、本実施形態においては、情報処理システム１００は、情報処理装置１０１がサーバ１０２の記憶装置に記憶されているテーブルのデータを検索するシステムとしたが、これに限定するものではなく、情報処理装置１０１がサーバ１０２以外の記憶装置に記憶されている情報の検索結果を表示する仕組みであってもよい。
【００１９】
以下、図２を用いて、図１に示した情報処理装置１０１およびサーバ１０２に適用可能なハードウエア構成の一例について説明する。
【００２０】
図２において、２０１はＣＰＵで、システムバス２０４に接続される各デバイスやコントローラを統括的に制御する。また、ＲＯＭ２０３あるいは外部メモリ２１１には、ＣＰＵ２０１の制御プログラムであるＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ  ／  Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）やオペレーティングシステムプログラム（以下、ＯＳ）や、各サーバ或いは各ＰＣの実行する機能を実現するために必要な各種プログラム等が記憶されている。
【００２１】
２０２はＲＡＭで、ＣＰＵ２０１の主メモリ、ワークエリア等として機能する。ＣＰＵ２０１は、処理の実行に際して必要なプログラム等をＲＯＭ２０３あるいは外部メモリ２１１からＲＡＭ２０２にロードして、該ロードしたプログラムを実行することで各種動作を実現するものである。
【００２２】
また、２０５は入力コントローラで、入力装置２０９等からの入力を制御する。２０６はビデオコントローラで、液晶ディスプレイ等のディスプレイ装置２１０への表示を制御する。なお、ディスプレイ装置は、液晶ディスプレイに限られず、ＣＲＴディスプレイなどであっても良い。これらは必要に応じてクライアントが使用するものである。
【００２３】
２０７はメモリコントローラで、ブートプログラム，各種のアプリケーション，フォントデータ，ユーザファイル，編集ファイル，各種データ等を記憶するハードディスク（ＨＤ）や、フレキシブルディスク（ＦＤ）、或いはＰＣＭＣＩＡカードスロットにアダプタを介して接続されるコンパクトフラッシュ（登録商標）メモリ等の外部メモリ２１１へのアクセスを制御する。
【００２４】
２０８は通信Ｉ／Ｆコントローラで、ネットワーク１０３を介して外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、ＴＣＰ／ＩＰを用いた通信等が可能である。
【００２５】
なお、ＣＰＵ２０１は、例えばＲＡＭ２０２内の表示情報用領域へアウトラインフォントの展開（ラスタライズ）処理を実行することにより、ディスプレイ装置２１０上での表示を可能としている。また、ＣＰＵ２０１は、ディスプレイ装置２１０上の不図示のマウスカーソル等でのユーザ指示を可能とする。
【００２６】
ハードウエア上で動作する各種プログラムは、外部メモリ２１１に記録されており、必要に応じてＲＡＭ２０２にロードされることによりＣＰＵ２０１によって実行されるものである。
【００２７】
なお、全ての装置がこれらの構成を備えているわけではなく、必要なものを夫々備えていればよい。
【００２８】
図３は、情報処理装置１０１の機能構成の一例を示すブロック図である。
【００２９】
アプリケーション画面生成部３０１は、データベースに登録されているレコードを選択するレコード選択部品を含む、アプリケーション画面を生成する機能部である。
【００３０】
アプリケーション入出力定義情報取得部３０２は、アプリケーションの定義情報を読み取り、当該アプリケーションへ入力する入力データ及び／又は当該アプリケーションから出力される出力データの定義情報を取得する機能部である。
【００３１】
また、アプリケーション入出力定義情報取得部３０２は、アプリケーションの定義情報を読み取り、当該アプリケーションの画面を介して入力される入力データ及び／又は当該アプリケーションの画面に出力される出力データの定義情報を取得する機能部である、ということもできる。
【００３２】
Ｗｅｂサービス構築部３０３は、アプリケーション入出力定義情報取得部３０２により取得された入力データの定義情報に従ってＷｅｂサービスを構築する機能部である。
【００３３】
アプリケーション入出力項目管理部３１１は、アプリケーションが当該アプリケーションの画面を介して入力を受け付ける入力項目及びアプリケーションが当該アプリケーションの画面に出力する出力項目を管理する機能部である。
アプリケーション入力項目取得部３１２は、アプリケーション入出力項目管理部３１１により管理されている入力項目の情報を取得する機能部である。
Ｗｅｂサービス公開部３１３は、アプリケーションの持つ機能をＷｅｂサービスとして公開する機能部である。
入力データ項目管理部３１４は、アプリケーション入力項目取得部３１２により取得された入力項目からＷｅｂサービスへ入力する入力データ項目の選択を受け付け、受け付けた入力データ項目を管理する機能部である。
入力データ受信部３１５は、入力データ項目管理部３１４により管理されている入力データ項目に対応する入力データを受信する機能部である。
Ｗｅｂサービス実行部３１６は、入力データ受信部３１５により受信した入力データを用いて、Ｗｅｂサービス公開部３１３により公開されている機能を実行する機能部である。
【００３４】
アプリケーション出力項目取得部３１７は、アプリケーション入出力項目管理部３１１により管理されている出力項目の情報を取得する機能部である。
出力データ項目管理部３１８は、アプリケーション出力項目取得部３１７により取得された出力項目からＷｅｂサービスが出力する出力データ項目の選択を受け付け、受け付けた出力データ項目を管理する機能部である。
出力データ送信部３１９は、Ｗｅｂサービス実行部３１６により機能が実行された後、出力データ項目管理部３１８により管理されている出力データ項目に従って出力データを送信する機能部である。
【００３５】
Ｗｅｂサービス定義情報生成部３２０は、入力データ項目管理部３１４により管理されている入力データ項目をＷｅｂサービスへ入力する入力データ項目とし、出力データ項目管理部３１８により管理されている出力データ項目をＷｅｂサービスが出力する出力データ項目として定義したＷｅｂサービス定義情報を生成する機能部である。
追加入力データ項目受付部３２１は、アプリケーション入力項目取得部３１２により取得された入力項目以外の項目をＷｅｂサービスへ入力する入力データ項目として追加する指示を受け付ける機能部である。
追加入力データ受信部３２２は、追加入力データ項目受付部３２１により受け付けた入力データ項目に対応する追加入力データを受信する機能部である。
Ｗｅｂサービス実行部３１６は、入力データ受信部３１５により受信した入力データ及び追加入力データ受信部３１５により受信した追加入力データを用いて、Ｗｅｂサービス公開部３１３により公開されているアプリケーションの持つ機能を実行する機能部である。
【００３６】
追加出力データ項目受付部３２３は、アプリケーション出力項目取得部３１７により取得された出力項目以外の項目をＷｅｂサービスから出力する出力データ項目として追加する指示を受け付ける機能部である。
出力データ送信部３１９は、Ｗｅｂサービス実行部３１６により機能が実行された後、追加出力データ項目受付部３２３により受け付けた出力データ項目に対応する出力データを送信する機能部である。
【００３７】
入力データ項目管理部３１４は、アプリケーションの機能ごとに入力データ項目を管理する機能部である。
機能識別情報受信部３２４は、機能を識別する機能識別情報を受信する機能部である。、
入力データ受信部３１５は、機能識別情報受信部３２４により受信した機能識別情報に対応する機能に対応付けて入力データ項目管理部３１４により管理されている入力データ項目に対応する入力データを受信する機能部である。
Ｗｅｂサービス実行部３１６は、入力データ受信部３１５により受信した入力データを用いて、機能識別情報受信部３２４により受信した機能識別情報に対応する機能を実行する機能部である。
【００３８】
アプリケーション機能設定管理部３３１は、アプリケーションが持つ機能の設定を管理する機能部である。
アプリケーション機能選択受付部３３２は、アプリケーション機能設定管理部３３１により管理されている機能のうち、Ｗｅｂサービスとして公開する機能の選択を受け付ける機能部である。
【００３９】
第１アプリケーション機能設定変更部３３３は、アプリケーション機能選択受付部３３２により受け付けた機能をＷｅｂサービスとして公開するために設定を変更する機能部である。
Ｗｅｂサービス公開部３３４は、アプリケーション機能選択受付部３３２により受け付けた機能をＷｅｂサービスとして公開する機能部である。
第２アプリケーション機能設定変更部３３５は、アプリケーション機能設定管理部３３１により管理されている設定のうち、アプリケーション機能選択受付部３３２により受け付けた機能を利用する設定を、第１アプリケーション機能設定変更部３３３による変更に従って変更する機能部である。
【００４０】
図１９は、第１の実施形態のサーバ１０２にて管理するテーブルの一例である。
画面テーブル１９１０は、画面を管理するテーブルであり、「画面ＩＤ（主キー）」「画面名」のカラムを持つ。Ｗｅｂアプリケーション画面を作成する画面６００（図６）にて画面が作成されると、画面テーブル１９１０にレコードが登録される。
画面部品テーブル１９２０は、画面に配置した部品を管理するテーブルであり、「画面ＩＤ」「部品ＩＤ」「ｘ座標」「ｙ座標」「部品種別」「部品名」「文字数」「必須」「部品属性１」「部品属性２」…のカラムを持つ。画面を作成する画面６００にて画面部品を配置し、保存ボタン６１９の押下を受け付けると、画面部品テーブル１９２０にレコードが登録される。すなわち、画面部品テーブル１９２０は、アプリケーションの定義情報の一例である。
【００４１】
なお、「ｘ座標」「ｙ座標」には、部品の配置された位置を記憶し、「部品種別」には、テキストボックス・ラジオボタン・セレクトボックスなどの部品の種別を記憶する。また、「部品属性１」「部品属性２」…には、「部品種別」毎に異なる属性の値を持つことができる。
【００４２】
顧客マスタテーブル１９３０は、作成した画面（顧客マスタ登録画面１８２０にて登録されたレコードが記憶されるテーブルである。
顧客マスタテーブル１９３０は、顧客情報を管理するマスタテーブルであり、「顧客ＩＤ（主キー）」「顧客名」「住所」「電話」「メール」のカラムを持つ。
【００４３】
図６は、第１の実施形態の情報処理装置１０１が表示する、画面を作成する画面の一例を示す図である。画面６００は、画面部品部６０１と部品配置部６０２から成る。
【００４４】
画面部品部６０１には、画面に配置する画面部品のアイコン（ボタン）が表示されており、これらのアイコンをドラッグし、部品配置部６０２にドロップすることで、画面部品を画面に配置することができる。画面部品には、文字を表示するテキスト６１１（ラベルとも言う）、テキストボックス６１２、テキストエリア６１３、ラジオボタン６１４、チェックボックス６１５、セレクトボックス６１６、他画面のデータの値を参照する他画面データコピー６１７（ルックアップとも言う）、ボタン６１８などの種類がある。
【００４５】
部品配置部６０２に画面部品を配置し、保存ボタン６１９を押下することにより、配置した画面部品の情報がサーバ１０２に送信され、画面部品テーブル１９２０に記憶される。
【００４６】
図４は、第１の実施形態のＷｅｂアプリケーション画面に基づきＷｅｂサービスを構築するフローチャートである。
【００４７】
ステップＳ４０１において、情報処理装置１０１のＣＰＵ２０１は、Ｗｅｂアプリケーション画面構築処理を行う。詳細は、後述する図５にて説明する。
【００４８】
ステップＳ４０２において、情報処理装置１０１のＣＰＵ２０１は、「この画面をＷｅｂサービス化しますか？」ダイアログ６４０（図６）を表示し、Ｗｅｂサービス化する指示を受け付けた後、Ｗｅｂサービスの入出力項目選択を受け付け（図６の６３１、図７の７３１、７３２）、選択された入出力項目をサーバ１０２に送信する。すなわち、ステップＳ４０２は、取得された入力項目からＷｅｂサービスへ入力する入力データ項目の選択を受け付ける処理の一例を示すステップである。また、ステップＳ４０２は、取得された出力項目からＷｅｂサービスが出力する出力データ項目の選択を受け付ける処理の一例を示すステップである。
【００４９】
つまり、アプリケーション開発者は、アプリケーション構築画面（例：図６の６３０、図７の７３０）において、Ｗｅｂサービスへの入出力項目としたい画面項目にチェックを入れることで、そのチェックに従ったＷＳＤＬを作成することができるため、構築したアプリケーションをＷｅｂサービスとして公開することができるようになる。
【００５０】
ステップＳ４０３において、サーバ１０２のＣＰＵ２０１は、選択された入出力項目を受信する。
【００５１】
ステップＳ４０４において、サーバ１０２のＣＰＵ２０１は、受信した入出力項目を記憶する。具体的には、画面部品テーブル１９２０における、受信した入出力項目に対応するレコードについて、「Ｗｅｂサービス」カラムに“Ｉ”または“Ｏ”を登録する。「Ｗｅｂサービス」カラムに“Ｉ”または“Ｏ”のどちらを登録するかは、画面６３０に存在するアクションボタンの種類で決定する。例えば、画面６３０のようにアクションボタン＝“登録”、“更新”、“削除”、“検索”が存在する場合は“Ｉ”、画面７３０の下画面のように“登録”、“更新”、“削除”、“検索”のアクションボタンが存在しない場合は“Ｏ”とする。すなわち、ステップＳ４０４は、取得された入力項目からＷｅｂサービスへ入力する入力データ項目の選択を受け付け、受け付けた入力データ項目を管理する処理の一例を示すステップである。また、ステップＳ４０４は、取得された出力項目からＷｅｂサービスが出力する出力データ項目の選択を受け付け、受け付けた出力データ項目を管理する処理の一例を示すステップである。
【００５２】
また、画面部品テーブル１９２０は、Ｗｅｂサービスへ入力する入力データ項目を管理する手段の一例である。また、画面部品テーブル１９２０は、Ｗｅｂサービスが出力する出力データ項目を管理する手段の一例である。
【００５３】
ステップＳ４０５において、情報処理装置１０１のＣＰＵ２０１は、ＷｅｂアプリケーションとＷｅｂサービスの提供の開始の指示を受け付ける。
【００５４】
ステップＳ４０６において、情報処理装置１０１のＣＰＵ２０１は、ＷｅｂアプリケーションとＷｅｂサービスの提供の要求をサーバ１０２に送信する。
【００５５】
ステップＳ４０７において、サーバ１０２のＣＰＵ２０１は、ＷｅｂアプリケーションとＷｅｂサービスの提供の要求を受信する。
【００５６】
ステップＳ４０８において、サーバ１０２のＣＰＵ２０１は、Ｗｅｂアプリケーションの設定情報を取得する。すなわち、ステップＳ４０８は、アプリケーションへ入力する入力データおよび当該アプリケーションから出力される出力データの定義情報を取得する処理の一例を示すステップである。また、ステップＳ４０８は、管理されている入力項目の情報を取得する処理の一例を示すステップである。また、ステップＳ４０８は、管理されている出力項目の情報を取得する処理の一例を示すステップである。
【００５７】
ステップＳ４０９において、サーバ１０２のＣＰＵ２０１は、取得したＷｅｂアプリケーションの設定情報を用いて、Ｗｅｂアプリケーションの提供を開始する。具体的には、画面テーブル１９１０および画面部品テーブル１９２０の情報を取得し、Ｗｅｂアプリ利用者の要求に応じて、画面情報を生成することで、Ｗｅｂアプリケーションとして動作させる。
【００５８】
ステップＳ４１０において、サーバ１０２のＣＰＵ２０１は、Ｗｅｂサービスの設定情報を取得する。具体的には、画面テーブル１９１０および画面部品テーブル１９２０のＷｅｂサービス＝“Ｉ”または“Ｏ”の情報を取得する。
【００５９】
ステップＳ４１１において、サーバ１０２のＣＰＵ２０１は、取得したＷｅｂサービスの設定情報にＷｅｂサービスの入出力項目（Ｗｅｂサービスカラム＝“Ｉ”または“Ｏ”の項目）が存在するか判定する。有ると判定した場合はステップＳ４１２に進み、無いと判定した場合は図４の処理を終了する。
【００６０】
ステップＳ４１２において、サーバ１０２のＣＰＵ２０１は、ＷＳＤＬの作成処理を行う。詳細は、後述する図８にて説明する。
【００６１】
ステップＳ４１３において、サーバ１０２のＣＰＵ２０１は、取得したＷｅｂサービスの設定情報を用いて、Ｗｅｂサービスの提供を開始する。すなわち、ステップＳ４１２及びステップＳ４１３は、取得された入力データの定義情報に従ってＷｅｂサービスを構築する処理の一例を示すステップである。また、ステップＳ４１３は、アプリケーションの持つ機能をＷｅｂサービスとして公開する処理の一例を示すステップである。具体的には、画面テーブル１９１０および画面部品テーブル１９２０のＷｅｂサービス＝“Ｉ”または“Ｏ”の情報を取得し、Ｗｅｂサービスのリクエスト文の受信に応じて、Ｗｅｂサービスのオペレーションを実行し、レスポンス文を返信する。
【００６２】
以上で、図４の説明を終了する。
【００６３】
以上により、構築したアプリケーションを用いて、アプリケーションを容易にＷｅｂサービス化することができる。
【００６４】
図５は、第１の実施形態のＷｅｂアプリケーション画面構築のフローチャートである。図５を用いて、Ｗｅｂアプリケーション画面を構築する処理について説明する。
【００６５】
ステップＳ５０１において、情報処理装置１０１のＣＰＵ２０１は、Ｗｅｂアプリケーション画面を作成する開発者のログインを受け付ける。
【００６６】
ステップＳ５０２において、情報処理装置１０１のＣＰＵ２０１は、Ｗｅｂアプリケーション画面を作成する操作を受け付ける。具体的には、表示されたメニュー（不図示）から、画面作成ボタンの押下を受け付ける。
【００６７】
ステップＳ５０３において、情報処理装置１０１のＣＰＵ２０１は、Ｗｅｂアプリケーション画面の作成要求をサーバ１０２に送信する。
【００６８】
ステップＳ５０４において、サーバ１０２のＣＰＵ２０１は、Ｗｅｂアプリケーション画面の作成要求を受信する。
【００６９】
ステップＳ５０５において、サーバ１０２のＣＰＵ２０１は、Ｗｅｂアプリケーション画面を作成する画面情報を生成する。
【００７０】
ステップＳ５０６において、サーバ１０２のＣＰＵ２０１は、生成した画面情報を情報処理装置１０１に送信する。
【００７１】
ステップＳ５０７において、情報処理装置１０１のＣＰＵ２０１は、Ｗｅｂアプリケーション画面を作成する画面情報を受信する。
【００７２】
ステップＳ５０８において、情報処理装置１０１のＣＰＵ２０１は、受信した画面情報を用いて、Ｗｅｂアプリケーション画面作成画面６００（図６）を表示する。
【００７３】
ステップＳ５０９において、情報処理装置１０１のＣＰＵ２０１は、画面作成操作を受け付け、判定する。部品が配置された場合はステップＳ５１０に進み、設定ボタンが押下された場合はステップＳ５１１に進み、保存ボタンが押下された場合はステップＳ５１４に進む。
【００７４】
ステップＳ５１０において、情報処理装置１０１のＣＰＵ２０１は、画面部品部６０１からドラッグされた画面部品を、部品配置部６０２のドロップされた位置に表示する。ここでは、顧客マスタ登録画面のデザインとして図６の６２０のように画面部品（６２１〜６２８）が配置されたとする。
【００７５】
ステップＳ５１１において、情報処理装置１０１のＣＰＵ２０１は、配置された画面部品の詳細情報を設定可能な属性設定画面(不図示）を表示する。
【００７６】
ステップＳ５１２において、情報処理装置１０１のＣＰＵ２０１は、属性設定の入力を受け付ける。具体的には、属性設定画面では部品名、文字数、必須チェックボックスなど詳細情報の入力を受け付ける。
【００７７】
ステップＳ５１３において、情報処理装置１０１のＣＰＵ２０１は、部品配置部６０２に配置された画面部品、および属性設定画面にて設定された属性情報をＲＡＭ２０２に記憶する。
【００７８】
ステップＳ５１４において、情報処理装置１０１のＣＰＵ２０１は、ＲＡＭ２０２から作成した画面情報を取得し、サーバ１０２に送信する。
【００７９】
ステップＳ５１５において、サーバ１０２のＣＰＵ２０１は、作成した画面情報を受信する。
【００８０】
ステップＳ５１６において、サーバ１０２のＣＰＵ２０１は、受信した画面情報を記憶する。具体的には、受信した画面情報に含まれる画面名は、画面テーブル１９１０に記憶する。また、配置された画面部品の情報（配置位置、部品種別、文字数、必須チェックボックス、その他の部品属性は、画面部品テーブル１９２０に記憶する。すなわち、ステップＳ５１６は、アプリケーションが当該アプリケーションの画面を介して入力を受け付ける入力項目及びアプリケーションが当該アプリケーションの画面に出力する出力項目を管理する処理の一例を示すステップである。
【００８１】
以上で、図５の画面作成処理の説明を終了する。
【００８２】
図８は、ＷＳＤＬ生成のフローチャートの一例を示す図である。
【００８３】
ステップＳ８０１において、サーバ１０２のＣＰＵ２０１は、Ｗｅｂサービス用の入出力定義を解析する。具体的には、画面部品テーブル１９２０を「Ｗｅｂサービス」カラム＝“Ｉ”または“Ｏ”で検索し、ヒットしたレコードを取得する。
【００８４】
ステップＳ８０２において、サーバ１０２のＣＰＵ２０１は、取得した入出力定義の情報を基にして、図２０の２００３のようなデータ取得のＷｅｂサービスインタフェースコードを生成する。具体的には、入出力定義コード名を用いて、戻り値を“ＷＳＩｏ”＋  入出力定義コード名  ＋“ＧｅｔＤａｔａＲｅｓｕｌｔ”とし、メソッド名を  入出力定義コード名＋“＿ｇｅｔＤａｔａ”として出力し、パラメータを引数とする。
【００８５】
なお、このメソッドは、Ｗｅｂサービスを利用する端末から、ｇｅｔＤａｔａのＷｅｂサービスが呼び出されたときに実行される。
【００８６】
また、アクション項目にＢＰ（ビジネスプロセス）定義がある場合は、図２０の２００４のようなビジネスプロセスを呼び出すＷｅｂサービスインタフェースコードを生成する。具体的には、入出力定義コード名を用いて、戻り値を“ＷＳＩｏＡｃｔｉｏｎＲｅｓｕｌｔ”、メソッド名を  入出力定義コード名  ＋“＿ｅｘｅｃ”＋  アクションのコード名として出力し、パラメータを引数とする。
【００８７】
なお、このメソッドは、Ｗｅｂサービスを利用する端末から、ＢＰ（ビジネスプロセス）のＷｅｂサービスが呼び出されたときに実行される。
【００８８】
ステップＳ８０３において、サーバ１０２のＣＰＵ２０１は、取得した入出力定義の情報と同じ画面に存在するアクションボタンを取得した入出力定義の情報から取得し、アクションボタンの種類によって判定する。アクションボタン＝“登録”、“更新”、“削除”の場合はステップＳ８０４に進み、アクションボタン＝“検索”の場合はステップＳ８０６に進む。
【００８９】
ステップＳ８０４において、ＢＰリクエスト生成（図１３）を行う。この処理については、図１３にて詳細を説明する。
【００９０】
ステップＳ８０５において、ＢＰレスポンス生成（図１５）を行う。この処理については、図１５にて詳細を説明する。
【００９１】
なお、ＢＰリクエスト／ＢＰレスポンスは対になっており、それぞれアクション実行とアクション結果取得のために利用される。
【００９２】
ステップＳ８０６において、サーバ１０２のＣＰＵ２０１は、ｇｅｔＤａｔａリクエスト生成（図９）を行う。この処理については、図９にて詳細を説明する。
【００９３】
ステップＳ８０７において、サーバ１０２のＣＰＵ２０１は、ｇｅｔＤａｔａレスポンス生成（図１１）を行う。この処理については、図１１にて詳細を説明する。
【００９４】
なお、ｇｅｔＤａｔａリクエスト／ｇｅｔＤａｔａレスポンスは対になっており、主に画面情報を取得するために利用される。
【００９５】
以上で、図８の説明を終了する。
【００９６】
図９は、ＢＰ（ビジネスプロセス）リクエスト生成のフローチャートの一例を示す図である。
【００９７】
ステップＳ９０１において、サーバ１０２のＣＰＵ２０１は、ＷＳＤＬにビジネスプロセス定義を出力する（図１０の１００１）。具体的には、入出力定義コード名とアクションの項目コード名を用いて、ｏｐｅｒａｔｉｏｎ  ｎａｍｅ＝  入出力定義コード名  ＋“＿ｅｘｅｃ”＋  アクションの項目コード名  ＋ｍｅｓｓａｇｅ＝  入出力定義コード名  ＋“＿ｅｘｅｃ”＋  アクションの項目コード名  ＋“Ｒｅｑｕｅｓｔ”  とする。これにより、「ＩＯ００２＿ＷＳＤＬ＿ｅｘｅｃＩＮＳＥＲＴ」という登録処理がＷｅｂサービスとして公開され、外部アプリケーションから利用することができるようになる。
【００９８】
ステップＳ９０２において、サーバ１０２のＣＰＵ２０１は、Ｗｅｂサービス用の入出力定義の有無を判定する。ある場合はステップＳ９０４に進み、ない場合は図９の処理を終了する。
【００９９】
ステップＳ９０３において、サーバ１０２のＣＰＵ２０１は、ＷＳＤＬにビジネスプロセスへのパラメータを出力する（図１４の１４０２）。具体的には、入出力定義コード名とアクションの項目コード名を用いて、ｅｌｅｍｅｎｔ＝入出力定義コード名  ＋“＿ｅｘｅｃ”＋  アクションの項目コード名  とする。これにより、登録処理「ＩＯ００２＿ＷＳＤＬ＿ｅｘｅｃＩＮＳＥＲＴ」の呼出し時に、外部アプリケーションからパラメータを与えることができるようになる。
【０１００】
ステップＳ９０４において、サーバ１０２のＣＰＵ２０１は、Ｗｅｂサービス用の入出力定義から、入出力項目を取得し、ＷＳＤＬに項目定義を出力する（図１０の１００３）。すなわち、ステップＳ９０４は、管理されている入力データ項目をＷｅｂサービスへ入力する入力データ項目として定義したＷｅｂサービス定義情報を生成する処理の一例を示すステップである。
【０１０１】
具体的には、入出力定義画面（入出力）１９００の対象データモデル１９０２に設定されたデータモデルの項目コード２００１（図２０）を用いて、  ｎａｍｅ＝項目コードに従ってデータの型名を決定し、  ｔｙｐｅ＝“ｘｓ：”＋型名  とする。図１４の１４０３の記述から、登録処理のパラメータは、Ｓｔｒｉｎｇ型の「ｉｔｅｍ＿ｋｅｙ」、Ｓｔｒｉｎｇ型の「ｉｔｅｍ＿ｐａｒａｍ」、Ｓｔｒｉｎｇ型の「ｉｔｅｍ＿ｖａｌｕｅ」であるということがわかる。これにより、Ｗｅｂサービスの実行時のパラメータを公開できるようになる。
【０１０２】
以上で、図１３の説明を終了する。
【０１０３】
図１０は、ＢＰリクエストＷＳＤＬ１０００の一例を示す図である。図１０は、入出力定義にビジネスプロセスが定義されたアクション項目があり、かつ入出力項目にＩＯまたはＩ項目が存在する場合のＢＰリクエストＷＳＤＬの一例である。
【０１０４】
図１１は、ＢＰレスポンス生成のフローチャートの一例を示す図である。
【０１０５】
ステップＳ１１０１において、サーバ１０２のＣＰＵ２０１は、ＷＳＤＬにビジネスプロセス定義を出力する（図１２の１２０１）。具体的には、入出力定義コード名とアクションの項目コード名を用いて、ｏｐｅｒａｔｉｏｎ  ｎａｍｅ＝  入出力定義コード名  ＋“＿ｅｘｅｃ”＋アクションの項目コード名  ＋ｍｅｓｓａｇｅ＝  入出力定義コード名  ＋“＿ｅｘｅｃ”＋  アクションの項目コード名  ＋“Ｒｅｓｐｏｎｓｅ”  とする。これにより、登録処理「ＩＯ００２＿ＷＳＤＬ＿ｅｘｅｃＩＮＳＥＲＴ」を外部アプリケーションから利用した時の戻り値を公開できるようになる。
【０１０６】
ステップＳ１１０２において、サーバ１０２のＣＰＵ２０１は、ＷＳＤＬに次画面情報を出力する（図１２の１２０２）。具体的には、ｎｅｘｔＩｏの値が空の場合は、画面遷移を行わずに自画面に遷移することを表すものとする。これにより、登録処理「ＩＯ００２＿ＷＳＤＬ＿ｅｘｅｃＩＮＳＥＲＴ」を利用した後に遷移する入出力を公開できるようになる。
【０１０７】
ステップＳ１１０３において、サーバ１０２のＣＰＵ２０１は、ＷＳＤＬに次入出力パラメータ定義を出力する（図１２の１２０３）。すなわち、ステップＳ１１０３は、管理されている出力データ項目をＷｅｂサービスが出力する出力データ項目として定義したＷｅｂサービス定義情報を生成する処理の一例を示すステップである。これにより、登録処理「ＩＯ００２＿ＷＳＤＬ＿ｅｘｅｃＩＮＳＥＲＴ」を利用した結果、次の画面へどのような引数が渡されるかを公開できるようになる。
【０１０８】
以上で、図１１の説明を終了する。
【０１０９】
図１３は、ｇｅｔＤａｔａリクエスト生成のフローチャートの一例を示す図である。
【０１１０】
ステップＳ１３０１において、サーバ１０２のＣＰＵ２０１は、ＷＳＤＬにデータ取得処理のリクエストの記述を出力する（図１４の１４０１）。具体的には、入出力定義コード名を用いて、  ｏｐｅｒａｔｉｏｎ  ｎａｍｅ＝  入出力定義コード名＋“＿ｇｅｔＤａｔａ”、ｍｅｓｓａｇｅ＝  入出力定義コード名＋“＿ｇｅｔＤａｔａＲｅｑｕｅｓｔ”  のように出力する。これにより、「ＩＯ００２＿ＷＳＤＬ＿ｇｅｔＤａｔａ」という検索処理がＷｅｂサービスとして公開され、外部アプリケーションから利用することができるようになる。
【０１１１】
ステップＳ１３０２において、サーバ１０２のＣＰＵ２０１は、入出力定義にパラメータがあるか否かを判定し、ある場合はステップＳ１３０３に進み、ない場合は図１３の処理を終了する。具体的には、パラメータを示す文字列が含まれる場合は、図１４の１４０２の記述を出力し、ステップＳ１３０３に進む。１４０２の記述は、具体的には、入出力定義コード名を用いて、  ｅｌｅｍｅｎｔ＝“ｎｓ：”＋  入出力定義コード名  ＋“＿ｇｅｔＤａｔａ”  とする。これにより、検索処理「ＩＯ００２＿ＷＳＤＬ＿ｇｅｔＤａｔａ」を呼び出す際に、パラメータを送ることができるようになる。
【０１１２】
ステップＳ１３０３において、ＷＳＤＬに図１４の１４０３のような記述をパラメータ数だけ出力する。すなわち、ステップＳ１３０３は、管理されている入力データ項目をＷｅｂサービスへ入力する入力データ項目として定義したＷｅｂサービス定義情報を生成する処理の一例を示すステップである。具体的に、１４０３の記述は、パラメータの通し番号Ｎ（
【０１１３】
数字の数字部）を用いて、  ｎａｍｅ＝“ｐａｒａｍ”＋Ｎ  とする。
【０１１４】
以上で、図１３の説明を終了する。
【０１１５】
図１４は、ｇｅｔＤａｔａリクエストＷＳＤＬ１４００の一例を示す図である。図１５は、ｇｅｔＤａｔａレスポンス生成のフローチャートの一例を示す図である。
【０１１６】
ステップＳ１５０１において、サーバ１０２のＣＰＵ２０１は、ＷＳＤＬにデータ取得処理のレスポンスの記述を出力する（図１６の１６０１）。具体的には、入出力定義コード名を用いて、  ｏｐｅｒａｔｉｏｎ  ｎａｍｅ＝  入出力定義コード名＋“＿ｇｅｔＤａｔａ”、  ｍｅｓｓａｇｅ＝  入出力定義コード名＋“＿ｇｅｔＤａｔａＲｅｓｐｏｎｓｅ”  のように出力する。これにより、Ｗｅｂサービスとして公開された検索処理「ＩＯ００２＿ＷＳＤＬ＿ｇｅｔＤａｔａ」の戻り値を公開することができるようになる。
【０１１７】
ステップＳ１５０２において、サーバ１０２のＣＰＵ２０１は、Ｗｅｂサービス用の入出力定義から、入出力項目を取得し、ＷＳＤＬに項目定義を出力する（図１２の１２０２）。すなわち、ステップＳ１５０２は、管理されている出力データ項目をＷｅｂサービスが出力する出力データ項目として定義したＷｅｂサービス定義情報を生成する処理の一例を示すステップである。
【０１１８】
具体的には、入出力定義画面（入出力）１９００の対象データモデル１９０２に設定されたデータモデルの項目コードを用いて、  ｎａｍｅ＝項目コード  とし、データの型名を決定し、  ｔｙｐｅ＝“ｘｓ：”＋型名  とする。図１２の１２０２の記述から、検索処理の結果として、Ｓｔｒｉｎｇ型の「ｉｔｅｍ＿ｋｅｙ」と、Ｓｔｒｉｎｇ型の「ｉｔｅｍ＿ｖａｌｕｅ」という項目が出力されることがわかる。これにより、Ｗｅｂサービスの実行結果の戻り値に含まれる項目ＩＤと型情報を公開できるようになる。
【０１１９】
なお、図２０は、Ｗｅｂアプリケーション構築ツールによって生成されたＷｅｂアプリケーションおよびＷｅｂサービスが利用するデータモデル定義画面の一例を示す図である。この画面で定義する各項目はＷｅｂアプリケーションおよびＷｅｂサービスが接続するデータベースのテーブルのカラム名と一致する。
【０１２０】
以上で、図１５の説明を終了する。
【０１２１】
図１６は、ｇｅｔＤａｔａレスポンスＷＳＤＬ１６００の一例を示す図である。図１６は、入出力定義に対象条件１９０３の設定があり、かつ出力項目が存在する場合のレスポンスＷＳＤＬの一例である。
【０１２２】
以上の図９〜図１５の処理によってＷＳＤＬファイルを生成することにより、プログラムへ引数として入力される項目を定義する入力定義情報やプログラムから処理結果として出力する項目を定義する出力定義情報を管理するアプリケーション開発ツールにおいて、アプリケーションの入出力定義情報を用いてＷＳＤＬファイルを生成することができないという問題を解決することができる。
また、図９〜図１５の処理によってＷＳＤＬファイルを生成することにより、アプリケーションの画面を介して入力される項目を定義する入力定義情報やアプリケーションの画面に出力する項目を定義する出力定義情報を管理するアプリケーション開発ツールにおいて、アプリケーションの入出力定義情報を用いてＷＳＤＬファイルを生成することができないという問題を解決することができる、ということもできる。
【０１２３】
図１７は、第１の実施形態のＷｅｂアプリケーション画面及びＷｅｂサービスを利用する処理の一例を示すフローチャートである。図１７を用いて、作成したＷｅｂアプリケーション画面及びＷｅｂサービスを利用する処理について説明する。図１８は、第１の実施形態の情報処理装置１０１において、作成したＷｅｂアプリケーションの一部をＷｅｂサービス化して実行した画面の一例を示す図である。
ここでは、図１８のような顧客マスタ管理アプリケーションのうち、顧客マスタテーブル１９３０に対して行う処理である、登録・更新・検索のうち少なくとも１つの機能をＷｅｂサービス化した場合を想定する。なお、本実施形態においては、サーバ１０２において、Ｗｅｂアプリケーション及びＷｅｂサービスの機能を提供するとした、この方法に限定するものではなく、Ｗｅｂアプリケーション及びＷｅｂサービスの機能を異なるサーバが提供するとしてもよい。
【０１２４】
図１７の情報処理装置１０１は、構築したＷｅｂアプリケーションを利用するアプリ利用者が使用する情報処理装置である。なお、アプリ利用者とアプリ開発者が同一人物というケースも多いため情報処理装置１０１と記したが、図１７の情報処理装置１０１は、当然異なる情報処理装置であってもよい。
【０１２５】
ステップＳ１７０１において、情報処理装置１０１のＣＰＵ２０１は、作成したＷｅｂアプリケーション画面を利用するアプリ利用者のログインを受け付ける。
【０１２６】
ステップＳ１７０２において、情報処理装置１０１のＣＰＵ２０１は、Ｗｅｂアプリケーション画面の利用操作を受け付ける。具体的には、表示されたメニュー（不図示）から、利用する画面に遷移するリンクの押下を受け付ける。
【０１２７】
ステップＳ１７０３において、情報処理装置１０１のＣＰＵ２０１は、Ｗｅｂアプリケーション画面の利用の要求をサーバ１０２に送信する。
【０１２８】
ステップＳ１７０４において、サーバ１０２のＣＰＵ２０１は、Ｗｅｂアプリケーション画面の利用の要求を受信する。
【０１２９】
ステップＳ１７０５において、サーバ１０２のＣＰＵ２０１は、要求された画面の画面情報を生成する。具体的には、画面テーブル１９１０と画面部品テーブル１９２０を用いて、画面情報を生成する。
【０１３０】
ステップＳ１７０６において、サーバ１０２のＣＰＵ２０１は、生成した画面情報を情報処理装置１０１に送信する。すなわち、ステップＳ１７０６は、Ｗｅｂサービスの機能が実行された後、管理されている出力データ項目に従って出力データを送信する処理の一例を示すステップである。
【０１３１】
ステップＳ１７０７において、情報処理装置１０１のＣＰＵ２０１は、画面情報を受信する。
【０１３２】
ステップＳ１７０８において、情報処理装置１０１のＣＰＵ２０１は、受信した画面情報を用いて、画面（例えば、図１８の顧客マスタ登録画面１８１０）を表示する。なお、第１の実施形態においては、ステップＳ１７０８にて表示される画面は、顧客マスタ登録画面１８１０のような、データ登録画面としたが、これに限定するものではなく、顧客マスタ一覧画面１８３０のような、データ一覧画面やデータ検索画面であってもよい。
【０１３３】
ステップＳ１７０９において、情報処理装置１０１のＣＰＵ２０１は、画面操作を受け付け、判定する。データ登録ボタン（図１８の１８１１）が押下された場合はステップＳ１７１０に進み、データ編集ボタン（不図示）が押下された場合はステップＳ１７１１に進み、データ検索ボタン（図６の６２２）が押下された場合はステップＳ１７１２に進み、閉じるボタン（不図示）が押下された場合はこの画面利用処理を終了する。
【０１３４】
ステップＳ１７１０において、情報処理装置１０１のＣＰＵ２０１は、データ登録画面（例えば、顧客マスタ登録画面１８２０）を表示し、データ入力を受け付ける。
【０１３５】
ステップＳ１７１１において、情報処理装置１０１のＣＰＵ２０１は、データ編集画面（例えば、顧客マスタ編集画面（不図示））に編集ボタンで選択されたデータを表示し、データ編集を受け付ける。
【０１３６】
ステップＳ１７１２において、情報処理装置１０１のＣＰＵ２０１は、データ一覧画面（例えば、顧客マスタ一覧画面１８３０）の検索項目に入力された値を用いて検索条件を作成する。
【０１３７】
ステップＳ１７１３において、情報処理装置１０１のＣＰＵ２０１は、受け付けた画面操作に従って、登録・更新・検索の要求、並びに、ステップＳ１７１０若しくはステップＳ１７１１にて受け付けたデータ又はステップＳ１７１２にて作成した検索条件をＷｅｂサービスへ入力する入力データとしてサーバ１０２に送信する。なお、登録・更新・検索の機能のうち、Ｗｅｂサービス化された機能を利用する場合、登録・更新はＢＰリクエストＷＳＤＬ１０００、検索はｇｅｔＤａｔａリクエストＷＳＤＬ１４００に従って、リクエストメッセージを作成し、サーバ１０２へ送信する。
なお、本実施形態においては、Ｗｅｂサービスの利用も情報処理装置１０１が行うとしたが、情報処理装置１０１からの利用に限定するものではなく、他のＷｅｂアプリケーションを提供するサーバ等がサーバ１０２によって提供されているＷｅｂサービスを利用するとしてもよい。その場合、Ｗｅｂアプリケーション構築サービスで構築した画面を介さずに、サーバ１０２に対して直接、ＳＯＡＰ等のリクエストメッセージを送信するケースが考えられる。なお、ステップＳ１７１８のレスポンスメッセージの送信先は、当然ながら、Ｗｅｂサービスの実行を要求したサーバとなる。
【０１３８】
ステップＳ１７１４において、サーバ１０２のＣＰＵ２０１は、要求及び入力データを受信し、要求された機能の種類を判定する。すなわち、ステップＳ１７１４は、管理されている入力データ項目に対応する入力データを受信する処理の一例を示すステップである。データ登録の場合はステップＳ１７１５に進み、データ検索の場合はステップＳ１７１６に進み、データ更新の場合はステップＳ１７１７に進む。
【０１３９】
ステップＳ１７１５において、サーバ１０２のＣＰＵ２０１は、受信したデータ登録要求に従って、データをテーブルに登録する。具体的には、登録ボタン１８２１が押下されて、データ登録要求を受信した場合は、顧客マスタ登録画面１８２０に入力された値を用いて、Ｗｅｂアプリケーション又はＷｅｂサービスの機能を実行することにより、顧客マスタテーブル１９３０に登録する。
【０１４０】
ステップＳ１７１６において、サーバ１０２のＣＰＵ２０１は、受信したデータ検索要求に従って、テーブルを検索する。具体的には、検索ボタン１８３６が押下されて、データ検索要求を受信した場合は、顧客マスタ一覧画面１８３０の検索条件部に入力された検索条件を用いて、Ｗｅｂアプリケーション又はＷｅｂサービスの機能を実行することにより、顧客マスタテーブル１９３０を検索する。
【０１４１】
ステップＳ１７１７において、サーバ１０２のＣＰＵ２０１は、受信したデータ更新要求に従って、テーブルのデータを更新する。具体的には、更新ボタン（不図示）が押下されて、データ更新要求を受信した場合は、顧客マスタ編集画面に入力された値を用いて、Ｗｅｂアプリケーション又はＷｅｂサービスの機能を実行することにより、顧客マスタテーブル１９３０の該当データを更新する。
【０１４２】
すなわち、ステップＳ１７１５〜Ｓ１７１７は、受信した入力データを用いて、公開されているアプリケーションの持つ機能を実行する処理の一例を示すステップである。
【０１４３】
ステップＳ１７１８において、サーバ１０２のＣＰＵ２０１は、登録・更新・検索を行った後に表示する画面情報を生成し、画面情報を情報処理装置１０１に送信する（ステップＳ１７０６）。なお、登録・更新・検索の機能のうち、Ｗｅｂサービス化された機能を利用した場合、登録・更新はＢＰレスポンスＷＳＤＬ１２００、検索はｇｅｔＤａｔａレスポンスＷＳＤＬ１６００に従って、レスポンスメッセージを作成し、Ｗｅｂサービスの実行を要求した情報処理装置１０１へ送信する。
【０１４４】
以上で、図１７の画面利用処理の説明を終了する。
【０１４５】
以上により、Ｗｅｂアプリ開発者は、多くの設定変更やプログラミングをすることなく、既存のＷｅｂアプリケーションの一部をＷｅｂサービス化することができるため、既存のアプリケーションを容易にＷｅｂサービス化することができるようになる。
【０１４６】
〔第２の実施形態〕
第１の実施形態は、既存のアプリケーションの画面項目からＷｅｂサービスの入出力項目とする画面項目を選択することにより、既存のアプリケーションを容易にＷｅｂサービス化する仕組みである。
【０１４７】
第２の実施形態は、既存のアプリケーションの画面項目以外の項目もＷｅｂサービスの入出力項目とすることにより、既存のアプリケーションを容易にＷｅｂサービス化する仕組みである。
【０１４８】
図２１は、第２の実施形態のＷｅｂアプリケーション画面に基づきＷｅｂサービスを構築するフローチャートの一例を示す図である。
【０１４９】
図２２は、第２の実施形態のＷｅｂアプリケーション（登録画面）構築／Ｗｅｂサービス入力項目定義の画面の一例を示す図である。
【０１５０】
図２３は、第２の実施形態のサーバ１０２にて管理するテーブルの一例を示す図である。
【０１５１】
図２１のフローチャートについて説明する。なお、第２の実施形態では、第１の実施形態における図４のフローチャートを図２１に置き換え、第１の実施形態のステップと同じ処理については、同じステップ番号を付与し説明を省略する。
【０１５２】
ステップＳ２１０１において、情報処理装置１０１のＣＰＵ２０１は、Ｗｅｂサービス独自の入出力項目の設定を受け付ける（図２２の２２０１、２２０２）。すなわち、ステップＳ２１０１は、取得された入力項目以外の項目をＷｅｂサービスへ入力する入力データ項目として追加する指示を受け付ける処理の一例を示すステップである。また、ステップＳ２１０１は、取得された出力項目以外の項目をＷｅｂサービスから出力する出力データ項目として追加する指示を受け付ける処理の一例を示すステップである。
【０１５３】
ここでは、Ｗｅｂアプリケーション画面から登録された顧客データと、Ｗｅｂサービスから登録された顧客データを区別するため、Ｗｅｂサービス独自の入力項目「登録元２２０１」の値として「固定値２２０２（＝“Ｗｅｂサービス”）」を追加する設定を受け付けたとする。「登録元２２０１」及び「固定値２２０２」は斜体で表示することにより、Ｗｅｂサービス独自の入力項目であることがわかる。
【０１５４】
なお、図２２では、Ｗｅｂサービス独自の入力項目の設定を受け付けたが、入力項目に限定するものではなく、Ｗｅｂサービス独自の出力項目の設定を受け付けてもよい。Ｗｅｂサービス独自の出力項目は、Ｗｅｂアプリケーション画面には出力されないが、Ｗｅｂサービスから出力されるレスポンスには含まれることになる。
【０１５５】
ステップＳ２１０２において、情報処理装置１０１のＣＰＵ２０１は、ステップＳ４０３にて受信したＷｅｂサービス入出力項目にＷｅｂサービス独自の入出力項目が含まれているか否かを判定する。具体的には、ステップＳ４０３にて受信したＷｅｂサービス入出力項目のすべての項目が画面部品テーブル１９２０にレコードとして存在するか否かに従って判定する。なぜなら、既存のＷｅｂアプリケーションの画面項目は、画面部品テーブル１９２０にレコードとして存在し、Ｗｅｂサービス独自の入出力項目は、この時点で画面部品テーブル１９２０にレコードとして存在しないからである。
【０１５６】
Ｗｅｂサービス独自の入出力項目が含まれている場合はステップＳ２１０３に進み、含まれていない場合はステップＳ４０４に進む。
【０１５７】
ステップＳ２１０３において、サーバ１０２のＣＰＵ２０１は、ステップＳ４０３（図２１）にて受信したＷｅｂサービス入出力項目のうち、Ｗｅｂサービス独自の入出力項目であると判定された項目を画面部品テーブル１９２０にレコードとして登録する（図２３の２３０１）。なお、「Ｗｅｂサービス」カラムには、“Ｉ（入力）”または“Ｏ（出力）”を設定する。
【０１５８】
これにより、Ｗｅｂサービス独自の入出力項目を追加することができるようになるため、Ｗｅｂアプリケーション画面から登録されたデータと、Ｗｅｂサービスから登録されたデータを区別したり、Ｗｅｂアプリケーションのレスポンスにはない項目をＷｅｂサービスのレスポンスに追加することができるようになる。
【０１５９】
つまり、既存のアプリケーションを容易にＷｅｂサービス化することができるようになる。
【０１６０】
よって、第２の実施形態のＷｅｂサービスが実行されるときのステップＳ１７１４（図１７）は、Ｗｅｂサービス独自の追加入力データを受信する処理の一例を示すステップである。また、第２の実施形態のＷｅｂサービスが実行されるときのステップＳ１７０６（図１７）は、Ｗｅｂサービスの機能が実行された後、Ｗｅｂサービス独自の出力データを送信する処理の一例を示すステップである。
【０１６１】
〔第３の実施形態〕
第１の実施形態は、既存のアプリケーションの画面項目からＷｅｂサービスの入出力項目とする画面項目を選択することにより、既存のアプリケーションの持つ１つの機能を容易にＷｅｂサービス化する仕組みである。
【０１６２】
第３の実施形態は、既存のアプリケーションの画面項目からＷｅｂサービスの入出力項目とする画面項目を機能毎に選択することにより、既存のアプリケーションの持つ複数の機能を一度にＷｅｂサービス化する仕組みである。
【０１６３】
図２４は、第３の実施形態のＷｅｂアプリケーション画面に基づきＷｅｂサービスを構築するフローチャートの一例を示す図である。
【０１６４】
図２５は、第３の実施形態のＷｅｂアプリケーション（登録画面）構築／Ｗｅｂサービス入力項目定義の画面の一例を示す図である。
【０１６５】
図２６は、第３の実施形態のサーバ１０２にて管理するテーブルの一例を示す図である。
【０１６６】
図２４のフローチャートについて説明する。なお、第３の実施形態では、第１の実施形態における図４のフローチャートを図２４に置き換え、第１の実施形態のステップと同じ処理については、同じステップ番号を付与し説明を省略する。
【０１６７】
ここでは、Ｗｅｂアプリケーション画面作成画面６２０（図２５）にて、顧客マスタのレコードについて登録／検索／更新／削除処理を行う４機能を備えるＷｅｂアプリケーション画面を作成し、保存ボタン２５０１の押下を受け付けた後、「この画面をＷｅｂサービス化しますか？」ダイアログ６４０（図２５）を表示し、Ｗｅｂサービス化する指示（はいボタン押下）を受け付けたケースを想定する。
【０１６８】
ステップＳ２４０１において、情報処理装置１０１のＣＰＵ２０１は、ＷｅｂサービスのＣＲＵＤ機能毎に入出力項目の設定を受け付けることが可能な入力フォーム２５０３（図２５）を表示する。ＣＲＵＤとは、Ｃｒｅａｔｅ（登録）／Ｒｅａｄ（検索）／Ｕｐｄａｔｅ（更新）／Ｄｅｌｅｔｅ（削除）の４つの機能を表している。入力フォーム２５０３は、Ｗｅｂアプリケーション画面作成画面６２０（図２５）に配置した入出力項目毎のうち、ＣＲＵＤの機能毎にどの入出力項目を使うかを設定するフォームである。例えば、Ｗｅｂサービスへ入力する入力データ項目とする場合は“Ｉ”、Ｗｅｂサービスが出力する出力データ項目とする場合は“Ｏ”、入力データ項目兼出力データ項目とする場合は“ＩＯ”とする。
【０１６９】
図２５の入力フォーム２５０３は、Ｃｒｅａｔｅ機能を持つＷｅｂサービス（つまり、顧客登録）は、「顧客ＩＤ」「顧客名」「住所」「電話番号」「メール」「登録（ボタン）」を入力データ項目とし、Ｒｅａｄ機能を持つＷｅｂサービス（つまり、顧客検索）は、「顧客ＩＤ」「検索（ボタン）」を入力データ項目、「顧客ＩＤ」「顧客名」「住所」「電話番号」「メール」を出力データ項目とし、Ｄｅｌｅｔｅ機能を持つＷｅｂサービス（つまり、顧客削除）は、「顧客ＩＤ」「削除（ボタン）」を入力データ項目とする、Ｗｅｂサービスをこれから構築することを表している。なお、入力フォーム２５０３のＵ（＝Ｕｐｄａｔｅ）の列には、“Ｉ”、ＩＯ”、及び“ＩＯ”の設定が無いため、Ｕｐｄａｔｅ機能を持つＷｅｂサービス（つまり、顧客更新）は作成しない。
【０１７０】
また、Ｗｅｂアプリケーション画面作成画面６２０（図２５）にて配置した「登録（ボタン）」「検索（ボタン）」「更新（ボタン）」「削除（ボタン）」は、ＷｅｂサービスのＣＲＵＤ機能のうち、どの機能を実行するかの機能識別情報となる。つまり、Ｗｅｂサービスへ入力する入力データに項目名「登録」のデータが含まれていれば、登録機能を実行することになる。
【０１７１】
すなわち、第３の実施形態のＷｅｂサービスが実行されるときのステップＳ１７１４（図１７）は、Ｗｅｂサービスの機能を識別する機能識別情報を受信する処理の一例を示すステップである。また、第３の実施形態のＷｅｂサービスが実行されるときのステップＳ１７１４（図１７）は、受信した機能識別情報に対応する機能に対応付けて管理されている入力データ項目に対応する入力データを受信する処理の一例を示すステップである。また、第３の実施形態のＷｅｂサービスが実行されるときのステップＳ１７１５〜Ｓ１７１７（図１７）は、受信した入力データを用いて、機能識別情報に対応する機能を実行する処理の一例を示すステップである。
【０１７２】
入力フォーム２５０３の設定値は、ステップＳ４０３（図２４）にてサーバ１０２が受信し、ステップＳ４０４（図２４）にて受信した入力フォーム２５０３の項目を画面部品テーブル１９２０（図２６）のレコードに反映する（図２６の２６００）。なお、第３の実施形態の画面部品テーブル１９２０（図２６）には、Ｗｅｂサービスの「Ｃ」「Ｒ」「Ｕ」「Ｄ」の４カラム（図２６の２６００）を持ち、入力フォーム２５０３の項目値に従って、“Ｉ”、“Ｏ”又は“ＩＯ”を設定する。すなわち、第３の実施形態における画面部品テーブル１９２０（図２６）は、機能毎に入力データ項目を管理する手段の一例である。
【０１７３】
その後のステップＳ４１２（図２４）にてＷｅｂサービスカラム２６００の設定値に従ってＷＳＤＬを生成し、ステップＳ４１３（図２４）にてＷｅｂサービスの提供を開始することにより、既存のアプリケーションの持つ複数の機能を一度にＷｅｂサービス化することができる。
【０１７４】
なお、本実施形態においては、画面部品テーブル１９２０（図２６）にＷｅｂサービスカラム２６００を持ち、そのカラムの値に従って、ＷＳＤＬを生成するとしたが、Ｗｅｂサービスカラム２６００を持つことは必須ではなく、ステップＳ４０３（図２４）にて受信した入力フォーム２５０３の項目値に従って、提供するＷｅｂサービスの機能を定義したＷＳＤＬを生成するとしてもよい。
【０１７５】
なお、本実施形態においては、アプリケーション及びＷｅｂサービスの持つ機能をＣＲＵＤの４つとしたが、ＣＲＵＤに限定するものではなく、アプリケーションがその他の機能を持ち、それらの機能についても一度にＷｅｂサービス化できるとしてもよい。
【０１７６】
以上により、既存のアプリケーションの画面項目からＷｅｂサービスの入出力項目としたい画面項目を機能毎に選択することにより、既存のアプリケーションの持つ複数の機能を一度にＷｅｂサービス化することができる。つまり、既存のアプリケーションを容易にＷｅｂサービス化することができるようになる。
【０１７７】
アプリケーションのＷｅｂサービス化において入力フォーム２５０３を用いることで、複数の機能を持つアプリケーションであっても一度にＷｅｂサービス化でき、かつ、アプリケーション及びＷｅｂサービスの機能を一覧化してその差異を視覚化できるようになる。
【０１７８】
なお、第１〜第３の実施形態において、既存のアプリケーションを容易にＷｅｂサービス化するとしたが、Ｗｅｂサービス提供開始に伴い既存のアプリケーションの持つ機能はそのまま継続してもよいし、機能を停止させてＷｅｂサービスに移行するとしてもよい。
【０１７９】
また、第１〜第３の実施形態の既存アプリケーションのＷｅｂサービス化に伴い、アプリケーションのビジネスプロセスを当該アプリケーション及びＷｅｂサービスの両者が利用してもよいし、アプリケーションのビジネスプロセスをＷｅｂサービス用にコピーしてアプリケーション及びＷｅｂサービスが異なるビジネスプロセスを利用するとしてもよい。どちらにせよ、Ｗｅｂサービス化のために新規のビジネスプロセスをコーディングする必要がなくなるため、開発及びテスト工数を削減することができ、既存のアプリケーションで実績のある高品質なビジネスプロセスを利用することができる。
【０１８０】
〔第４の実施形態〕
第３の実施形態は、既存のアプリケーションの画面項目からＷｅｂサービスの入出力項目とする画面項目を機能毎に選択することにより、既存のアプリケーションの持つ複数の機能を一度にＷｅｂサービス化する仕組みである。
第４の実施形態は、既存のアプリケーションの画面項目からＷｅｂサービスの入出力項目とする画面項目を機能毎に選択することにより、既存のアプリケーションの持つ機能をＷｅｂサービス化した場合に、当該アプリケーションが当該Ｗｅｂサービス化した機能を利用するよう自動で改修する仕組みである。
【０１８１】
図２７は、第４の実施形態のＷｅｂアプリケーション画面に基づきＷｅｂサービスを構築するフローチャートの一例を示す図である。
図２８は、第４の実施形態のＷｅｂアプリケーション（登録画面）構築／Ｗｅｂサービス入力項目定義の画面の一例を示す図である。
【０１８２】
図２７のフローチャートについて説明する。なお、第４の実施形態では、第１の実施形態における図４のフローチャートを図２７に置き換え、第１の実施形態のステップと同じ処理については、同じステップ番号を付与し説明を省略する。
ここでは、Ｗｅｂアプリケーション画面作成画面６２０（図２８）にて、顧客マスタのレコードについて登録／検索／更新／削除処理を行う４機能を備えるＷｅｂアプリケーション画面を作成し、保存ボタン２８０１（図２８）の押下を受け付けた後、「この画面をＷｅｂサービス化しますか？」ダイアログ６４０（図２８）を表示し、Ｗｅｂサービス化する指示（はいボタン押下）を受け付けたケースを想定する。
【０１８３】
ステップＳ２７０１において、情報処理装置１０１のＣＰＵ２０１は、第３の実施形態と同様に、ＷｅｂサービスのＣＲＵＤ機能毎に入出力項目の設定を受け付けることが可能な入力フォーム２８０３（図２８）を表示する。入力フォーム２８０３は、Ｗｅｂアプリケーション画面作成画面６２０（図２８）に配置した入出力項目毎のうち、ＣＲＵＤの機能毎にどの入出力項目を使うかを設定するフォームである。例えば、Ｗｅｂサービスへ入力する入力データ項目とする場合は“Ｉ”、Ｗｅｂサービスが出力する出力データ項目とする場合は“Ｏ”、入力データ項目兼出力データ項目とする場合は“ＩＯ”とする。
【０１８４】
図２８の入力フォーム２８０３は、Ｒｅａｄ機能を持つＷｅｂサービス（つまり、顧客検索）は、「顧客ＩＤ」「検索（ボタン）」を入力データ項目、「顧客ＩＤ」「顧客名」「住所」「電話番号」「メール」を出力データ項目とする、Ｗｅｂサービスをこれから構築することを表している。なお、入力フォーム２８０３のＣ・Ｕ・Ｄ列には、“Ｉ”、ＩＯ”、及び“ＩＯ”の設定が無いため、Ｃｒｅａｔｅ、Ｕｐｄａｔｅ、Ｄｅｌｅｔｅ機能を持つＷｅｂサービスは作成しない。
【０１８５】
ステップＳ２７０２において、情報処理装置１０１のＣＰＵ２０１は、Ｗｅｂサービスに完全移行するか否かを確認するダイアログ２８０４（図２８）を表示し、「Ｗｅｂアプリに残す（＝ＷｅｂアプリとＷｅｂサービスに同じ機能を併存させる）」「Ｗｅｂアプリから削除する（＝Ｗｅｂサービスに機能を完全に移行させる）」の選択を受け付ける。なお、本実施形態においては、Ｗｅｂサービス化した機能をＷｅｂアプリに残すか削除するかの選択としたが、これに限定するものではなく、例えば、Ｗｅｂサービス化した機能は、Ｗｅｂアプリの機能ではなくＷｅｂサービス化した機能を積極的に利用するか否か等の選択であってもよい。また、Ｗｅｂサービス化した機能を利用している処理をリスト表示し、それらについて、Ｗｅｂアプリの機能とＷｅｂサービス化した機能のどちらを利用するかを選択させてもよい。
【０１８６】
ステップＳ２７０３において、サーバ１０２のＣＰＵ２０１は、ステップＳ４０３（図２７）にて入力フォーム２８０３の設定値と共に受信したダイアログ２８０４の選択値を判定する。「Ｗｅｂアプリに残す」の場合はステップＳ４０４（図２７）に進み、「Ｗｅｂアプリから削除する」の場合はステップＳ２７０４に進む。
【０１８７】
ステップＳ２７０４において、サーバ１０２のＣＰＵ２０１は、Ｗｅｂサービスを作成する機能を利用している処理（例えば、ビジネスプロセス）について、これまでのＷｅｂアプリの機能ではなく、新しく生成されるＷｅｂサービスの機能を利用するよう設定を変更する。
【０１８８】
ステップＳ２７０５において、サーバ１０２のＣＰＵ２０１は、Ｗｅｂサービスを作成する機能について、これまで使用していたＷｅｂアプリの機能を削除する。
【０１８９】
このステップＳ２７０４及びステップＳ２７０５については、図２８及び図２９を用いて、具体的に説明する。
まず、前提として、図２８の画面６２０で構築したＷｅｂアプリケーション「顧客マスタ管理」には、顧客登録（Ｃ）／顧客検索（Ｒ）／顧客更新（Ｕ）／顧客削除（Ｄ）の４機能が備わっているとする。また、顧客登録機能は、顧客登録画面にて「登録ボタン」の押下を受け付けると、顧客登録画面に入力されている「顧客ＩＤ」の値を検索キーにして、顧客マスタテーブル１９３０を検索し、当該「顧客ＩＤ」を持つレコード件数＝０件の場合、顧客登録画面に入力されている顧客情報（顧客ＩＤ,、顧客名、住所、電話番号）を用いて、顧客マスタテーブル１９３０にレコード登録する機能であるとする。
【０１９０】
図２９は、第４の実施形態のＷｅｂアプリケーション／Ｗｅｂサーバの設定の一例を示す図である。
入出力定義２９１０は、顧客登録画面の「登録ボタン」の定義であり、押下を受け付けると、Ｗｅｂアプリケーション用のビジネスプロセス「ＢＰ＿ＣＵＳＴ＿ＩＮＳＥＲＴ」を実行するよう定義されている。
【０１９１】
ビジネスプロセス２９２０は、顧客登録を実行する「ＢＰ＿ＣＵＳＴ＿ＩＮＳＥＲＴ」の定義であり、「実行処理」の内容から、Ｗｅｂアプリケーション用のビジネスプロセス「ＢＰ＿ＣＵＳＴ＿ｇｅｔＤａｔａ」を実行し、レコード件数＝０件の場合、顧客マスタにレコードを登録する処理であることがわかる。
同様に、入出力定義２９３０は、顧客検索画面の「検索ボタン」の定義であり、押下を受け付けると、Ｗｅｂアプリケーション用のビジネスプロセス「ＢＰ＿ＣＵＳＴ＿ｇｅｔＤａｔａ」を実行するよう定義されていること、ビジネスプロセス２９４０は、顧客検索を実行するＷｅｂアプリケーション用のビジネスプロセス「ＢＰ＿ＣＵＳＴ＿ｇｅｔＤａｔａ」であることがわかる。
【０１９２】
このケースの場合に、入力フォーム２８０３（図２８）にてＲｅａｄ機能をＷｅｂサービス化すること（ステップＳ２７０１）、ダイアログ２８０４（図２８）にて「Ｗｅｂアプリから削除する」の選択を受け付けた（ステップＳ２７０２）場合、ステップＳ２７０４において、Ｗｅｂサービスを作成する機能（例：Ｗｅｂアプリケーション用のビジネスプロセス「ＢＰ＿ＣＵＳＴ＿ｇｅｔＤａｔａ」）を利用している処理（例：Ｗｅｂアプリケーション用のビジネスプロセス「ＢＰ＿ＣＵＳＴ＿ＩＮＳＥＲＴ」）は、この後のステップＳ４１２（図２７）にて生成されるＷｅｂサービス用のビジネスプロセス「ＩＯ００２＿ＷＳＤＬ＿ｇｅｔＤａｔａ」を利用するように設定を変更する（図２９の２９７０及び２９６０）。
【０１９３】
これにより、Ｗｅｂサービス化した機能は、Ｗｅｂアプリ用の機能として残すか、それともＷｅｂサービスに機能を完全に移行するかをアプリ開発者が選択することができる。そして、後者を選択した場合は、Ｗｅｂアプリ用のその機能を削除し、Ｗｅｂサービスに完全移行するため、機能設定を一元管理することが可能になり、かつ、このステップＳ２７０４により、その機能を利用する処理は、新たに生成されたＷｅｂサービスの機能を利用するように自動的に設定が変更されるため、Ｗｅｂアプリケーションの持つ機能を容易にＷｅｂサービス化することができるようになる。
【０１９４】
以上により、既存のアプリケーションが持つ機能をＷｅｂサービス化し、その機能をＷｅｂサービスに完全移行する場合は、その機能を利用する処理についても、自動でＷｅｂサービスを利用するよう自動で改修できるため、既存のアプリケーションを容易にＷｅｂサービス化することができるようになる。つまり、既存のアプリケーションが持つ機能をＷｅｂサービス化し、その機能をＷｅｂサービスに完全移行する場合において、開発者の利便性を向上させる
【０１９５】
以上のように、前述した実施形態の機能を実現するプログラムを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記録媒体に格納されたプログラムを読み出し、実行することによっても本発明の目的が達成されることは言うまでもない。
【０１９６】
この場合、記録媒体から読み出されたプログラム自体が本発明の新規な機能を実現することになり、そのプログラムを記録した記録媒体は本発明を構成することになる。
【０１９７】
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＤＶＤ−ＲＯＭ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＥＥＰＲＯＭ、シリコンディスク等を用いることが出来る。
【０１９８】
また、コンピュータが読み出したプログラムを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１９９】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０２００】
また、本発明は、複数の機器から構成されるシステムに適用しても、ひとつの機器から成る装置に適用しても良い。また、本発明は、システムあるいは装置にプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本発明を達成するためのプログラムを格納した記録媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
【０２０１】
上記プログラムの形態は、オブジェクトコード、インタプリタにより実行されるプログラムコード、ＯＳ（オペレーティングシステム）に供給されるスクリプトデータ等の形態から成ってもよい。
【０２０２】
さらに、本発明を達成するためのプログラムをネットワーク上のサーバ、データベース等から通信プログラムによりダウンロードして読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。なお、上述した各実施形態およびその変形例を組み合わせた構成も全て本発明に含まれるものである。
【符号の説明】
【０２０３】
１００  情報処理システム
１０１  情報処理装置
１０２  サーバ
１０３  ネットワーク
【図１】
2018010631.tif 000003
【図２】
2018010631.tif 000004
【図３】
2018010631.tif 000005
【図４】
2018010631.tif 000006
【図５】
2018010631.tif 000007
【図６】
2018010631.tif 000008
【図７】
2018010631.tif 000009
【図８】
2018010631.tif 000010
【図９】
2018010631.tif 000011
【図１０】
2018010631.tif 000012
【図１１】
2018010631.tif 000013
【図１２】
2018010631.tif 000014
【図１３】
2018010631.tif 000015
【図１４】
2018010631.tif 000016
【図１５】
2018010631.tif 000017
【図１６】
2018010631.tif 000018
【図１７】
2018010631.tif 000019
【図１８】
2018010631.tif 000020
【図１９】
2018010631.tif 000021
【図２０】
2018010631.tif 000022
【図２１】
2018010631.tif 000023
【図２２】
2018010631.tif 000024
【図２３】
2018010631.tif 000025
【図２４】
2018010631.tif 000026
【図２５】
2018010631.tif 000027
【図２６】
2018010631.tif 000028
【図２７】
2018010631.tif 000029
【図２８】
2018010631.tif 000030
【図２９】
2018010631.tif 000031
【手続補正書】
【提出日】平成29年9月22日(2017.9.22)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
アプリケーションが持つ機能をＷｅｂサービス化する情報処理装置であって、
前記アプリケーションに入力される入力項目を管理するアプリケーション入力項目管理手段と、
前記アプリケーション入力項目管理手段により管理されている入力項目のうち、前記Ｗｅｂサービスに入力する入力データ項目の選択を受け付ける入力データ項目選択受付手段と、
前記入力データ項目選択受付手段により選択を受け付けた入力データ項目の識別情報に基づいて、Ｗｅｂサービスの定義情報を生成するＷｅｂサービス定義情報生成手段と、
前記Ｗｅｂサービス定義情報生成手段により生成されたＷｅｂサービスの定義情報に従ってされた要求に含まれる、前記入力データ項目に対応する入力データを用いて前記機能を実行するＷｅｂサービスを構築するＷｅｂサービス構築手段と
を備えることを特徴とする情報処理装置。
【請求項２】
前記アプリケーションから出力される出力項目を管理するアプリケーション出力項目管理手段と、
前記アプリケーション出力項目管理手段により管理されている出力項目のうち、前記Ｗｅｂサービスが出力する出力データ項目の選択を受け付ける出力データ項目選択受付手段と
を更に備え、
前記Ｗｅｂサービス定義情報生成手段は、
前記出力データ項目選択受付手段により選択を受け付けた出力データ項目の識別情報に基づいて、Ｗｅｂサービスの定義情報を生成し、
前記Ｗｅｂサービス構築手段は、
前記機能を実行することによって、前記出力データ項目選択受付手段により選択を受け付けた出力データ項目に対応する出力データを出力するＷｅｂサービスを構築すること
を特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記機能を実行するためのインターフェースを生成するインターフェース生成手段
を更に備え、
前記Ｗｅｂサービス定義情報生成手段は、前記Ｗｅｂサービス化する前記機能の識別情報に基づいて、前記Ｗｅｂサービスの定義情報を生成し、
前記Ｗｅｂサービス構築手段は、
前記インターフェース生成手段により生成されたインターフェースを利用し、前記Ｗｅｂサービス定義情報生成手段により生成されたＷｅｂサービスの定義情報に従ってされた要求に含まれる前記機能の識別情報に対応する機能を実行するＷｅｂサービスを構築すること
を特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
前記Ｗｅｂサービス構築手段により構築されたＷｅｂサービスを公開するＷｅｂサービス公開手段
を更に備えることを特徴とする請求項１乃至３のいずれか１項に記載のサーバ。
【請求項５】
前記アプリケーション入力項目管理手段により管理されている入力項目以外の項目を前記Ｗｅｂサービスに入力する入力データ項目として追加する指示を受け付ける追加入力データ項目受付手段
を更に備え、
前記Ｗｅｂサービス定義情報生成手段は、
前記追加入力データ項目受付手段により追加指示を受け付けた入力データ項目の識別情報に基づいて、Ｗｅｂサービスの定義情報を生成すること
を特徴とする請求項１乃至４のいずれか１項に記載の情報処理装置。
【請求項６】
前記アプリケーション出力項目管理手段により管理されている出力項目以外の項目を前記Ｗｅｂサービスが出力する出力データ項目として追加する指示を受け付ける追加出力データ項目受付手段
を更に備え、
前記Ｗｅｂサービス定義情報生成手段は、
前記追加出力データ項目受付手段により追加指示を受け付けた出力データ項目の識別情報に基づいて、Ｗｅｂサービスの定義情報を生成すること
を特徴とする請求項２乃至５のいずれか１項に記載の情報処理装置。
【請求項７】
前記アプリケーションは、複数の機能を持ち、
前記入力データ項目選択受付手段は、
前記アプリケーション入力項目管理手段により管理されている入力項目のうち、前記Ｗｅｂサービス化する機能毎に前記入力データ項目の選択を受け付け、
前記入力データ項目選択受付手段により選択を受け付けた入力データ項目の識別情報を前記機能の識別情報に対応付けて管理する機能入力データ項目簡易手段を更に備え、
前記Ｗｅｂサービス定義情報生成手段は、
前記機能入力データ項目簡易手段により管理されている前記機能の識別情報及び当該機能の識別情報に対応付けて管理されている入力データ項目の識別情報に基づいて、Ｗｅｂサービスの定義情報を生成し、
前記Ｗｅｂサービス構築手段は、
前記Ｗｅｂサービス定義情報生成手段により生成されたＷｅｂサービスの定義情報に従ってされた要求に含まれる前記機能の識別情報に対応する機能を実行するＷｅｂサービスを構築すること
を特徴とする請求項１乃至６のいずれか１項に記載の情報処理装置。
【請求項８】
前記Ｗｅｂサービス構築手段は、前記Ｗｅｂサービスを機能させるためのプログラムを生成すること
を特徴とする請求項１乃至７のいずれか１項に記載の情報処理装置。
【請求項９】
アプリケーションの持つ機能をＷｅｂサービス化する情報処理装置における処理方法であって、
前記情報処理装置が、
前記アプリケーションに入力される入力項目を管理するアプリケーション入力項目管理ステップと、
前記アプリケーション入力項目管理ステップにより管理されている入力項目のうち、前記Ｗｅｂサービスに入力する入力データ項目の選択を受け付ける入力データ項目選択受付ステップと、
前記入力データ項目選択受付ステップにより選択を受け付けた入力データ項目の識別情報に基づいて、Ｗｅｂサービスの定義情報を生成するＷｅｂサービス定義情報生成ステップと、
前記Ｗｅｂサービス定義情報生成ステップにより生成されたＷｅｂサービスの定義情報に従ってされた要求に含まれる、前記入力データ項目に対応する入力データを用いて前記機能を実行するＷｅｂサービスを構築するＷｅｂサービス構築ステップと
を実行することを特徴とする処理方法。
【請求項１０】
アプリケーションの持つ機能をＷｅｂサービス化する情報処理装置で実行可能なプログラムであって、
前記情報処理装置を、
前記アプリケーションに入力される入力項目を管理するアプリケーション入力項目管理手段と、
前記アプリケーション入力項目管理手段により管理されている入力項目のうち、前記Ｗｅｂサービスに入力する入力データ項目の選択を受け付ける入力データ項目選択受付手段と、
前記入力データ項目選択受付手段により選択を受け付けた入力データ項目の識別情報に基づいて、Ｗｅｂサービスの定義情報を生成するＷｅｂサービス定義情報生成手段と、
前記Ｗｅｂサービス定義情報生成手段により生成されたＷｅｂサービスの定義情報に従ってされた要求に含まれる、前記入力データ項目に対応する入力データを用いて前記機能を実行するＷｅｂサービスを構築するＷｅｂサービス構築手段
として機能させるためのプログラム。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０００８
【補正方法】変更
【補正の内容】
【０００８】
アプリケーションが持つ機能をＷｅｂサービス化する情報処理装置であって、前記アプリケーションに入力される入力項目を管理するアプリケーション入力項目管理手段と、前記アプリケーション入力項目管理手段により管理されている入力項目のうち、前記Ｗｅｂサービスに入力する入力データ項目の選択を受け付ける入力データ項目選択受付手段と、前記入力データ項目選択受付手段により選択を受け付けた入力データ項目の識別情報に基づいて、Ｗｅｂサービスの定義情報を生成するＷｅｂサービス定義情報生成手段と、前記Ｗｅｂサービス定義情報生成手段により生成されたＷｅｂサービスの定義情報に従ってされた要求に含まれる、前記入力データ項目に対応する入力データを用いて前記機能を実行するＷｅｂサービスを構築するＷｅｂサービス構築手段とを備えることを特徴とする情報処理装置。