(57)【特許請求の範囲】
【請求項１】
Ｗｅｂアプリケーション生成装置と、クライアントアプリケーションの設計情報を有するサーバとがネットワークを介して接続可能なＷｅｂアプリケーション生成システムにおいて、
前記サーバは、
前記クライアントアプリケーションで使用されるデータ項目の情報であるデータ構造情報と、前記クライアントアプリケーションからのリクエストに応じて前記サーバが行う処理情報とを記憶する設計情報記憶手段と、
前記処理情報をＷｅｂアプリケーションから呼び出し可能にするためのＷｅｂサービスを提供するＷｅｂサービス提供手段と、
を備え、
前記Ｗｅｂアプリケーション生成装置は、
前記設計情報記憶手段に記憶された前記データ構造情報を前記サーバから受信するデータ構造情報受信手段と、
前記データ構造情報受信手段より受信した前記データ構造情報を、前記Ｗｅｂアプリケーションで使用されるデータ項目の情報であるデータモデル定義として記憶するデータモデル定義記憶手段と、
前記データモデル定義と、前記Ｗｅｂサービス提供手段により提供されるＷｅｂサービスにより使用可能な既存の前記処理情報を処理可能にするための定義情報と、を用いることにより、Ｗｅｂアプリケーションを生成する生成手段と、
を備えることを特徴とするＷｅｂアプリケーション生成システム。
【請求項２】
前記サーバは、
前記サーバの前記クライアントアプリケーションに対しアクセスを受け付けた場合にアクセス元を判定する判定手段と、
前記判定手段により、前記サーバが端末からアクセスを受け付けたと判定した場合は、前記クライアントアプリケーションを前記端末へ表示するとともに、前記判定手段により、前記サーバがモバイル端末からアクセスを受け付けたと判定した場合は、前記Ｗｅｂアプリケーションの画面を前記モバイル端末へ表示する切替手段と、
を更に備えることを特徴とする請求項１に記載のＷｅｂアプリケーション生成システム。
【請求項３】
前記サーバは、前記判定手段により、前記サーバが前記モバイル端末からアクセスを受け付けたと判定した場合に表示するＷｅｂアプリケーションのＵＲＬと、前記クライアントアプリケーションのＵＲＬとを対応づけた対応テーブルを記憶するフィルタ設定情報記憶手段
を更に備えることを特徴とする請求項２に記載のＷｅｂアプリケーション生成システム。
【請求項４】
前記切替手段は、前記アクセス元のモバイル端末がリクエスト情報として前記サーバに送信した前記クライアントアプリケーションのＵＲＬに対応する、前記Ｗｅｂアプリケーションを表示するためのＵＲＬが前記フィルタ設定情報記憶手段に存在する場合、前記アクセス元のモバイル端末に当該Ｗｅｂアプリケーションを表示するＵＲＬに対応する前記Ｗｅｂアプリケーションを表示する
ことを特徴とする請求項３に記載のＷｅｂアプリケーション生成システム。
【請求項５】
Ｗｅｂアプリケーション生成装置と、クライアントアプリケーションの設計情報を有するサーバとがネットワークを介して接続可能なＷｅｂアプリケーション生成システムにおいて、
前記サーバは、
前記クライアントアプリケーションで使用されるデータ項目の情報であるデータ構造情報と、前記データ構造情報が前記クライアントアプリケーションで使用される時の属性情報を定義したレイアウト情報と、前記クライアントアプリケーションからのリクエストに応じて前記サーバが行う処理情報と、を記憶する設計情報記憶手段と、
を備え、
前記Ｗｅｂアプリケーション生成装置は、
前記設計情報記憶手段に記憶された前記データ構造情報を前記サーバから受信するデータ構造情報受信手段と、
前記データ構造情報受信手段より受信した前記データ構造情報を、前記Ｗｅｂアプリケーションで使用されるデータ項目の情報であるデータモデル定義として記憶するデータモデル定義記憶手段と、
前記設計情報記憶手段に記憶された前記レイアウト情報を前記サーバから受信するレイアウト情報受信手段と、
前記レイアウト情報受信手段より受信した前記レイアウト情報を、前記Ｗｅｂアプリケーションで使用される時の属性情報を定義した定義情報である入出力定義として記憶する入出力定義記憶手段と、
前記処理情報をＷｅｂアプリケーションから呼び出し可能にするためのＷｅｂサービスを作成するＷｅｂサービス作成手段と、
前記データモデル定義と、前記入出力定義と、前記Ｗｅｂサービス作成手段により作成した前記Ｗｅｂサービスにより既存の前記処理情報を処理可能にするための定義情報と、を用いることにより、Ｗｅｂアプリケーションを生成する生成手段と、
を備えることを特徴とするＷｅｂアプリケーション生成システム。
【請求項６】
前記サーバは、
前記サーバの前記クライアントアプリケーションに対しアクセスを受け付けた場合にアクセス元を判定する判定手段と、
前記判定手段により、前記サーバが端末からアクセスを受け付けたと判定した場合は、前記クライアントアプリケーションを前記端末へ表示するとともに、前記判定手段により、前記サーバがモバイル端末からアクセスを受け付けたと判定した場合は、前記Ｗｅｂアプリケーションの画面を前記モバイル端末へ表示する切替手段と、
を更に備え、
前記Ｗｅｂアプリケーション生成装置は、
前記判定手段と、前記切替手段とを備えるフィルタプログラムを生成するフィルタプログラム生成手段
を更に備えることを特徴とする請求項５に記載のＷｅｂアプリケーション生成システム。
【請求項７】
前記サーバは、前記判定手段により、前記サーバが前記モバイル端末からアクセスを受け付けたと判定した場合に表示するＷｅｂアプリケーションのＵＲＬと、前記クライアントアプリケーションのＵＲＬとを対応づけた対応テーブルを記憶するフィルタ設定情報記憶手段
を更に備えることを特徴とする請求項６に記載のＷｅｂアプリケーション生成システム。
【請求項８】
前記切替手段は、前記アクセス元のモバイル端末がリクエスト情報として前記サーバに送信した前記クライアントアプリケーションのＵＲＬに対応する、前記Ｗｅｂアプリケーションを表示するためのＵＲＬが前記フィルタ設定情報記憶手段に存在する場合、前記アクセス元のモバイル端末に当該Ｗｅｂアプリケーションを表示するＵＲＬに対応する前記Ｗｅｂアプリケーションを表示する
ことを特徴とする請求項７に記載のＷｅｂアプリケーション生成システム。
【請求項９】
Ｗｅｂアプリケーション生成装置と、クライアントアプリケーションの設計情報を有するサーバとがネットワークを介して接続可能なＷｅｂアプリケーション生成システムの制御方法にであって、
前記サーバは、
前記クライアントアプリケーションで使用されるデータ項目の情報であるデータ構造情報と、前記クライアントアプリケーションからのリクエストに応じて前記サーバが行う処理情報とを記憶する設計情報記憶ステップと、
前記処理情報をＷｅｂアプリケーションから呼び出し可能にするためのＷｅｂサービスを提供するＷｅｂサービス提供ステップと、
を含み、
前記Ｗｅｂアプリケーション生成装置は、
前記設計情報記憶ステップにおいて記憶された前記データ構造情報を前記サーバから受信するデータ構造情報受信ステップと、
前記データ構造情報受信ステップより受信した前記データ構造情報を、前記Ｗｅｂアプリケーションで使用されるデータ項目の情報であるデータモデル定義として記憶するデータモデル定義記憶ステップと、
前記データモデル定義と、前記Ｗｅｂサービス提供ステップにより提供されるＷｅｂサービスにより使用可能な既存の前記処理情報を処理可能にするための定義情報と、を用いることにより、Ｗｅｂアプリケーションを生成する生成ステップと、
を含むことを特徴とするＷｅｂアプリケーション生成システムの制御方法。
【請求項１０】
Ｗｅｂアプリケーション生成装置と、クライアントアプリケーションの設計情報を有するサーバとがネットワークを介して接続可能なＷｅｂアプリケーション生成システムのプログラムであって、
前記サーバであるコンピュータを、
前記クライアントアプリケーションで使用されるデータ項目の情報であるデータ構造情報と、前記クライアントアプリケーションからのリクエストに応じて前記サーバが行う処理情報とを記憶する設計情報記憶手段、
前記処理情報をＷｅｂアプリケーションから呼び出し可能にするためのＷｅｂサービスを提供するＷｅｂサービス提供手段、
として機能させ、
前記Ｗｅｂアプリケーション生成装置であるコンピュータを、
前記設計情報記憶手段に記憶された前記データ構造情報を前記サーバから受信するデータ構造情報受信手段、
前記データ構造情報受信手段より受信した前記データ構造情報を、前記Ｗｅｂアプリケーションで使用されるデータ項目の情報であるデータモデル定義として記憶するデータモデル定義記憶手段、
前記データモデル定義と、前記Ｗｅｂサービス提供手段により提供されるＷｅｂサービスにより使用可能な既存の前記処理情報を処理可能にするための定義情報と、を用いることにより、Ｗｅｂアプリケーションを生成する生成手段、
として機能させるためのＷｅｂアプリケーション生成システムのプログラム。
【請求項１１】
クライアントアプリケーションの設計情報を有し、前記クライアントアプリケーションからのリクエストに応じて行う処理情報をＷｅｂアプリケーションから呼び出し可能にするためのＷｅｂサービスを提供するＷｅｂサービス提供手段を備えるサーバとネットワークを介して接続可能なＷｅｂアプリケーション生成装置であって、
前記クライアントアプリケーションで使用されるデータ項目の情報であるデータ構造情報を前記サーバから受信するデータ構造情報受信手段と、
前記データ構造情報受信手段より受信した前記データ構造情報を、前記Ｗｅｂアプリケーションで使用されるデータ項目の情報であるデータモデル定義として記憶するデータモデル定義記憶手段と、
前記データモデル定義と、前記Ｗｅｂサービス提供手段により提供されるＷｅｂサービスにより使用可能な既存の前記処理情報を処理可能にするための定義情報と、を用いることにより、Ｗｅｂアプリケーションを生成する生成手段と、
を備えることを特徴とするＷｅｂアプリケーション生成装置。
【請求項１２】
クライアントアプリケーションの設計情報を有し、前記クライアントアプリケーションからのリクエストに応じて行う処理情報をＷｅｂアプリケーションから呼び出し可能にするためのＷｅｂサービスを提供するＷｅｂサービス提供手段を備えるサーバとネットワークを介して接続可能なＷｅｂアプリケーション生成装置の制御方法であって、
前記クライアントアプリケーションで使用されるデータ項目の情報であるデータ構造情報を前記サーバから受信するデータ構造情報受信ステップと、
前記データ構造情報受信ステップより受信した前記データ構造情報を、前記Ｗｅｂアプリケーションで使用されるデータ項目の情報であるデータモデル定義として記憶するデータモデル定義記憶ステップと、
前記データモデル定義と、前記Ｗｅｂサービス提供手段により提供されるＷｅｂサービスにより使用可能な既存の前記処理情報を処理可能にするための定義情報と、を用いることにより、Ｗｅｂアプリケーションを生成する生成ステップと、
を含むことを特徴とするＷｅｂアプリケーション生成装置の制御方法。
【請求項１３】
クライアントアプリケーションの設計情報を有し、前記クライアントアプリケーションからのリクエストに応じて行う処理情報をＷｅｂアプリケーションから呼び出し可能にするためのＷｅｂサービスを提供するＷｅｂサービス提供手段を備えるサーバとネットワークを介して接続可能なＷｅｂアプリケーション生成装置のプログラムであって、
前記Ｗｅｂアプリケーション生成装置であるコンピュータを、
前記クライアントアプリケーションで使用されるデータ項目の情報であるデータ構造情報を前記サーバから受信するデータ構造情報受信手段、
前記データ構造情報受信手段より受信した前記データ構造情報を、前記Ｗｅｂアプリケーションで使用されるデータ項目の情報であるデータモデル定義として記憶するデータモデル定義記憶手段、
前記データモデル定義と、前記Ｗｅｂサービス提供手段により提供されるＷｅｂサービスにより使用可能な既存の前記処理情報を処理可能にするための定義情報と、を用いることにより、Ｗｅｂアプリケーションを生成する生成手段、
として機能させるためのＷｅｂアプリケーション生成装置のプログラム。
【請求項１４】
Ｗｅｂアプリケーション生成装置と、クライアントアプリケーションの設計情報を有するサーバとがネットワークを介して接続可能なＷｅｂアプリケーション生成システムの制御方法であって、
前記サーバは、
前記クライアントアプリケーションで使用されるデータ項目の情報であるデータ構造情報と、前記データ構造情報が前記クライアントアプリケーションで使用される時の属性情報を定義したレイアウト情報と、前記クライアントアプリケーションからのリクエストに応じて前記サーバが行う処理情報と、を記憶する設計情報記憶ステップと、
を含み、
前記Ｗｅｂアプリケーション生成装置は、
前記設計情報記憶ステップにおいて記憶された前記データ構造情報を前記サーバから受信するデータ構造情報受信ステップと、
前記データ構造情報受信ステップより受信した前記データ構造情報を、前記Ｗｅｂアプリケーションで使用されるデータ項目の情報であるデータモデル定義として記憶するデータモデル定義記憶ステップと、
前記設計情報記憶ステップにおいて記憶された前記レイアウト情報を前記サーバから受信するレイアウト情報受信ステップと、
前記レイアウト情報受信ステップより受信した前記レイアウト情報を、前記Ｗｅｂアプリケーションで使用される時の属性情報を定義した定義情報である入出力定義として記憶する入出力定義記憶ステップと、
前記処理情報をＷｅｂアプリケーションから呼び出し可能にするためのＷｅｂサービスを作成するＷｅｂサービス作成ステップと、
前記データモデル定義と、前記入出力定義と、前記Ｗｅｂサービス作成ステップにより作成した前記Ｗｅｂサービスにより既存の前記処理情報を処理可能にするための定義情報と、を用いることにより、Ｗｅｂアプリケーションを生成する生成ステップと、
を含むことを特徴とするＷｅｂアプリケーション生成システムの制御方法。
【請求項１５】
Ｗｅｂアプリケーション生成装置と、クライアントアプリケーションの設計情報を有するサーバとがネットワークを介して接続可能なＷｅｂアプリケーション生成システムのプログラムであって、
前記サーバであるコンピュータを、
前記クライアントアプリケーションで使用されるデータ項目の情報であるデータ構造情報と、前記データ構造情報が前記クライアントアプリケーションで使用される時の属性情報を定義したレイアウト情報と、前記クライアントアプリケーションからのリクエストに応じて前記サーバが行う処理情報と、を記憶する設計情報記憶手段、
として機能させ、
前記Ｗｅｂアプリケーション生成装置であるコンピュータを、
前記設計情報記憶手段に記憶された前記データ構造情報を前記サーバから受信するデータ構造情報受信手段、
前記データ構造情報受信手段より受信した前記データ構造情報を、前記Ｗｅｂアプリケーションで使用されるデータ項目の情報であるデータモデル定義として記憶するデータモデル定義記憶手段、
前記設計情報記憶手段に記憶された前記レイアウト情報を前記サーバから受信するレイアウト情報受信手段、
前記レイアウト情報受信手段より受信した前記レイアウト情報を、前記Ｗｅｂアプリケーションで使用される時の属性情報を定義した定義情報である入出力定義として記憶する入出力定義記憶手段、
前記処理情報をＷｅｂアプリケーションから呼び出し可能にするためのＷｅｂサービスを作成するＷｅｂサービス作成手段、
前記データモデル定義と、前記入出力定義と、前記Ｗｅｂサービス作成手段により作成した前記Ｗｅｂサービスにより既存の前記処理情報を処理可能にするための定義情報と、を用いることにより、Ｗｅｂアプリケーションを生成する生成手段、
として機能させるためのＷｅｂアプリケーション生成システムのプログラム。
【請求項１６】
クライアントアプリケーションの設計情報を有するサーバとネットワークを介して接続可能なＷｅｂアプリケーション生成装置であって、
前記クライアントアプリケーションで使用されるデータ項目の情報であるデータ構造情報を前記サーバから受信するデータ構造情報受信手段と、
前記データ構造情報受信手段より受信した前記データ構造情報を、前記Ｗｅｂアプリケーションで使用されるデータ項目の情報であるデータモデル定義として記憶するデータモデル定義記憶手段と、
前記データ構造情報が前記クライアントアプリケーションで使用される時の属性情報を定義したレイアウト情報を前記サーバから受信するレイアウト情報受信手段と、
前記レイアウト情報受信手段より受信した前記レイアウト情報を、前記Ｗｅｂアプリケーションで使用される時の属性情報を定義した定義情報である入出力定義として記憶する入出力定義記憶手段と、
前記クライアントアプリケーションからのリクエストに応じて前記サーバが行う処理情報をＷｅｂアプリケーションから呼び出し可能にするためのＷｅｂサービスを作成するＷｅｂサービス作成手段と、
前記データモデル定義と、前記入出力定義と、前記Ｗｅｂサービス作成手段により作成した前記Ｗｅｂサービスにより既存の前記処理情報を処理可能にするための定義情報と、を用いることにより、Ｗｅｂアプリケーションを生成する生成手段と、
を備えることを特徴とするＷｅｂアプリケーション生成装置。
【請求項１７】
クライアントアプリケーションの設計情報を有するサーバとネットワークを介して接続可能なＷｅｂアプリケーション生成装置の制御方法であって、
前記クライアントアプリケーションで使用されるデータ項目の情報であるデータ構造情報を前記サーバから受信するデータ構造情報受信ステップと、
前記データ構造情報受信ステップより受信した前記データ構造情報を、前記Ｗｅｂアプリケーションで使用されるデータ項目の情報であるデータモデル定義として記憶するデータモデル定義記憶ステップと、
前記データ構造情報が前記クライアントアプリケーションで使用される時の属性情報を定義したレイアウト情報を前記サーバから受信するレイアウト情報受信ステップと、
前記レイアウト情報受信ステップより受信した前記レイアウト情報を、前記Ｗｅｂアプリケーションで使用される時の属性情報を定義した定義情報である入出力定義として記憶する入出力定義記憶ステップと、
前記クライアントアプリケーションからのリクエストに応じて前記サーバが行う処理情報をＷｅｂアプリケーションから呼び出し可能にするためのＷｅｂサービスを作成するＷｅｂサービス作成ステップと、
前記データモデル定義と、前記入出力定義と、前記Ｗｅｂサービス作成ステップにより作成した前記Ｗｅｂサービスにより既存の前記処理情報を処理可能にするための定義情報と、を用いることにより、Ｗｅｂアプリケーションを生成する生成ステップと、
を含むことを特徴とするＷｅｂアプリケーション生成装置の制御方法。
【請求項１８】
クライアントアプリケーションの設計情報を有するサーバとネットワークを介して接続可能なＷｅｂアプリケーション生成装置のプログラムであって、
前記Ｗｅｂアプリケーション生成装置であるコンピュータを、
前記クライアントアプリケーションで使用されるデータ項目の情報であるデータ構造情報を前記サーバから受信するデータ構造情報受信手段、
前記データ構造情報受信手段より受信した前記データ構造情報を、前記Ｗｅｂアプリケーションで使用されるデータ項目の情報であるデータモデル定義として記憶するデータモデル定義記憶手段、
前記データ構造情報が前記クライアントアプリケーションで使用される時の属性情報を定義したレイアウト情報を前記サーバから受信するレイアウト情報受信手段、
前記レイアウト情報受信手段より受信した前記レイアウト情報を、前記Ｗｅｂアプリケーションで使用される時の属性情報を定義した定義情報である入出力定義として記憶する入出力定義記憶手段、
前記クライアントアプリケーションからのリクエストに応じて前記サーバが行う処理情報をＷｅｂアプリケーションから呼び出し可能にするためのＷｅｂサービスを作成するＷｅｂサービス作成手段、
前記データモデル定義と、前記入出力定義と、前記Ｗｅｂサービス作成手段により作成した前記Ｗｅｂサービスにより既存の前記処理情報を処理可能にするための定義情報と、を用いることにより、Ｗｅｂアプリケーションを生成する生成手段、
として機能させるためのＷｅｂアプリケーション生成装置のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、既存システムと連携する、Ｗｅｂアプリケーションの生成を支援するための技術に関する。
【背景技術】
【０００２】
社内業務にワークフローシステムを利用することは一般的である。ワークフロー処理を行うにあたっては、社内では主にＰＣが利用される。
【０００３】
また、従来、社内利用のためのワークフローシステムの多くは、帳票画面にはネイティブ言語で開発したクライアントアプリケーションから、サーバに対してデータ送受信を行うクライアントサーバ型のシステムが多かった。
【０００４】
このような状況において、近年は外出先でモバイル端末を利用し、承認操作を行いたいといった要求が増えている。
【０００５】
しかしながら、クライアントアプリケーションで動作するワークフローシステムを、利用者端末がＰＣからの利用を前提で構築した場合、ＰＣでワークフローシステムにおける処理を行うことは可能であるが、モバイル端末から処理を行うことは、ＰＣというＯＳの利用を前提で構築されているため、不可能となる場合がある。そのため、その問題を解決するべく、一般的にはクライアントサーバ型のワークフローシステムをブラウザで動作するＷｅｂアプリケーションとして再構築を行うことが多い。
【０００６】
このように、クライアントアプリケーションで動作するワークフローシステムを、Ｗｅｂアプリケーションで動作するワークフローシステムへ再構築を行うことは開発コストが大きくなる課題があり、この課題に対する解決策として、特許文献１が提案されている。
【０００７】
特許文献１においては、オブジェクト指向で記述されているクライアントアプリケーションの開発データから部品と部品に対する処理の記述を抽出し、部品はＷｅｂオブジェクト部品に変換し、部品に対する処理の記述はＷｅｂオブジェクト部品のメソッドに変換するとある。具体的にはＡＳＰファイルとサーバプログラムを生成する。Ｗｅｂアプリケーションの生成が可能かどうかを判定する判定部があり、不可能と判定された場合は開発データの修正を要求する。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００２−１８２９１２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
特許文献１で提案されているプログラム（アプリケーションの画面上の部品に対する処理）を別のアプリケーションにおける、同じ処理を可能とするプログラムに変換する技術は難易度が高く、変換が可能なケースは少ないと考えられる。また、変換したプログラムが正しく動作する保証はなく、検証作業が別途必要になる。また、特許文献１ではクライアントアプリケーションからの操作とＷｅｂブラウザからの操作で、同じデータに関して相互運用することができない。このため、Ｗｅｂアプリケーションを構築するにあたっては、既存のクライアントアプリケーションの設計情報を利用しつつも、Ｗｅｂアプリケーションの処理の部分に関しては、クライアントアプリケーションで動作している処理のロジックを変換することなく、そのまま利用できるようにＷｅｂアプリケーションを構築することが望まれる。また、一般的には、ユーザの利用端末の種別に応じて、適切なアプリケーション画面が呼び出され、同じデータにアクセスできるようにすることが望まれている。
【００１０】
そこで、本発明の目的は上記課題を鑑み、クライアントアプリケーションで処理を行うシステムをＷｅｂアプリケーションからも処理を行えるようにするために、クライアントアプリケーションからＷｅｂアプリケーションを構築する場合、クライアントアプリケーションの処理をＷｅｂアプリケーション用の処理に変換することなく、Ｗｅｂアプリケーションを生成するＷｅｂアプリケーション生成システムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
前述した課題を解決するための第１の発明は、Ｗｅｂアプリケーション生成装置と、クライアントアプリケーションの設計情報を有するサーバとがネットワークを介して接続可能なＷｅｂアプリケーション生成システムにおいて、前記サーバは、前記クライアントアプリケーションで使用されるデータ項目の情報であるデータ構造情報と、前記クライアントアプリケーションからのリクエストに応じて前記サーバが行う処理情報とを記憶する設計情報記憶手段と、前記処理情報をＷｅｂアプリケーションから呼び出し可能にするためのＷｅｂサービスを提供するＷｅｂサービス提供手段と、を備え、前記Ｗｅｂアプリケーション生成装置は、前記設計情報記憶手段に記憶された前記データ構造情報を前記サーバから受信するデータ構造情報受信手段と、前記データ構造情報受信手段より受信した前記データ構造情報を、前記Ｗｅｂアプリケーションで使用されるデータ項目の情報であるデータモデル定義として記憶するデータモデル定義記憶手段と、前記データモデル定義と、前記Ｗｅｂサービス提供手段により提供されるＷｅｂサービスにより使用可能な既存の前記処理情報を処理可能にするための定義情報と、を用いることにより、Ｗｅｂアプリケーションを生成する生成手段と、を備えることを特徴とするＷｅｂアプリケーション生成システムである。
【００１２】
第１の発明によって、クライアントアプリケーションで処理を行うシステムをＷｅｂアプリケーションからも処理を行えるようにするために、クライアントアプリケーションからＷｅｂアプリケーションを構築する場合であって、クライアントアプリケーションからのリクエストに応じてサーバが行う処理がＷｅｂアプリケーションから呼び出し可能となるようにＷｅｂサービスとして提供されている場合に、クライアントアプリケーションの処理をＷｅｂアプリケーション用の処理に変換することなく、Ｗｅｂアプリケーション生成システムを提供することが可能になる。
【００１３】
前記サーバは、前記サーバの前記クライアントアプリケーションに対しアクセスを受け付けた場合にアクセス元を判定する判定手段と、前記判定手段により、前記サーバが端末からアクセスを受け付けたと判定した場合は、前記クライアントアプリケーションを前記端末へ表示するとともに、前記判定手段により、前記サーバがモバイル端末からアクセスを受け付けたと判定した場合は、前記Ｗｅｂアプリケーションの画面を前記モバイル端末へ表示する切替手段と、を更に備えることが望ましい。
【００１４】
これにより、サーバは、サーバへのアクセスが端末かモバイル端末かに応じて、クライアントアプリケーションを表示するか、Ｗｅｂアプリケーションを表示するかを切り替えることができる。
【００１５】
前記サーバは、前記判定手段により、前記サーバが前記モバイル端末からアクセスを受け付けたと判定した場合に表示するＷｅｂアプリケーションのＵＲＬと、前記クライアントアプリケーションのＵＲＬとを対応づけた対応テーブルを記憶するフィルタ設定情報記憶手段を更に備えることが望ましい。
【００１６】
これにより、サーバは、ＷｅｂアプリケーションのＵＲＬと、前記クライアントアプリケーションのＵＲＬとを対応づけたフィルタ設定情報を利用することができる。
【００１７】
前記切替手段は、前記アクセス元のモバイル端末がリクエスト情報として前記サーバに送信した前記クライアントアプリケーションのＵＲＬに対応する、前記Ｗｅｂアプリケーションを表示するためのＵＲＬが前記フィルタ設定情報記憶手段に存在する場合、前記アクセス元のモバイル端末に当該Ｗｅｂアプリケーションを表示するＵＲＬに対応する前記Ｗｅｂアプリケーションを表示することが望ましい。
【００１８】
これにより、サーバは、モバイル端末がリクエストしたクライアントアプリケーションの処理画面に対応するＷｅｂアプリケーションの処理画面がある場合には、モバイル端末にＷｅｂアプリケーションの処理画面を表示させるようにすることができる。
【００１９】
第２の発明は、Ｗｅｂアプリケーション生成装置と、クライアントアプリケーションの設計情報を有するサーバとがネットワークを介して接続可能なＷｅｂアプリケーション生成システムにおいて、前記サーバは、前記クライアントアプリケーションで使用されるデータ項目の情報であるデータ構造情報と、前記データ構造情報が前記クライアントアプリケーションで使用される時の属性情報を定義したレイアウト情報と、前記クライアントアプリケーションからのリクエストに応じて前記サーバが行う処理情報と、を記憶する設計情報記憶手段と、を備え、前記Ｗｅｂアプリケーション生成装置は、前記設計情報記憶手段に記憶された前記データ構造情報を前記サーバから受信するデータ構造情報受信手段と、前記データ構造情報受信手段より受信した前記データ構造情報を、前記Ｗｅｂアプリケーションで使用されるデータ項目の情報であるデータモデル定義として記憶するデータモデル定義記憶手段と、前記設計情報記憶手段に記憶された前記レイアウト情報を前記サーバから受信するレイアウト情報受信手段と、前記レイアウト情報受信手段より受信した前記レイアウト情報を、前記Ｗｅｂアプリケーションで使用される時の属性情報を定義した定義情報である入出力定義として記憶する入出力定義記憶手段と、前記処理情報をＷｅｂアプリケーションから呼び出し可能にするためのＷｅｂサービスを作成するＷｅｂサービス作成手段と、前記データモデル定義と、前記入出力定義と、前記Ｗｅｂサービス作成手段により作成した前記Ｗｅｂサービスにより既存の前記処理情報を処理可能にするための定義情報と、を用いることにより、Ｗｅｂアプリケーションを生成する生成手段と、を備えることを特徴とするＷｅｂアプリケーション生成システムである。
【００２０】
第２の発明によって、クライアントアプリケーションで処理を行うシステムをＷｅｂアプリケーションからも処理を行えるようにするために、クライアントアプリケーションからＷｅｂアプリケーションを構築する場合、クライアントアプリケーションの処理をＷｅｂアプリケーション用の処理に変換することなく、Ｗｅｂアプリケーション生成システムを提供することが可能になる。
【００２１】
前記サーバは、前記サーバの前記クライアントアプリケーションに対しアクセスを受け付けた場合にアクセス元を判定する判定手段と、前記判定手段により、前記サーバが端末からアクセスを受け付けたと判定した場合は、前記クライアントアプリケーションを前記端末へ表示するとともに、前記判定手段により、前記サーバがモバイル端末からアクセスを受け付けたと判定した場合は、前記Ｗｅｂアプリケーションの画面を前記モバイル端末へ表示する切替手段と、を更に備え、前記Ｗｅｂアプリケーション生成装置は、前記判定手段と、前記切替手段とを備えるフィルタプログラムを生成するフィルタプログラム生成手段を更に備えることが望ましい。
【００２２】
これにより、サーバは、サーバへのアクセスが端末かモバイル端末かに応じて、クライアントアプリケーションを表示するか、Ｗｅｂアプリケーションを表示するかを切り替えることができ、Ｗｅｂアプリケーション生成装置は、アクセス元の判定及び切り替えを行うフィルタプログラムを生成することができる。
【００２３】
前記サーバは、前記判定手段により、前記サーバが前記モバイル端末からアクセスを受け付けたと判定した場合に表示するＷｅｂアプリケーションのＵＲＬと、前記クライアントアプリケーションのＵＲＬとを対応づけた対応テーブルを記憶するフィルタ設定情報記憶手段を更に備えることが望ましい。
【００２４】
これにより、サーバは、ＷｅｂアプリケーションのＵＲＬと、前記クライアントアプリケーションのＵＲＬとを対応づけたフィルタ設定情報を利用することができる。
【００２５】
前記切替手段は、前記アクセス元のモバイル端末がリクエスト情報として前記サーバに送信した前記クライアントアプリケーションのＵＲＬに対応する、前記Ｗｅｂアプリケーションを表示するためのＵＲＬが前記フィルタ設定情報記憶手段に存在する場合、前記アクセス元のモバイル端末に当該Ｗｅｂアプリケーションを表示するＵＲＬに対応する前記Ｗｅｂアプリケーションを表示することが望ましい。
【００２６】
これにより、サーバは、モバイル端末がリクエストしたクライアントアプリケーションの処理画面に対応するＷｅｂアプリケーションの処理画面がある場合には、モバイル端末にＷｅｂアプリケーションの処理画面を表示させるようにすることができる。
【００２７】
第３の発明は、Ｗｅｂアプリケーション生成装置と、クライアントアプリケーションの設計情報を有するサーバとがネットワークを介して接続可能なＷｅｂアプリケーション生成システムの制御方法にであって、前記サーバは、前記クライアントアプリケーションで使用されるデータ項目の情報であるデータ構造情報と、前記クライアントアプリケーションからのリクエストに応じて前記サーバが行う処理情報とを記憶する設計情報記憶ステップと、前記処理情報をＷｅｂアプリケーションから呼び出し可能にするためのＷｅｂサービスを提供するＷｅｂサービス提供ステップと、を含み、前記Ｗｅｂアプリケーション生成装置は、前記設計情報記憶ステップにおいて記憶された前記データ構造情報を前記サーバから受信するデータ構造情報受信ステップと、前記データ構造情報受信ステップより受信した前記データ構造情報を、前記Ｗｅｂアプリケーションで使用されるデータ項目の情報であるデータモデル定義として記憶するデータモデル定義記憶ステップと、前記データモデル定義と、前記Ｗｅｂサービス提供ステップにより提供されるＷｅｂサービスにより使用可能な既存の前記処理情報を処理可能にするための定義情報と、を用いることにより、Ｗｅｂアプリケーションを生成する生成ステップと、を含むことを特徴とするＷｅｂアプリケーション生成システムの制御方法である。
【００２８】
第３の発明によって、クライアントアプリケーションで処理を行うシステムをＷｅｂアプリケーションからも処理を行えるようにするために、クライアントアプリケーションからＷｅｂアプリケーションを構築する場合であって、クライアントアプリケーションからのリクエストに応じてサーバが行う処理がＷｅｂアプリケーションから呼び出し可能となるようにＷｅｂサービスとして提供されている場合に、クライアントアプリケーションの処理をＷｅｂアプリケーション用の処理に変換することなく、Ｗｅｂアプリケーション生成システムを制御することが可能になる。
【００２９】
第４の発明は、Ｗｅｂアプリケーション生成装置と、クライアントアプリケーションの設計情報を有するサーバとがネットワークを介して接続可能なＷｅｂアプリケーション生成システムのプログラムであって、前記サーバであるコンピュータを、前記クライアントアプリケーションで使用されるデータ項目の情報であるデータ構造情報と、前記クライアントアプリケーションからのリクエストに応じて前記サーバが行う処理情報とを記憶する設計情報記憶手段、前記処理情報をＷｅｂアプリケーションから呼び出し可能にするためのＷｅｂサービスを提供するＷｅｂサービス提供手段、として機能させ、前記Ｗｅｂアプリケーション生成装置であるコンピュータを、前記設計情報記憶手段に記憶された前記データ構造情報を前記サーバから受信するデータ構造情報受信手段、前記データ構造情報受信手段より受信した前記データ構造情報を、前記Ｗｅｂアプリケーションで使用されるデータ項目の情報であるデータモデル定義として記憶するデータモデル定義記憶手段、前記データモデル定義と、前記Ｗｅｂサービス提供手段により提供されるＷｅｂサービスにより使用可能な既存の前記処理情報を処理可能にするための定義情報と、を用いることにより、Ｗｅｂアプリケーションを生成する生成手段、として機能させるためのＷｅｂアプリケーション生成システムのプログラムである。
【００３０】
第４の発明を汎用のコンピュータにインストールすることにより、第１の発明に係るＷｅｂアプリケーション生成システムを実現するプログラムを実行することができる。
【００３１】
第５の発明は、クライアントアプリケーションの設計情報を有し、前記クライアントアプリケーションからのリクエストに応じて行う処理情報をＷｅｂアプリケーションから呼び出し可能にするためのＷｅｂサービスを提供するＷｅｂサービス提供手段を備えるサーバとネットワークを介して接続可能なＷｅｂアプリケーション生成装置であって、前記クライアントアプリケーションで使用されるデータ項目の情報であるデータ構造情報を前記サーバから受信するデータ構造情報受信手段と、前記データ構造情報受信手段より受信した前記データ構造情報を、前記Ｗｅｂアプリケーションで使用されるデータ項目の情報であるデータモデル定義として記憶するデータモデル定義記憶手段と、前記データモデル定義と、前記Ｗｅｂサービス提供手段により提供されるＷｅｂサービスにより使用可能な既存の前記処理情報を処理可能にするための定義情報と、を用いることにより、Ｗｅｂアプリケーションを生成する生成手段と、を備えることを特徴とするＷｅｂアプリケーション生成装置である。
【００３２】
第５の発明によって、クライアントアプリケーションで処理を行うシステムをＷｅｂアプリケーションからも処理を行えるようにするために、クライアントアプリケーションからＷｅｂアプリケーションを構築する場合であって、クライアントアプリケーションからのリクエストに応じてサーバが行う処理がＷｅｂアプリケーションから呼び出し可能となるようにＷｅｂサービスとして提供されている場合に、クライアントアプリケーションの処理をＷｅｂアプリケーション用の処理に変換することなく、Ｗｅｂアプリケーション生成装置を提供することが可能になる。
【００３３】
第６の発明は、クライアントアプリケーションの設計情報を有し、前記クライアントアプリケーションからのリクエストに応じて行う処理情報をＷｅｂアプリケーションから呼び出し可能にするためのＷｅｂサービスを提供するＷｅｂサービス提供手段を備えるサーバとネットワークを介して接続可能なＷｅｂアプリケーション生成装置の制御方法であって、前記クライアントアプリケーションで使用されるデータ項目の情報であるデータ構造情報を前記サーバから受信するデータ構造情報受信ステップと、前記データ構造情報受信ステップより受信した前記データ構造情報を、前記Ｗｅｂアプリケーションで使用されるデータ項目の情報であるデータモデル定義として記憶するデータモデル定義記憶ステップと、前記データモデル定義と、前記Ｗｅｂサービス提供手段により提供されるＷｅｂサービスにより使用可能な既存の前記処理情報を処理可能にするための定義情報と、を用いることにより、Ｗｅｂアプリケーションを生成する生成ステップと、を含むことを特徴とするＷｅｂアプリケーション生成装置の制御方法である。
【００３４】
第６の発明によって、クライアントアプリケーションで処理を行うシステムをＷｅｂアプリケーションからも処理を行えるようにするために、クライアントアプリケーションからＷｅｂアプリケーションを構築する場合であって、クライアントアプリケーションからのリクエストに応じてサーバが行う処理がＷｅｂアプリケーションから呼び出し可能となるようにＷｅｂサービスとして提供されている場合に、クライアントアプリケーションの処理をＷｅｂアプリケーション用の処理に変換することなく、Ｗｅｂアプリケーション生成装置を制御することが可能になる。
【００３５】
第７の発明は、クライアントアプリケーションの設計情報を有し、前記クライアントアプリケーションからのリクエストに応じて行う処理情報をＷｅｂアプリケーションから呼び出し可能にするためのＷｅｂサービスを提供するＷｅｂサービス提供手段を備えるサーバとネットワークを介して接続可能なＷｅｂアプリケーション生成装置のプログラムであって、前記Ｗｅｂアプリケーション生成装置であるコンピュータを、前記クライアントアプリケーションで使用されるデータ項目の情報であるデータ構造情報を前記サーバから受信するデータ構造情報受信手段、前記データ構造情報受信手段より受信した前記データ構造情報を、前記Ｗｅｂアプリケーションで使用されるデータ項目の情報であるデータモデル定義として記憶するデータモデル定義記憶手段、前記データモデル定義と、前記Ｗｅｂサービス提供手段により提供されるＷｅｂサービスにより使用可能な既存の前記処理情報を処理可能にするための定義情報と、を用いることにより、Ｗｅｂアプリケーションを生成する生成手段、として機能させるためのＷｅｂアプリケーション生成装置のプログラムである。
【００３６】
第７の発明を汎用のコンピュータにインストールすることにより、第５の発明に係るＷｅｂアプリケーション生成装置を実現するプログラムを実行することができる。
【００３７】
第８の発明は、Ｗｅｂアプリケーション生成装置と、クライアントアプリケーションの設計情報を有するサーバとがネットワークを介して接続可能なＷｅｂアプリケーション生成システムの制御方法であって、前記サーバは、前記クライアントアプリケーションで使用されるデータ項目の情報であるデータ構造情報と、前記データ構造情報が前記クライアントアプリケーションで使用される時の属性情報を定義したレイアウト情報と、前記クライアントアプリケーションからのリクエストに応じて前記サーバが行う処理情報と、を記憶する設計情報記憶ステップと、を含み、前記Ｗｅｂアプリケーション生成装置は、前記設計情報記憶ステップにおいて記憶された前記データ構造情報を前記サーバから受信するデータ構造情報受信ステップと、前記データ構造情報受信ステップより受信した前記データ構造情報を、前記Ｗｅｂアプリケーションで使用されるデータ項目の情報であるデータモデル定義として記憶するデータモデル定義記憶ステップと、前記設計情報記憶ステップにおいて記憶された前記レイアウト情報を前記サーバから受信するレイアウト情報受信ステップと、前記レイアウト情報受信ステップより受信した前記レイアウト情報を、前記Ｗｅｂアプリケーションで使用される時の属性情報を定義した定義情報である入出力定義として記憶する入出力定義記憶ステップと、前記処理情報をＷｅｂアプリケーションから呼び出し可能にするためのＷｅｂサービスを作成するＷｅｂサービス作成ステップと、前記データモデル定義と、前記入出力定義と、前記Ｗｅｂサービス作成ステップにより作成した前記Ｗｅｂサービスにより既存の前記処理情報を処理可能にするための定義情報と、を用いることにより、Ｗｅｂアプリケーションを生成する生成ステップと、を含むことを特徴とするＷｅｂアプリケーション生成システムの制御方法である。
【００３８】
第８の発明によって、クライアントアプリケーションで処理を行うシステムをＷｅｂアプリケーションからも処理を行えるようにするために、クライアントアプリケーションからＷｅｂアプリケーションを構築する場合、クライアントアプリケーションの処理をＷｅｂアプリケーション用の処理に変換することなく、Ｗｅｂアプリケーション生成システムを制御することが可能になる。
【００３９】
第９の発明は、Ｗｅｂアプリケーション生成装置と、クライアントアプリケーションの設計情報を有するサーバとがネットワークを介して接続可能なＷｅｂアプリケーション生成システムのプログラムであって、前記サーバであるコンピュータを、前記クライアントアプリケーションで使用されるデータ項目の情報であるデータ構造情報と、前記データ構造情報が前記クライアントアプリケーションで使用される時の属性情報を定義したレイアウト情報と、前記クライアントアプリケーションからのリクエストに応じて前記サーバが行う処理情報と、を記憶する設計情報記憶手段、として機能させ、前記Ｗｅｂアプリケーション生成装置であるコンピュータを、前記設計情報記憶手段に記憶された前記データ構造情報を前記サーバから受信するデータ構造情報受信手段、前記データ構造情報受信手段より受信した前記データ構造情報を、前記Ｗｅｂアプリケーションで使用されるデータ項目の情報であるデータモデル定義として記憶するデータモデル定義記憶手段、前記設計情報記憶手段に記憶された前記レイアウト情報を前記サーバから受信するレイアウト情報受信手段、前記レイアウト情報受信手段より受信した前記レイアウト情報を、前記Ｗｅｂアプリケーションで使用される時の属性情報を定義した定義情報である入出力定義として記憶する入出力定義記憶手段、前記処理情報をＷｅｂアプリケーションから呼び出し可能にするためのＷｅｂサービスを作成するＷｅｂサービス作成手段、前記データモデル定義と、前記入出力定義と、前記Ｗｅｂサービス作成手段により作成した前記Ｗｅｂサービスにより既存の前記処理情報を処理可能にするための定義情報と、を用いることにより、Ｗｅｂアプリケーションを生成する生成手段、として機能させるためのＷｅｂアプリケーション生成システムのプログラムである。
【００４０】
第９の発明を汎用のコンピュータにインストールすることにより、第２の発明に係るＷｅｂアプリケーション生成システムを実現するプログラムを実行することができる。
【００４１】
第１０の発明は、クライアントアプリケーションの設計情報を有するサーバとネットワークを介して接続可能なＷｅｂアプリケーション生成装置であって、前記クライアントアプリケーションで使用されるデータ項目の情報であるデータ構造情報を前記サーバから受信するデータ構造情報受信手段と、前記データ構造情報受信手段より受信した前記データ構造情報を、前記Ｗｅｂアプリケーションで使用されるデータ項目の情報であるデータモデル定義として記憶するデータモデル定義記憶手段と、前記データ構造情報が前記クライアントアプリケーションで使用される時の属性情報を定義したレイアウト情報を前記サーバから受信するレイアウト情報受信手段と、前記レイアウト情報受信手段より受信した前記レイアウト情報を、前記Ｗｅｂアプリケーションで使用される時の属性情報を定義した定義情報である入出力定義として記憶する入出力定義記憶手段と、前記クライアントアプリケーションからのリクエストに応じて前記サーバが行う処理情報をＷｅｂアプリケーションから呼び出し可能にするためのＷｅｂサービスを作成するＷｅｂサービス作成手段と、前記データモデル定義と、前記入出力定義と、前記Ｗｅｂサービス作成手段により作成した前記Ｗｅｂサービスにより既存の前記処理情報を処理可能にするための定義情報と、を用いることにより、Ｗｅｂアプリケーションを生成する生成手段と、を備えることを特徴とするＷｅｂアプリケーション生成装置である。
【００４２】
第１０の発明によって、クライアントアプリケーションで処理を行うシステムをＷｅｂアプリケーションからも処理を行えるようにするために、クライアントアプリケーションからＷｅｂアプリケーションを構築する場合、クライアントアプリケーションの処理をＷｅｂアプリケーション用の処理に変換することなく、Ｗｅｂアプリケーション生成装置を提供することが可能になる。
【００４３】
第１１の発明は、クライアントアプリケーションの設計情報を有するサーバとネットワークを介して接続可能なＷｅｂアプリケーション生成装置の制御方法であって、前記クライアントアプリケーションで使用されるデータ項目の情報であるデータ構造情報を前記サーバから受信するデータ構造情報受信ステップと、前記データ構造情報受信ステップより受信した前記データ構造情報を、前記Ｗｅｂアプリケーションで使用されるデータ項目の情報であるデータモデル定義として記憶するデータモデル定義記憶ステップと、前記データ構造情報が前記クライアントアプリケーションで使用される時の属性情報を定義したレイアウト情報を前記サーバから受信するレイアウト情報受信ステップと、前記レイアウト情報受信ステップより受信した前記レイアウト情報を、前記Ｗｅｂアプリケーションで使用される時の属性情報を定義した定義情報である入出力定義として記憶する入出力定義記憶ステップと、前記クライアントアプリケーションからのリクエストに応じて前記サーバが行う処理情報をＷｅｂアプリケーションから呼び出し可能にするためのＷｅｂサービスを作成するＷｅｂサービス作成ステップと、前記データモデル定義と、前記入出力定義と、前記Ｗｅｂサービス作成ステップにより作成した前記Ｗｅｂサービスにより既存の前記処理情報を処理可能にするための定義情報と、を用いることにより、Ｗｅｂアプリケーションを生成する生成ステップと、を含むことを特徴とするＷｅｂアプリケーション生成装置の制御方法である。
【００４４】
第１１の発明によって、クライアントアプリケーションで処理を行うシステムをＷｅｂアプリケーションからも処理を行えるようにするために、クライアントアプリケーションからＷｅｂアプリケーションを構築する場合、クライアントアプリケーションの処理をＷｅｂアプリケーション用の処理に変換することなく、Ｗｅｂアプリケーション生成装置を制御することが可能になる。
【００４５】
第１２の発明は、クライアントアプリケーションの設計情報を有するサーバとネットワークを介して接続可能なＷｅｂアプリケーション生成装置のプログラムであって、前記Ｗｅｂアプリケーション生成装置であるコンピュータを、前記クライアントアプリケーションで使用されるデータ項目の情報であるデータ構造情報を前記サーバから受信するデータ構造情報受信手段、前記データ構造情報受信手段より受信した前記データ構造情報を、前記Ｗｅｂアプリケーションで使用されるデータ項目の情報であるデータモデル定義として記憶するデータモデル定義記憶手段、前記データ構造情報が前記クライアントアプリケーションで使用される時の属性情報を定義したレイアウト情報を前記サーバから受信するレイアウト情報受信手段、前記レイアウト情報受信手段より受信した前記レイアウト情報を、前記Ｗｅｂアプリケーションで使用される時の属性情報を定義した定義情報である入出力定義として記憶する入出力定義記憶手段、前記クライアントアプリケーションからのリクエストに応じて前記サーバが行う処理情報をＷｅｂアプリケーションから呼び出し可能にするためのＷｅｂサービスを作成するＷｅｂサービス作成手段、前記データモデル定義と、前記入出力定義と、前記Ｗｅｂサービス作成手段により作成した前記Ｗｅｂサービスにより既存の前記処理情報を処理可能にするための定義情報と、を用いることにより、Ｗｅｂアプリケーションを生成する生成手段、として機能させるためのＷｅｂアプリケーション生成装置のプログラムである。
【００４６】
第１２の発明を汎用のコンピュータにインストールすることにより、第１０の発明に係るＷｅｂアプリケーション生成装置を実現するプログラムを実行することができる。
【発明の効果】
【００４７】
本発明によれば、クライアントアプリケーションで処理を行うシステムをＷｅｂアプリケーションからも処理を行えるようにするために、クライアントアプリケーションからＷｅｂアプリケーションを構築する場合、クライアントアプリケーションの処理をＷｅｂアプリケーション用の処理に変換することなく、Ｗｅｂアプリケーション生成システムを提供することが可能になる。
【図面の簡単な説明】
【００４８】
【図１】本発明の実施形態におけるシステム構成の一例を示す図である。
【図２】本発明の実施形態のＷｅｂアプリケーション生成装置、ワークフローサーバ、利用者端末のハードウェア構成の一例を示す図である。
【図３】本発明の実施形態における機能構成の一例を示す図である。
【図４】本発明の実施形態におけるＷｅｂサービスへの変換処理の一例を示すフローチャートである。
【図５】本発明の実施形態におけるＷｅｂサービスのソースコードの変換の一例を示す図である。
【図６】本発明の実施形態におけるＧＵＩのエディタ画面でデータ構造情報を表示している一例を示す図である。
【図７】本発明の実施形態におけるＸＭＬファイルで管理されたデータ構造情報の一例を示す図である。
【図８】本発明の実施形態における、データモデル定義の定義項目に対応するデータ構造情報のＸＭＬタグ情報を管理したテーブルの一例を示す図である。
【図９】本発明の実施形態における、データ構造情報の値の変換ルールを管理したテーブルの一例を示す図である。
【図１０】本発明の実施形態における、データ構造情報をデータモデル定義へ変換する処理の一例を示すフローチャートである。
【図１１】本発明の実施形態におけるＧＵＩのエディタ画面でデータモデル定義を表示している一例を示す図である。
【図１２】本発明の実施形態におけるＧＵＩのエディタ画面でレイアウト情報を表示している一例を示す図である。
【図１３】本発明の実施形態におけるＸＭＬファイルで管理されたレイアウト情報の一例を示す図である。
【図１４】本発明の実施形態における、入出力定義の定義項目に対応するレイアウト情報のＸＭＬタグ情報を管理したテーブルの一例を示す図である。
【図１５】本発明の実施形態における、レイアウト情報の値変換ルールの一例を示す図である。
【図１６】本発明の実施形態における、レイアウト情報を入出力定義へ変換する処理の一例を示すフローチャートである。
【図１７】本発明の実施形態におけるＧＵＩのエディタ画面で入出力定義を表示している一例を示す図である。
【図１８】本発明の実施形態におけるＧＵＩのエディタ画面で入出力定義を表示している一例を示す図である。
【図１９】本発明の実施形態における処理定義の設定の一例を示す図である。
【図２０】本発明の実施形態におけるクライアントアプリケーション側の処理のＷＳＤＬの一例を示す図である。
【図２１】本発明の実施形態におけるＷｅｂアプリケーション生成の処理の一例を示すフローチャートである。
【図２２】本発明の実施形態におけるフィルタ設定情報の一例を示す図である。
【図２３】本発明の実施形態におけるフィルタプログラム生成の処理の一例を示すフローチャートである。
【図２４】本発明の実施形態における、ワークフローサーバが利用者端末からアクセスを受け付けた時の利用者端末に対する表示画面の切り替え処理の一例を示すフローチャートである。
【図２５】本発明の実施形態におけるweb.xmlの一例を示す図である。
【発明を実施するための形態】
【００４９】
以下、本発明の実施の形態を、図面を参照して詳細に説明する。
【００５０】
図１は、本発明の第１の実施形態を示すワークフローシステム１の全体構成を示すシステム構成図である。
【００５１】
図１は、ネイティブ型のクライアントアプリケーションを帳票画面として返すワークフローシステム１において、ワークフローデータにアクセス可能なＷｅｂアプリケーションを生成することで、当該ワークフローシステム１の利用者が、利用者端末１４０から、従来のクライアントアプリケーションだけではなく、ブラウザ利用によってＷｅｂアプリケーションより、同じワークフロー処理を行えるシステムをＷｅｂアプリケーション生成装置１００によって生成可能とすることを示す、構成図である。
【００５２】
つまり、ワークフローシステム１が、Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ（ＰＣ）を前提として構築されたクライアントアプリケーションである場合に、利用者端末１４０がＰＣなどの端末である場合、ネイティブ型のクライアントアプリケーションにアクセスすることは可能であるが、利用者端末１４０がスマートフォンなどのモバイル端末である場合、モバイル端末からネイティブ型のクライアントアプリケーションにアクセスすることは不可能なので、このような場合に、Ｗｅｂアプリケーションからアクセスできるようにするための、Ｗｅｂアプリケーション構築のシステム構成図となる。
【００５３】
ワークフローサーバ１２０は、利用者端末１４０（ＰＣ等の端末、または、モバイル端末）より行われたワークフローシステム１における帳票の起案や承認などの処理を受け付け、帳票のデータ、あるいは、起案や承認などの処理の履歴のデータをワークフローデータベース１３０に保存する。
【００５４】
また、ワークフローサーバ１２０は、利用者端末１４０から、ネイティブ型のクライアントアプリケーション、または、Ｗｅｂアプリケーションによってもワークフローシステム１へアクセスを可能とすることを可能とする。つまり、利用者端末１４０がワークフローサーバ１２０へアクセスすると、ワークフローサーバ１２０が、利用者端末１４０に対し、クライアントアプリケーション１５０またはＷｅｂアプリケーション１６０のいずれかの画面を返すことによって、利用者端末１４０からワークフロー処理が可能になる。
【００５５】
Ｗｅｂアプリケーション生成装置１００は、アプリケーションで使用する項目の情報や、アプリケーション画面の定義情報をワークフローサーバ１２０の設計情報から取得し、Ｗｅｂアプリケーションを生成するために必要な設計情報として保持する。その設計情報の値をパラメータとして、Ｗｅｂアプリケーションを生成するのに必要となるソースコードのテンプレートに当てはめることによって、Ｗｅｂアプリケーションを生成する。
【００５６】
なお、Ｗｅｂアプリケーションにおけるワークフローの処理を実行する処理情報については、Ｗｅｂサービスとして公開されている、既存のクライアントアプリケーションからのリクエストに応じてクライアントアプリケーションのサーバが行う処理の機能を利用する。そして、Ｗｅｂアプリケーション１６０を、Ｗｅｂアプリケーションサーバ１７０に配置する。
【００５７】
以上によって、ワークフローサーバ１２０の設計情報から生成したＷｅｂアプリケーションがＷｅｂアプリケーションとして動作し、ワークフローデータベース１３０のデータへアクセスし、ワークフロー処理を可能とする（図１でいうとワークフローシステム１を使用可能とする）。
【００５８】
なお、本実施例の図１、図３の説明において、利用者端末１４０からアクセスするシステムを、ワークフローシステム１を例として挙げて説明を行っているが、利用者端末１４０からアクセスするシステムは、ワークフロー処理を行わないシステムであっても本発明を応用できることとする。
【００５９】
なお、このワークフローシステム１によって、本発明に係る「Ｗｅｂアプリケーション生成システム」の一例が構成されており、ワークフローサーバ１２０によって、本発明に係る「クライアントアプリケーションの設計情報を有するサーバ」の一例が構成されており、Ｗｅｂアプリケーション生成装置１００によって、本発明に係る「Ｗｅｂアプリケーション生成装置」の一例が構成されている。
【００６０】
また、モバイル端末である場合の利用者端末１４０によって、本発明に係る「モバイル端末」の一例が構成されており、ＰＣである場合の利用者端末１４０によって、本発明に係る「端末」の一例が構成されている。
【００６１】
次に、図２を用いて、本発明の実施形態におけるハードウェア構成の一例について説明を行う。
【００６２】
図２は、図１に示したＷｅｂアプリケーション生成装置１００、ワークフローサーバ１２０、利用者端末１４０のハードウェア構成の一例を示す図である。
【００６３】
ＣＰＵ２０１は、システムバス２０４に接続される各デバイスやコントローラを統括的に制御する。
【００６４】
また、ＲＯＭ２０２あるいは外部メモリ２１１には、ＣＰＵ２０１の制御プログラムであるＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ  ／  Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）やオペレーティングシステムプログラム（以下、ＯＳ）や、各サーバ或いは各ＰＣ、各モバイル端末の実行する機能を実現するために必要な後述する各種プログラム等が記憶されている。ＲＡＭ２０３は、ＣＰＵ２０１の主メモリ、ワークエリア等として機能する。
【００６５】
ＣＰＵ２０１は、処理の実行に際して必要なプログラム等をＲＡＭ２０３にロードして、プログラムを実行することで各種動作を実現するものである。
【００６６】
また、入力コントローラ（入力Ｃ）２０５は、キーボード（ＫＢ）２０９や不図示のマウス等のポインティングデバイスからの入力を制御する。なお、モバイル端末への入力の制御は、画面に表示されるソフトキーボードを使用することにより、画面に直に接触することによって行う。
【００６７】
ビデオコントローラ（ＶＣ）２０６は、ＣＲＴディスプレイ（ＣＲＴ）２１０等の表示器への表示を制御する。表示器はＣＲＴや、液晶ディスプレイを想定するが、これに限らない。これらは必要に応じて管理者が使用するものである。本発明には直接関係があるものではない。
【００６８】
メモリコントローラ（ＭＣ）２０７は、ブートプログラム、ブラウザソフトウエア、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、各種データ等を記憶するハードディスク（ＨＤ）やフロッピー（登録商標）ディスク或いはＰＣＭＣＩＡカードスロットにアダプタを介して接続されるコンパクトフラッシュ（登録商標）メモリ等の外部メモリ２１１へのアクセスを制御する。
【００６９】
通信Ｉ／Ｆコントローラ（通信Ｉ／ＦＣ）２０８は、ネットワークを介して、外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、ＴＣＰ／ＩＰを用いたインターネット通信等が可能である。
【００７０】
なお、ＣＰＵ２０１は、例えばＲＡＭ２０３内の表示情報用領域へアウトラインフォントの展開（ラスタライズ）処理を実行することにより、ＣＲＴディスプレイ２１０上での表示を可能としている。また、ＣＰＵ２０１は、ＣＲＴディスプレイ２１０上の不図示のマウスカーソルや、タッチ操作等によるユーザ指示を可能とする。
【００７１】
本発明を実現するためのプログラムは外部メモリ２１１に記録されており、必要に応じてＲＡＭ２０３にロードされることによりＣＰＵ２０１によって実行されるものである。
【００７２】
＜第１の実施形態＞
次に、第１の実施形態について図３を用いて説明を行う。図３は、本発明の実施形態における機能構成の一例を示す図である。
【００７３】
図３のワークフローサーバ１２０は、ワークフローサーバ１２０で動作するアプリケーションの設計情報として、データ構造情報１２１、レイアウト情報１２２、および、ワークフロー処理部１２３を保持する。さらに、ワークフロー処理部１２３の処理を行う部分をＷｅｂサービスとして公開したものとして、Ｗｅｂサービスインタフェース１２４（以下、ＷＳインタフェース１２４という）を保持する。
【００７４】
なお、クライアントアプリケーション１５０は、利用者端末１４０側が使用するために、利用者端末１４０ｂ側に構築され、ワークフローシステム１においてワークフローの処理を行うことを可能とする。このクライアントアプリケーション１５０は、ワークフローサーバ１２０で管理される、レイアウト情報１２２、ならびに、データ構造情報１２１の内容が反映されたアプリケーションである。
【００７５】
Ｗｅｂアプリケーション生成装置１００は、サーバ処理プログラム変換部１０１、データ構造情報取得部１０２、データモデル定義変換部１０３、データモデル定義１０４、レイアウト情報取得部１０５、入出力定義変換部１０６、入出力定義１０７、レイアウトエディタ部１０８、フィルタプログラム生成部１０９、プログラム生成部１１０を機能として保持する。
【００７６】
Ｗｅｂアプリケーション生成装置１００のプログラム生成部１１０は、アプリケーションで使用する項目となるデータモデル定義１０４や、アプリケーション画面の入出力定義１０７の定義情報をもとに、その定義情報の値をパラメータとして、Ｗｅｂアプリケーションを生成するのに必要となるソースコードのテンプレートに当てはめ、Ｗｅｂアプリケーションの処理についてはＷｅｂサービスコードを読み込み、スタブコードを作成することによって、Ｗｅｂアプリケーション１６０を生成する。そして、生成したＷｅｂアプリケーション１６０をＷｅｂアプリケーションサーバ１７０に配置する。
【００７７】
利用者端末１４０は、ワークフローシステム１でワークフロー処理を行うための端末である。利用者端末１４０には、モバイル端末である利用者端末１４０ａと、ＰＣである利用者端末１４０ｂの２種類の種別の端末が存在する。
【００７８】
なお、ワークフローサーバ１２０のフィルタ処理部１２５は、利用者端末１４０に対し、クライアントアプリケーション１５０またはＷｅｂアプリケーション１６０の画面を返すことによって、利用者端末１４０のワークフローシステム１へのアクセスを可能にする。
【００７９】
すなわち、フィルタ処理部１２５は、利用者端末１４０ａからアクセスを受け付けた場合は、Ｗｅｂアプリケーションサーバ１７０のＷｅｂアプリケーション１６０にアクセスさせ、利用者端末１４０ｂからアクセスを受け付けた場合は、利用者端末１４０ｂに存在するクライアントアプリケーション１５０にアクセスさせる。
【００８０】
また、その生成されたＷｅｂアプリケーション１６０からワークフローデータベース１３０のデータへアクセス可能とするために（図１でいうとワークフローシステム１を使用可能とするために）、サーバ処理プログラム変換部１０１は、ワークフロー処理部１２３の既存の処理をＷｅｂサービスとして公開し、ＷＳインタフェース１２４を作成する。
【００８１】
以下、図３の各部（各機能）の詳細について説明する。
【００８２】
＜＜処理機能のＷｅｂサービスとしての公開処理＞＞
まず、Ｗｅｂアプリケーション１６０から、ワークフローサーバ１２０のワークフロー処理部１２３に存在する既存の処理機能（ワークフローシステム１である場合は、起案、承認等の処理）を呼び出せるようにＷｅｂサービスとして公開するための処理について説明する。
【００８３】
サーバ処理プログラム変換部１０１は、ワークフロー処理部１２３に対して、外部からＷｅｂサービス経由でアクセスできるように、ワークフロー処理部１２３のソースの処理内容をＷＳインタフェース１２４に変換生成する。
【００８４】
図４は、Ｗｅｂサービス変換処理を示すフローチャートである。なお、図４の処理は、Ｗｅｂアプリケーション生成装置１００のサーバ処理プログラム変換部１０１が行うこととする。
【００８５】
Ｓ２０１において、Ｗｅｂアプリケーション生成装置１００のＣＰＵ２０１（サーバ処理プログラム変換部１０１）は、ワークフローサーバ１２０のワークフロー処理部１２３に記載してある、ワークフロー処理を行うためのソースコードファイルを取得する。なお、ワークフロー処理を行っているソースコードファイルの指定は開発者が行う。例えば、図５（ａ）に図示するソースコードファイル３０１の指定を行うこととする。
【００８６】
次に、Ｓ２０２において、Ｗｅｂアプリケーション生成装置１００のＣＰＵ２０１（サーバ処理プログラム変換部１０１）は、開発者によって指定されたソースコードファイルの構文解析を行う。
【００８７】
次に、Ｓ２０３において、Ｗｅｂアプリケーション生成装置１００のＣＰＵ２０１（サーバ処理プログラム変換部１０１）は、Ｓ２０１で取得したソースコードのコピーを受け付け、コピーしたソースコードに対するＷｅｂサービス公開用のアノテーションの記述の追加を受け付ける（図５（ｂ）の３０３、３０４、３０５）。
【００８８】
図５に、ソースコード変換の一例を示す。図５（ａ）のソースコードファイル３０１は、変換前のソースコードである。なお、この例ではＪａｖａ（登録商標）言語を例にしているが、任意の言語において、変換処理は可能である。図５（ｂ）のソースコードファイル３０２は、ソースコードファイル３０１に対して、Ｗｅｂサービスとして公開するためのＪａｖａ（登録商標）言語用の記述として、アノテーションを追加したソースコードである。図５（ｂ）の３０４および３０５で、アノテーションを示す。なお、３０３はアノテーションを利用するための、インポート宣言である。
【００８９】
次に、Ｓ２０４において、Ｗｅｂアプリケーション生成装置１００のＣＰＵ２０１（サーバ処理プログラム変換部１０１）は、この変換したソースコードに対するＷｅｂサービス処理コードを生成し、Ｓ２０５において、どのようなＷｅｂサービスが存在し、その中にどのようなオペレーションが存在し、そのオペレーションにはどの引数を渡せばよいかが記述されているＷＳＤＬ（Ｗｅｂ  Ｓｅｒｖｉｃｅｓ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ）を生成する。図２０にＷＳＤＬを例示する。なお、Ｗｅｂサービス処理コードとＷＳＤＬは、例えば、ＷＳＧＥＮというコマンドを実行することによって、生成することが可能であることとする。
【００９０】
最後に、Ｓ２０６において、Ｗｅｂアプリケーション生成装置１００のＣＰＵ２０１（サーバ処理プログラム変換部１０１）は、Ｗｅｂサービスをネットワークからアクセスできるように、Ｗｅｂサービス処理コードとＷＳＤＬを公開する。なお、Ｗｅｂアプリケーション生成装置１００のＣＰＵ２０１（サーバ処理プログラム変換部１０１）は、公開されたＷｅｂサービス処理コードとＷＳＤＬが使用されるようにするために、Ｗｅｂサービス処理コードおよびＷＳＤＬを、ＷＳインタフェース１２４に配備する。
【００９１】
以上の方法により、既存のクライアントアプリケーションから呼び出される処理を新たに開発することなく、Ｗｅｂサービスインタフェースを介して処理できるＷｅｂアプリケーションを構築することが可能になる。
【００９２】
なお、このワークフロー処理部１２３によって、本発明に係る「前記クライアントアプリケーションからのリクエストに応じて前記サーバが行う処理情報」の一例が構成されている。
【００９３】
また、このＳ２０１〜２０６によって、本発明に係る「前記処理情報をＷｅｂアプリケーションから呼び出し可能にするためのＷｅｂサービスを作成するＷｅｂサービス作成手段」の一例が構成されている。
【００９４】
＜＜データ構造情報のデータモデル定義への変換処理＞＞
続いて、アプリケーションを構成するのに必要となる、ワークフローサーバ１２０における項目データ（データ構造情報１２１）をＷｅｂアプリケーション生成装置１００側のデータ構造（データモデル定義１０４）に変換する処理について説明する。
【００９５】
データ構造情報取得部１０２は、ワークフローサーバ１２０が保持する、ワークフローシステム１において起案される案件のデータ構造であるデータ構造情報１２１を取得する。
【００９６】
なお、このデータ構造情報取得部１０２によって、本発明に係る「前記設計情報記憶手段に記憶された前記データ構造情報を前記サーバから受信するデータ構造情報受信手段」の一例が構成されている。
【００９７】
ここで、ワークフローサーバ１２０が保持するデータ構造情報１２１について説明する。
【００９８】
図６は、ワークフローサーバ１２０が保持するデータ構造情報１２１をＧＵＩの編集画面で表示している一例を示す図である。データ構造情報１２１を定義する場合、図６に示すようなＧＵＩ画面（データ構造情報ＧＵＩ画面４００）を利用することによって行うことができる。また、データそのものはＸＭＬファイルで管理されることが多い。
【００９９】
図７は、図６に示すデータ構造情報ＧＵＩ画面４００で編集した結果をＸＭＬ形式のデータで保存した例を示す図である。データ構造情報ＧＵＩ画面４００で編集したデータ構造情報１２１は、ＸＭＬファイル５１０として保存されている。
【０１００】
項目ＩＤ４０１は、ＸＭＬファイル５１０のschemaItem要素のid属性５１１に保存されている。項目名４０２は、ＸＭＬファイル５１０のschemaItem要素のname属性５１２に保存されている。属性４０３は、ＸＭＬファイル５１０のschemaItem要素のtype属性５１３に保存されている。文字数４０４は、ＸＭＬファイル５１０のschemaItem要素のlength属性５１４に保存されている。小数４０５は、ＸＭＬファイル０１のschemaItem要素のpoint属性５１５に保存されている。主キー情報（不図示）は、ＸＭＬファイル５１０のschemaItem要素のpkey属性５１６に保存されている。NULL可の情報（不図示）は、ＸＭＬファイル５１０のschemaItem要素のnullEnable属性５１７に保存されている。
【０１０１】
データ構造情報ＧＵＩ画面４００では属性４０３は文字や数値といった名称で表示されているのに対し、ＸＭＬファイル５１０では００や０１といった値で保存されている。これは、データ構造情報ＧＵＩ画面４００が値によって、表示を変更しているためである。
【０１０２】
以上が、ワークフローサーバ１２０が保持するデータ構造情報１２１の一例の説明である。
【０１０３】
なお、このデータ構造情報１２１によって、本発明に係る「クライアントアプリケーションで使用されるデータ項目の情報であるデータ構造情報」の一例が構成されている。
【０１０４】
データモデル定義変換部１０３は、データ構造情報取得部１０２が取得したデータ構造情報１２１を、データ構造情報ＸＭＬタグルール６１０及びデータ構造情報値変換ルール７１０を参照して、データモデル定義１０４に変換する。
【０１０５】
図８は、図７の５１０示したＸＭＬ形式で管理されたデータ構造情報１２１を、図１１の９１０に示すデータモデル定義１０４の定義に変換するためのルールを示したテーブルの一例である。図８のテーブルを、データ構造情報ＸＭＬタグルール６１０と呼ぶ。データ構造情報ＸＭＬタグルール６１０は、図１１の各データモデル定義１０４（例えば、９１１、９１２等）に定義する値が、図７のデータ構造情報１２１のどのＸＭＬのタグが参照する値から取得するかについて表形式で管理する。
【０１０６】
ＩＤ６００は、各項目種別６０１をＩＤで管理する。項目種別６０１は、図１１に示すデータモデル定義１０４（例えば、９１１、９１２等）に定義する値を示す。また、ＸＭＬタグルール６０２は、項目種別６０１のデータモデル定義１０４に設定する値を取得してくる場所を、図７のＸＭＬ形式で管理されたデータ構造情報１２１の階層における位置で示す。
【０１０７】
図１１は、Ｗｅｂアプリケーション生成装置１００におけるデータモデル定義１０４の定義画面９１０の一例を示す図である。図１１は、図７のデータ構造情報１２１（ＸＭＬファイル５１０）を、Ｗｅｂアプリケーションを構築する際の画面定義に必要となるデータモデル定義１０４へ変換した例である。
【０１０８】
なお、このデータモデル定義１０４によって、本発明に係る「Ｗｅｂアプリケーションで使用されるデータ項目の情報であるデータモデル定義」の一例が構成されている。
【０１０９】
図８の説明に戻る。図８のＩＤ６００＝１の項目種別６０１にはＤＭ＿ＩＴＥＭ＿ＣＯＤＥの値がある。この値はデータモデル定義１０４の定義画面９１０の項目コード９１１を指す。図８において、このＤＭ＿ＩＴＥＭ＿ＣＯＤＥに対応するＸＭＬタグルール６０２はschemaDefinition.schema.schemaItem.idとなっている。これは、図１１のデータモデル定義１０４の項目コード９１１の値は、図７の<schemaDefinition>の子要素<schema>の子要素<schemItem>の属性であるidの値を使用するというルールを示している。
【０１１０】
同様に、図８のＩＤ６００＝２の項目種別６０１の値であるＤＭ＿ＩＴＥＭ＿ＮＡＭＥは、データモデル定義１０４の定義画面９１０の名前９１２を指し、これに該当する図１１のデータモデル定義１０４の名前９１２の値は、図７の<schemaDefinition>の子要素<schema>の子要素＜schemaItem＞要素の属性であるnameの値を使用するというルールを示している。このように、データモデル定義１０４とデータ構造情報１２１との値の関係性は決まる。
【０１１１】
つまり、図１１の９１１には図７の５１１の値が、図１１の９１２には図７の５１２の値が、図１１の９１３には図７の５１７の値が、図１１の９１４には図７の５１６の値が、図１１の９１５には図７の５１４の値が、図１１の９１６には図７の５１５の値が、図１１の９１７には図７の５１３値が、データモデル定義変換部１０３によって変換されて登録される。
【０１１２】
データモデル定義変換部１０３は、この変換を図７のデータ構造情報１２１の全てのschemaItemの情報に対して行うことで、図１１の定義画面９１０で表示されるデータモデル定義１０４とすることができる。
【０１１３】
なお、データ構造情報１２１の値を図８のルールに従って、データモデル定義１０４の値とする場合に、更なる関係性の定義が必要な場合もある。
【０１１４】
例えば、図８のＩＤ６００＝５の項目種別６０１の値であるＤＭ＿ＩＴＥＭ＿ＴＹＰＥは、図１１のデータモデル定義１０４のデータタイプ９１７を指し、その値は、ＴＥＸＴ  テキスト型、ＮＵＭ  数値型などである。一方、図７のデータ構造情報１２１での対応する値（図７の５１３のtype）は、００、０１などの値である。
【０１１５】
このような場合には、図９の例に示す変換テーブルを定義する必要となる。図９は、データ構造情報１２１における値がデータモデル定義１０４へ移行できないときの変換ルールを定義した、データ構造情報値変換ルール７１０のテーブルである。例えば、図９のＸＭＬ値７０１において００の値の、データモデル定義１０４におけるデータモデル−データタイプ７０２の値は、ＴＥＸＴ（図１１の９１７の表示においては、ＴＥＸＴ  テキスト型）となる。
【０１１６】
これにより、クライアントアプリケーションのデータ構造情報を、Ｗｅｂアプリケーションを生成する際に利用するデータモデル定義に適切に変換することができる。
【０１１７】
図１０に、以上の説明をまとめた、データモデル定義変換部１０３が、データ構造情報１２１からデータモデル定義１０４を作成するフローチャートを示す。
【０１１８】
Ｓ８０１において、Ｗｅｂアプリケーション生成装置１００のＣＰＵ２０１（データモデル定義変換部１０３）は、データ構造情報取得部１０２がワークフローサーバ１２０から取得したデータ構造情報１２１を読み込む。
【０１１９】
Ｓ８０２において、Ｗｅｂアプリケーション生成装置１００のＣＰＵ２０１（データモデル定義変換部１０３）は、図８に示すデータ構造情報ＸＭＬタグルール６１０および図９に示すデータ構造情報値変換ルール７１０を参照する。
【０１２０】
Ｓ８０３において、Ｗｅｂアプリケーション生成装置１００のＣＰＵ２０１（データモデル定義変換部１０３）は、Ｓ８０１で取得したデータ構造情報１２１とＳ８０２で参照した各ルールとから、データモデル定義１０４（又はそのファイル）を作成し、Ｗｅｂアプリケーション生成装置１００の外部メモリ２１１に記憶する。なお、記憶先は不図示の内蔵ハードディスクや、外部ハードディスクであっても良いこととする。
【０１２１】
Ｓ８０１からＳ８０３の処理は、取得したデータ構造情報１２１に存在する項目ごとに行うこととする。
【０１２２】
以上で、データモデル定義１０４の作成に関する説明を完了する。
【０１２３】
なお、このＳ８０１〜Ｓ８０３によって、本発明に係る「前記データ構造情報受信手段より受信した前記データ構造情報を、前記Ｗｅｂアプリケーションで使用されるデータ項目の情報であるデータモデル定義として記憶するデータモデル定義記憶手段」の一例が構成されている。
【０１２４】
＜＜レイアウト情報の入出力定義への変換処理＞＞
続いて、アプリケーションを構成するのに必要となる、ワークフローサーバ１２０における画面のレイアウトの情報（レイアウト情報１２２）をＷｅｂアプリケーション生成装置１００側の画面のレイアウトの情報（入出力定義１０７）に変換する処理について説明する。
【０１２５】
レイアウト情報取得部１０５は、ワークフローサーバ１２０が保持するレイアウト情報１２２を取得する。
【０１２６】
なお、このレイアウト情報取得部１０５によって、本発明に係る「前記設計情報記憶手段に記憶された前記レイアウト情報を前記サーバから受信するレイアウト情報受信手段」することの一例が構成されている。
【０１２７】
図１２は、ワークフローサーバ１２０が保持するレイアウト情報１２２をＧＵＩの編集画面で表示している一例を示す図である。
【０１２８】
ワークフロー処理の画面レイアウトを定義する場合、図１２に示すようなＧＵＩ画面（レイアウト情報ＧＵＩ画面１０００）を利用することが多い。また、画面のレイアウト定義そのものはＸＭＬファイルで管理されることが多い。
【０１２９】
図１３は、レイアウト情報ＧＵＩ画面１０００で編集した結果をＸＭＬ形式のデータで保存した例を示す図である。レイアウト情報ＧＵＩ画面１０００で編集したレイアウト情報１２２は、レイアウト情報ＸＭＬ（ファイル）１１００として保存されている。
【０１３０】
例えば、図１２のレイアウト情報ＧＵＩ画面１０００に部品として登録されている注文番号フィールド１００１は、図１３のレイアウト情報ＸＭＬ１１００では、１１０１で示したfield要素の属性であるidがＯＲＤＥＲ＿ＮＯとなっているタグ要素とその子要素として保存されている。
【０１３１】
同様に、図１２の優先度フィールド１００２は、図１３の１１０２で示したfield要素の属性であるidがＰＲＩＯＲＩＴＹとなっているタグ要素とその子要素として保存されている。
【０１３２】
なお、このレイアウト情報１２２によって、本発明に係る「前記データ構造情報が前記クライアントアプリケーションで使用される時の属性情報を定義したレイアウト情報」の一例が構成されている。また、データ構造情報１２１、レイアウト情報１２２、及び、ワークフロー処理部１２３によって、本発明に係る「設計情報記憶手段」の一例が構成されている。
【０１３３】
入出力定義変換部１０６は、レイアウト情報取得部１０５が取得したレイアウト情報１２２を、レイアウト情報ＸＭＬタグルール１２１０及びレイアウト情報値変換ルール１３１０を参照して、入出力定義１０７に変換する。
【０１３４】
図１４は、レイアウト情報１２２とＷｅｂアプリケーション生成装置１００の図１７で定義される入出力定義１０７との関係性を示したテーブルの一例である。図１４のテーブルを、レイアウト情報ＸＭＬタグルール１２１０と呼ぶ。レイアウト情報ＸＭＬタグルール１２１０は、図１７で定義される入出力定義１０７に定義する値とレイアウト情報ＸＭＬ１１００のタグが参照する値との関係を表形式で管理する。
【０１３５】
ＩＤ１２００は、各項目種別１２０１をＩＤで管理する。項目種別１２０１は図１７の入出力定義１０７で定義される項目を示す。ＸＭＬタグルール１２０２は、項目種別１２０１で管理される入出力定義１０７に設定する値を取得してくる場所を、図１３のＸＭＬ形式で管理されたレイアウト情報１２２の階層における位置で示す。
【０１３６】
図１７は、Ｗｅｂアプリケーション生成装置１００における入出力定義１０７の定義画面１５００の一例を示す図である。なお、図１７の入出力定義１０７の定義画面１５００は、図１３のレイアウト情報ＸＭＬ１１００（レイアウト情報１２２）を、Ｗｅｂアプリケーション生成装置１００の入出力定義１０７へ変換した状態で表示している例である。
【０１３７】
なお、この入出力定義１０７によって、本発明に係る「前記Ｗｅｂアプリケーションで使用される時の属性情報を定義した定義情報である入出力定義」の一例が構成されている。
【０１３８】
図１４の説明に戻る。図１４のＩＤ１２００＝１の項目種別１２０１にはＩＯ＿ＩＴＥＭ＿ＣＯＤＥの値がある。この値は、図１７の入出力定義１０７の定義画面１５００の項目コード１５０１を指す。図１４において、このＩＯ＿ＩＴＥＭ＿ＣＯＤＥに対応するＸＭＬタグルール１２０２はformDefinition.page.elements.field.idとなっている。これは、図１７の入出力定義１０７の項目コード１５０１の値は、図１３の<formDefinition>の子要素<page>の子要素<elements>の子要素<field>の属性であるidの値を使用するというルールを示している。
【０１３９】
同様に、図１４のＩＤ１２００＝２の項目種別１２０１の値であるＩＯ＿ＩＴＥＭ＿ＮＡＭＥは、図１７の入出力定義１０７の定義画面１５００の名前１５０２を指し、これに該当する入出力定義１０７の名前１５０２の値は、図１３の<formDefinition>の子要素<page>の子要素<elements>の子要素<field>要素の子要素<label>の値を使用するというルールを示している。このように、レイアウト情報１２２と入出力定義１０７との値の関係性は決まる。
【０１４０】
なお、レイアウト情報１２２の値を図１４のルールに従って、入出力定義１０７の値とする場合に、更なる関係性の定義が必要な場合もある。
【０１４１】
例えば、図１４のＩＤ１２００＝３の項目種別１２０１の値であるＩＯ＿ＩＴＥＭ＿ＴＹＰＥは、図１７の入出力定義１０７の項目タイプ１５０３を指し、その値は、Ｏ  出力、ＩＯ  入出力などである。一方、図１３のレイアウト情報１２２での対応する値（図１３の<editable>タグの値）は、true、falseなどである。
【０１４２】
そのため、この変換を定義する必要があり、その一例を図１５に示す。図１５は、レイアウト情報１２２の値（図１３の<editable>タグの値）と入出力定義１０７の項目タイプ１５０３との関係性を定義した、レイアウト情報値変換ルール１３１０のテーブルである。例えば、レイアウト情報値変換ルール１３１０において、ＸＭＬ値１３０１がfalseの場合は、項目タイプ１３０２はＯとなっているので、図１３のレイアウト情報１２２のＸＭＬにおける<editable>タグの値がfalseの場合の、図１７の入出力定義１０７における項目タイプ１５０３の値は、Ｏ出力となる。
【０１４３】
これにより、クライアントアプリケーションのレイアウト情報を、Ｗｅｂアプリケーションを生成する際に利用する入出力定義に適切に変換することができる。
【０１４４】
図１６に、以上の説明をまとめた、入出力定義変換部１０６が、（ネイティブ型の）クライアントアプリケーション側のレイアウト情報１２２より、Ｗｅｂアプリケーションを構築するのに必要となる入出力定義１０７を作成するフローチャートを示す。
【０１４５】
Ｓ１４０１において、Ｗｅｂアプリケーション生成装置１００のＣＰＵ２０１（入出力定義変換部１０６）は、レイアウト情報取得部１０５がワークフローサーバ１２０から取得したレイアウト情報１２２を読み込む。
【０１４６】
Ｓ１４０２において、Ｗｅｂアプリケーション生成装置１００のＣＰＵ２０１（入出力定義変換部１０６）は、図１４に示すレイアウト情報ＸＭＬタグルール１２１０および図１５に示すレイアウト情報値変換ルール１３１０を参照する。
【０１４７】
Ｓ１４０３において、Ｗｅｂアプリケーション生成装置１００のＣＰＵ２０１（入出力定義変換部１０６）は、図１４のレイアウト情報ＸＭＬタグルール１２１０と、図１５のレイアウト情報値変換ルール１３１０に基づき、レイアウト情報１２２から入出力定義１０７（又はそのファイル）を作成し、Ｗｅｂアプリケーション生成装置１００の外部メモリ２１１に記憶する。なお、記憶先は不図示の内蔵ハードディスクや、外部ハードディスクであっても良いこととする。
【０１４８】
Ｓ８０１からＳ８０３の処理は、取得したレイアウト情報１２２に存在するレイアウト情報ごとに行うこととする。
【０１４９】
以上で、入出力定義１０７の作成に関する説明を完了する。
【０１５０】
なお、このＳ１４０１〜Ｓ１４０３によって、本発明に係る「前記レイアウト情報受信手段より受信した前記レイアウト情報を、前記Ｗｅｂアプリケーションで使用される時の属性情報を定義した定義情報である入出力定義として記憶する入出力定義記憶手段」の一例が構成されている。
【０１５１】
＜＜レイアウトエディタによるレイアウト調整及び処理の呼び出しの定義＞＞
レイアウトエディタ部１０８は、作成した入出力定義１０７を読み込み、レイアウトの調整、及び、ワークフロー処理部１２３が保持する処理を呼び出すための定義の配置を受け付け、受け付けた結果を、入出力定義１０７に反映する。
【０１５２】
図１８に、レイアウトエディタ部１０８のレイアウトエディタＧＵＩ画面１６００の一例を示す。レイアウトエディタ部１０８は、入出力定義１０７の内容を読み取り、レイアウトエディタＧＵＩ画面１６００で表示することが可能である。また、レイアウトエディタ部１０８により、配置済みのフィールド項目については、レイアウト位置を変更する、ラベル名を変更する、削除するといった編集操作が可能である。また、レイアウトエディタ部１０８により、レイアウトエディタＧＵＩ画面１６００内に新規に項目を配置することによって、新たな項目を追加することも可能とする。また、レイアウトエディタ部１０８により、図１８の１６０１に示す操作ボタンに対して、ワークフローの処理を呼び出す定義を行うことができる。この定義については、次に述べる。
【０１５３】
続いて、アプリケーションを構成するのに必要となる、ワークフローサーバ１２０における処理ロジックをＷｅｂアプリケーション生成装置１００側の処理ロジックに変換する処理について説明する。
【０１５４】
図１９は、処理定義の定義画面１７００の一例である。図１９は、図１８のレイアウトエディタＧＵＩ画面１６００において、承認１６０１で示す操作ボタンに対して、ＷＳインタフェース１２４を介して、ワークフロー処理部１２３が保持する処理を呼び出すための定義をする際に表示される定義画面である。なお、ワークフロー処理部１２３が保持する処理とは、ワークフローシステム１の場合は起案、承認などの処理であるが、クライアントアプリ側をワークフローシステム１としない場合は、起案、承認の処理に限られない。
【０１５５】
また、このボタンの定義は、図１７の入出力定義１０７を管理する定義画面１５００において、項目タイプ１５０３においてアクション（アクション定義）として管理することが可能な項目であることとする（例えば、図１７の１５０４）。
【０１５６】
一例として、図１９の承認ボタン１７０１に対し、加工式１７０２に「ExecuteCaseWS#approveCase」と定義している。これは、図５のソースコードファイル３０２の例に示すExcecuteCaseWSクラス（図５の３０４）のapproveCaseメソッド（図５の３０５）を呼び出すための定義となる。
【０１５７】
開発者は定義に際して、図４のＳ２０５のステップで生成した図２０のＷＳＤＬ１８００の指定箇所（図２０の１８０１および１８０２）を確認することで、定義すべき内容を決定する。
【０１５８】
つまり、図１９の加工式１７０２は、どのＷｅｂサービスのどのオペレーションを起動するかを記載している（ExecuteCaseWSはＷｅｂサービス、approveCaseはオペレーション名）箇所であって、加工式１７０２のExecuteCaseWSは、図２０のＷＳＤＬ１８００の１８０１の情報、加工式１７０２のapproveCaseは、図２０のＷＳＤＬ１８００の１８０２の情報を確認することによって定義可能となる。
【０１５９】
以上の方法により、既存のクライアントアプリケーションから呼び出される処理を新たに開発することなく、サーバが処理を行う機能である処理情報を、起動する操作ボタンに設定することで、Ｗｅｂサービスインタフェースを介して処理できるＷｅｂアプリケーションを構築することが可能になる。
【０１６０】
なお、この図１９の１７０２よって、本発明に係る「Ｗｅｂサービス作成手段により作成した前記Ｗｅｂサービスにより既存の前記処理情報を処理可能にするための定義情報」の一例が構成されている。
【０１６１】
＜＜Ｗｅｂアプリケーションの生成処理＞＞
プログラム生成部１１０は、データモデル定義１０４および入出力定義１０７を読み込み、Ｗｅｂアプリケーション１６０を生成する。図２１は、プログラム生成部１１０がデータモデル定義１０４および入出力定義１０７を読み込み、Ｗｅｂアプリケーション１６０を生成する処理を示すフローチャートである。
【０１６２】
Ｓ１９０１において、Ｗｅｂアプリケーション生成装置１００のＣＰＵ２０１（プログラム生成部１１０）は、ワークフローサーバ１２０が公開するＷＳＤＬを読み込む。
【０１６３】
Ｓ１９０２において、Ｗｅｂアプリケーション生成装置１００のＣＰＵ２０１（プログラム生成部１１０）は、ワークフロー処理部１２３のＷｅｂサービスを呼び出すためにＷｅｂアプリケーション１６０に保持するスタブコードを生成する。
【０１６４】
Ｓ１９０３において、Ｗｅｂアプリケーション生成装置１００のＣＰＵ２０１（プログラム生成部１１０）は、データモデル定義１０４を読み込む。さらにＳ１９０４において、Ｗｅｂアプリケーション生成装置１００のＣＰＵ２０１（プログラム生成部１１０）は、入出力定義１０７を読み込む。
【０１６５】
Ｓ１９０５において、Ｗｅｂアプリケーション生成装置１００のＣＰＵ２０１（プログラム生成部１１０）は、読み込んだデータモデル定義１０４と入出力定義１０７をメモリ内にオブジェクトに変換して取り込み、定義の解析処理を行う。
【０１６６】
Ｓ１９０６において、Ｗｅｂアプリケーション生成装置１００のＣＰＵ２０１（プログラム生成部１１０）は、Ｗｅｂアプリケーション生成装置１００が保持するソースコードテンプレートをメモリ内に読み込む。
【０１６７】
Ｓ１９０７において、Ｗｅｂアプリケーション生成装置１００のＣＰＵ２０１（プログラム生成部１１０）は、Ｓ１９０３において読み込んだデータモデル定義１０４とＳ１９０４において読み込んだ入出力定義１０７とから抽出した定義情報、および、Ｓ１９０６で読み込んだソースコードテンプレートを利用し、ソースコード生成処理を行う。
【０１６８】
つまり、Ｗｅｂアプリケーション生成装置１００のＣＰＵ２０１（プログラム生成部１１０）は、Ｓ１９０３からＳ１９０７の処理では、Ｗｅｂアプリケーション生成装置１００に定義として存在する、図１１（データモデル定義１０４）、図１７（入出力定義１０７）、図１９（入出力定義１０７で定義されたアクション定義の情報）で設定された情報をもとに、Ｗｅｂアプリケーション１６０を動作させるのに必要となるソースコードを生成することになる。なお、ソースコードにより生成されるＷｅｂアプリケーション１６０は、利用者端末１４０からワークフローサーバ１２０へアクセス可能とする。
【０１６９】
このように、図２１の処理においては、Ｗｅｂアプリケーション１６０を動作させるために必要となる、スタブコード（Ｓ１９０２）と、Ｗｅｂアプリケーションのソースコード（Ｓ１９０７）を生成したということになる。
【０１７０】
以上で、図２１のＷｅｂアプリケーション１６０を生成するフローチャートの説明を完了する。
【０１７１】
なお、図２１のＳ１９０１〜１９０７によって、本発明に係る「前記データモデル定義と、前記入出力定義と、前記Ｗｅｂサービス作成手段により作成した前記Ｗｅｂサービスにより既存の前記処理情報を処理可能にするための定義情報と、を用いることにより、Ｗｅｂアプリケーションを生成する生成手段」の一例が構成されている。
【０１７２】
＜＜フィルタプログラムの生成処理＞＞
続いて、ワークフローサーバ１２０に利用者端末１４０からアクセスがあった場合に、利用者端末１４０の端末の種別に応じて、利用者端末１４０の表示画面に表示する画面のプログラムを切り替えるために必要となるフィルタプログラムの生成処理について説明する。
【０１７３】
なお、利用者端末１４０がモバイル端末である場合は、ＰＣによる処理を前提として構築されたクライアントアプリケーションを介してワークフローデータベース１３０にある処理対象のデータへアクセスすることが出来ないため、利用者端末１４０の端末の種別に応じて、クライアントアプリケーション１５０、または、Ｗｅｂアプリケーション１６０を操作可能に切り替えるためのプログラム生成処理が必要となる。
【０１７４】
図２２は、利用者端末１４０によってワークフローサーバ１２０にアクセスが行われた場合に、ワークフローサーバ１２０のフィルタ処理部１２５が呼び出すアプリケーションを振り分けるために必要となるフィルタ設定情報２０１０が登録されているテーブルの一例である。
【０１７５】
フィルタ設定情報２０１０によって、ワークフローサーバ１２０に対してＰＣからアクセスされたときは、クライアントアプリケーション１５０を呼び出す、あるいは、モバイル端末からアクセスされたときはＷｅｂアプリケーション１６０を呼び出す、といったように、利用者端末１４０の種別に応じて、呼び出すアプリケーションを切り替えることができる。
【０１７６】
図２２のフィルタ設定情報２０１０は、ワークフローシステム１の処理画面へアクセスするためのＵＲＬを管理している。ＩＤ２０００は、各ワークフローシステム１における各処理画面をＩＤで管理する。処理画面２００１は、ワークフローシステム１における各処理画面の名称が管理される。クライアントアプリケーション２００２は、利用者端末１４０からアクセスされた場合のＵＲＬが各処理画面２００１ごとに管理される。Ｗｅｂアプリケーション２００３は、モバイル端末からアクセスされた場合にＷｅｂアプリケーション画面への表示へ切り替えるためのＵＲＬが各処理画面２００１ごとに管理される。
【０１７７】
なお、この図２２によって、本発明に係る「前記サーバは、前記判定手段により、前記サーバが前記モバイル端末からアクセスを受け付けたと判定した場合に表示するＷｅｂアプリケーションのＵＲＬと、前記クライアントアプリケーションのＵＲＬとを対応づけた対応テーブルを記憶するフィルタ設定情報記憶手段」の一例が構成されている。
【０１７８】
これにより、サーバは、ＷｅｂアプリケーションのＵＲＬと、前記クライアントアプリケーションのＵＲＬとを対応づけたフィルタ設定情報を利用することができる。
【０１７９】
なお、クライアントアプリケーション２００２のみＵＲＬが記述されている場合があるが、これは、運用上、ワークフローの処理をＰＣからのアクセスのみを想定し、モバイルからのアクセスは想定していない場合のケースである。
【０１８０】
この場合、仮にモバイル端末からのアクセスがあった場合、まず、モバイル端末においては、クライアントアプリケーション１５０を呼び出すことは不可能となる。
【０１８１】
また、クライアントアプリケーション２００２において、モバイルから送信されたＵＲＬに該当するＵＲＬが存在したとしても、それに対応するＷｅｂアプリケーション２００３のＵＲＬの情報が存在しないため、Ｗｅｂアプリケーション１６０は呼び出すことは出来ない（フィルタ設定情報２０１０のＩＤ２０００＝１及びＩＤ２０００＝３並びに図２４のＳ２２０６でＮｏの場合）。
【０１８２】
なお、ＰＣ等の端末、或いは、モバイル端末である利用者端末１４０からアクセスがされた場合に送信してきたＵＲＬが、クライアントアプリケーション２００２に存在しない場合は、対応する処理画面２００１をＰＣから呼び出せないということになる。
【０１８３】
フィルタプログラム生成部１０９は、ワークフローサーバ１２０のフィルタ処理部１２５に対して、埋め込むフィルタプログラムを生成する。
【０１８４】
図２３は、フィルタプログラム生成部１０９のフィルタプログラムの生成処理の一例を示すフローチャートである。
【０１８５】
このフィルタプログラムは、利用者端末１４０からワークフローサーバ１２０へアクセスした時に、ワークフローサーバ１２０へ渡されるリクエスト情報（アクセス先のＵＲＬ情報、アクセス元の端末情報を含む）から、リクエスト情報として渡されたＵＲＬの情報に基づくプログラムで表示するのか、それとも、別のＵＲＬに基づくプログラムで表示するのかを切り替える処理を行う。なお、このフィルタプログラムの処理については、図２４で説明を行う。
【０１８６】
図２３のＳ２１０１において、Ｗｅｂアプリケーション生成装置１００のＣＰＵ２０１（フィルタプログラム生成部１０９）は、図２２で示したフィルタ設定情報２０１０をメモリに読み込む。
【０１８７】
Ｓ２１０２において、Ｗｅｂアプリケーション生成装置１００のＣＰＵ２０１（フィルタプログラム生成部１０９）は、フィルタプログラムのためのソースコードテンプレートをメモリに読み込む。なお、ソースコードテンプレートというのは、Ｗｅｂアプリケーション生成装置１００が、アプリケーションを動作させるためのソースコードを生成するために必要となるソースコードのテンプレートことを指す。また、ソースコードテンプレートは、Ｗｅｂアプリケーション生成装置１００の外部メモリ２１１等に記憶されている。したがって、ここでは、フィルタプログラムのソースを作成するためのステップとしてソースコードテンプレートを読み込んでいるということになる。
【０１８８】
Ｓ２１０３において、Ｗｅｂアプリケーション生成装置１００のＣＰＵ２０１（フィルタプログラム生成部１０９）は、Ｓ２１０１で読み込んだフィルタ設定情報２０１０とＳ２１０２で読み込んだフィルタプログラムのためのソースコードテンプレートから、ソースコード生成処理を行う。
【０１８９】
Ｓ２１０４において、Ｗｅｂアプリケーション生成装置１００のＣＰＵ２０１（フィルタプログラム生成部１０９）は、生成したソースコードをコンパイルして、フィルタプログラムを生成する。また、Ｗｅｂアプリケーション生成装置１００のＣＰＵ２０１（フィルタプログラム生成部１０９）は、コンパイルしたソースコード（フィルタプログラム）を、ライブラリとしてアーカイブする。
【０１９０】
Ｓ２１０５において、Ｗｅｂアプリケーション生成装置１００のＣＰＵ２０１（フィルタプログラム生成部１０９）は、ワークフローサーバ１２０へアクセスするためのＵＲＬについて、コンパイルしたフィルタプログラムを経由するように記述した図２５に示すweb.xmlファイルを生成する。つまり、Ｓ２１０５で作成するweb.xmlは、ワークフローサーバ１２０へ利用者端末１４０からアクセスがあった場合に、最初にフィルタプログラムを呼び出すための設定ファイルとなる。
【０１９１】
Ｓ２１０６にて、Ｗｅｂアプリケーション生成装置１００のＣＰＵ２０１（フィルタプログラム生成部１０９）は、ライブラリ（フィルタプログラム）とweb.xmlをワークフローサーバ１２０のフィルタ処理部１２５へ配備する。
以上で、図２３の説明を完了する。
【０１９２】
なお、このフィルタプログラム生成部１０９によって、本発明に係る「前記判定手段と、前記切替手段とを備えるフィルタプログラムを生成するフィルタプログラム生成手段」の一例が構成されている。
【０１９３】
これにより、サーバは、サーバへのアクセスが端末かモバイル端末かに応じて、クライアントアプリケーションを表示するか、Ｗｅｂアプリケーションを表示するかを切り替えることができ、Ｗｅｂアプリケーション生成装置は、アクセス元の判定及び切り替えを行うフィルタプログラムを生成することができる。
【０１９４】
＜＜アプリケーションの切り替え処理＞＞
フィルタ処理部１２５は、利用者端末１４０がワークフローサーバ１２０へアクセスしワークフローシステム１を利用しようとした場合に、端末情報等に応じて、利用者端末１４０側の端末に表示されるアプリケーションの切り替えの処理を行う。
【０１９５】
続いて、図２４を用いて、フィルタ処理部１２５による利用者端末１４０側の端末に表示されるアプリケーションの切り替えの処理について説明を行う。
【０１９６】
Ｓ２２０１において、ワークフローサーバ１２０のＣＰＵ２０１（フィルタ処理部１２５）は、利用者端末１４０からのアクセスを受け付ける。
【０１９７】
Ｓ２２０２において、ワークフローサーバ１２０のＣＰＵ２０１（フィルタ処理部１２５）は、ワークフローサーバ１２０の決められた位置に配備された図２５に示すweb.xmlを参照し、フィルタプログラムを呼び出すためのＵＲＬパターン２３０１を確認する。
【０１９８】
利用者端末１４０からワークフローサーバ１２０へアクセス時に送信されるリクエスト情報の中に含まれるＵＲＬ情報（送信されるＵＲＬ情報はクライアントアプリケーションのＵＲＬ）が、そのＵＲＬパターン２３０１に合致する場合は、フィルタプログラムを呼び出すということになり、ワークフローサーバ１２０のＣＰＵ２０１（フィルタ処理部１２５）は、次のＳ２２０３への処理へ進めることになる。
【０１９９】
なお、ＵＲＬパターン２３０１が「／＊」と記載されている場合は、送信されてきたＵＲＬがどのＵＲＬパターンでもフィルタ処理を行うということになるが、例えば、ＵＲＬパターン２３０１が「／ａｐｐｒｏｖｅ０１」のように固定値が記載されている場合は、「／ａｐｐｒｏｖｅ０１」の記載を有するＵＲＬのみフィルタ処理を行うということになる。
【０２００】
Ｓ２２０３において、ワークフローサーバ１２０のＣＰＵ２０１（フィルタプログラム（フィルタ処理部１２５））は、リクエスト情報に含まれる端末情報を読み取る。端末情報には、端末がＰＣなのかモバイルなのかといった判別可能な情報が含まれる。
【０２０１】
Ｓ２２０４において、Ｓ２２０３で読み取った端末情報がＰＣと判断した場合は、Ｓ２２０５において、ワークフローサーバ１２０のＣＰＵ２０１（フィルタプログラム（フィルタ処理部１２５））は、利用者端末１４０に対し、クライアントアプリケーション１５０を表示する。
【０２０２】
これにより、サーバは、端末がリクエストしたクライアントアプリケーションの処理画面を、端末に表示させるようにすることができる。
【０２０３】
Ｓ２２０４において、Ｓ２２０３で読み取った端末情報がモバイル端末と判断した場合は、ワークフローサーバ１２０のＣＰＵ２０１（フィルタプログラム（フィルタ処理部１２５））は、Ｓ２２０６へ処理をすすめる。
【０２０４】
Ｓ２２０６において、ワークフローサーバ１２０のＣＰＵ２０１（フィルタプログラム（フィルタ処理部１２５））は、図２２のフィルタ設定情報２０１０において、Ｓ２２０１で受け付けたリクエスト情報のＵＲＬに対応する、Ｗｅｂアプリケーション１６０を表示可能とするＵＲＬが存在しているか否かを判定する。
【０２０５】
Ｓ２２０６において、ＵＲＬが存在すると判断した場合は、Ｓ２２０７において、ワークフローサーバ１２０のＣＰＵ２０１（フィルタプログラム（フィルタ処理部１２５））は、利用者端末１４０にはブラウザを介して、そのＵＲＬに該当するＷｅｂアプリケーションの画面を返す。
【０２０６】
これにより、サーバは、モバイル端末がリクエストしたクライアントアプリケーションの処理画面に対応するＷｅｂアプリケーションの処理画面がある場合には、モバイル端末にＷｅｂアプリケーションの処理画面を表示させるようにすることができる。
【０２０７】
Ｓ２２０６において、ＵＲＬが存在しないと判断した場合は、利用者端末１４０にはブラウザを介して、Ｗｅｂアプリケーション１６０の画面を表示できなくなるため、ワークフローサーバ１２０のＣＰＵ２０１（フィルタプログラム（フィルタ処理部１２５））は、本処理を終了する。
【０２０８】
ここで、Ｓ２２０３以降の処理について、例を用いて説明する。例えば、「http://wfserve01/approve01/」で利用者端末１４０からワークフローサーバ１２０へアクセスがあった場合、図２２の２００１の設定のうち、クライアントアプリケーション２００２が「/approve01/」と設定されている部分に着目する（図２２のＩＤ２０００＝２のクライアントアプリケーション２００２の値）。この設定によれば、リーダー承認の処理画面２００１については、ＰＣからのアクセスについては、クライアントアプリケーション１５０でhttp://wfserve01/approve01/のアドレスのリクエストとして、そのまま処理する（Ｓ２２０５）。つまり、利用者端末１４０に対し、http://wfserve01/approve01/のＵＲＬに対応するクライアントアプリケーション１５０のアプリケーション画面を表示する。
【０２０９】
一方、モバイルからのアクセスの場合は、Ｗｅｂアプリケーション２００３の設定があるかどうかを確認し、設定があると判断した場合（Ｓ２２０６でＹｅｓの場合）は、Ｗｅｂアプリケーション１６０の画面を表示する（Ｓ２２０７）。
【０２１０】
例えば、「http://wfserve01/approve01/」で利用者端末１４０からワークフローサーバ１２０へアクセスがあった場合、図２２のフィルタ設定情報２０１０の設定のうち、クライアントアプリケーション２００２が「/approve01/」と設定されている部分に着目する（図２２のＩＤ２０００＝２のクライアントアプリケーション２００２の値）。次に、モバイルからアクセスされた場合であるため、クライアントアプリケーション２００２に対応するＷｅｂアプリケーション２００３の値を取得する。
【０２１１】
図２２のクライアントアプリケーション２００２＝/approve01/に対応するＷｅｂアプリケーション２００３では、「http://webserve01/approve/」の値が設定されているため、モバイルからのアクセスでは利用者端末１４０に対し「http://webserve01/approve/」の画面を表示する。この場合、利用者端末１４０にはＷｅｂアプリケーション１６０で処理された画面を表示する（Ｓ２２０７）。
【０２１２】
なお、Ｓ２２０６において、モバイルからのアクセスの場合に、Ｗｅｂアプリケーション２００３のＵＲＬの設定があるかどうかを確認し、設定が無いと判断した場合（Ｓ２２０６でＮｏの場合）は、利用者端末１４０においては、Ｗｅｂアプリケーション１６０の画面を表示することは不可能とし、本処理を終了する。なお、このとき、表示不可能であるためエラー表示をしても良いこととする。
【０２１３】
なお、このフィルタ処理部１２５、及び、図２４のＳ２２０１〜Ｓ２２０４によって、本発明に係る「前記サーバの前記クライアントアプリケーションに対しアクセスを受け付けた場合にアクセス元を判定する判定手段」の一例が構成されている。また、フィルタ処理部１２５、及び、図２４のＳ２２０５によって、本発明に係る「前記判定手段により、前記サーバが端末からアクセスを受け付けたと判定した場合は、前記クライアントアプリケーションを前記端末へ表示する」ことの一例が構成されている。また、フィルタ処理部１２５、及び、図２４のＳ２２０７によって、本発明に係る「前記判定手段により、前記サーバがモバイル端末からアクセスを受け付けたと判定した場合は、前記Ｗｅｂアプリケーションの画面を前記モバイル端末へ表示する」ことの一例が構成されている。
【０２１４】
また、図２２の「ＩＤ＝２」、及び、図２４のＳ２２０６がＹｅｓの場合、によって、本発明に係る「前記切替手段は、前記アクセス元のモバイル端末がリクエスト情報として前記サーバに送信した前記クライアントアプリケーションのＵＲＬに対応する、前記Ｗｅｂアプリケーションを表示するためのＵＲＬが前記フィルタ設定情報記憶手段に存在する場合」の一例が構成されている。また、図２４のＳ２２０７によって、本発明に係る「前記アクセス元のモバイル端末に当該Ｗｅｂアプリケーションを表示するＵＲＬに対応する前記Ｗｅｂアプリケーションを表示する」ことの一例が構成されている。
【０２１５】
以上、第１の実施形態により、既存のクライアントアプリケーションから呼び出される処理を新たに開発することなく、サーバが処理を行う機能である処理情報を、起動する操作ボタンに設定することで、Ｗｅｂサービスインタフェースを介して処理できるＷｅｂアプリケーションを生成するＷｅｂアプリケーション生成システムを提供することが可能になる。
【０２１６】
＜第２の実施形態＞
続いて、第２の実施形態について説明する。
【０２１７】
第２の実施形態においては、ワークフロー処理部１２３に存在する、ワークフローサーバ１２０上で起案されたデータをワークフローシステム１で配送させる処理を可能とする、承認処理、起案処理などの処理が、Ｗｅｂサービスとして既に公開されて、さらに、フィルタプログラムが既に存在し、Ｗｅｂアプリケーション生成装置１００が設計情報としてデータ構造情報１２１のみをワークフローサーバ１２０から受け取る、という状態によって（他の方法については第１の実施形態と同様の処理）、Ｗｅｂアプリケーションを生成する方法について説明をする。なお、第２の実施形態においては、利用者端末１４０がアクセスするシステムは、ワークフロー処理を行うシステム（ワークフローシステム１）であることとする。
【０２１８】
まず、ワークフロー処理部１２３の処理を呼び出すためのＷＳインタフェース１２４が存在している場合、サーバ処理プログラム変換部１０１の処理である図４の処理は行わなくて良いことになる。したがって、サーバ処理プログラム変換部１０１は無くてよいことになる。また、図２１のプログラム生成部１１０の処理においては、Ｓ１９０１、Ｓ１９０２のＷｅｂサービスの読込みとスタブコードの作成の処理は、既にプログラム生成部１１０において行われている処理となるためこの処理も行わなくてよくなる。
【０２１９】
つまり、図４の処理によって行われるＷｅｂサービスの公開は、既にワークフローサーバ１２０によって行われているということである。このとき、ＷＳＤＬも予め用意されている状態であるため、Ｗｅｂアプリケーション生成装置１００の図１９の１７０１のアクション定義で配置可能な起案、承認等のボタンの、どのサービスのどのオペレーションを呼ぶかについて、予め、既にワークフローサーバ１２０のＷＳＤＬに則った内容で記載がされていることにすると、図４の処理や、図１９の１７０２における、ＷＳＤＬに記載のＷｅｂサービス名とオペレーション名を記載しなくてよいことになる。また、前述したように、ワークフローサーバ１２０においては、ワークフロー処理部１２３のＷｅｂサービスも公開されていて、スタブコードもプログラム生成部１１０に既に作成済みのため、図２１のＳ１９０１からＳ１９０２の処理は行わなくて良いということになる。
【０２２０】
なお、ワークフロー処理部１２３によって、本発明に係る「前記クライアントアプリケーションからのリクエストに応じて前記サーバが行う処理情報」の一例が構成されている。
【０２２１】
また、ＷＳインタフェース１２４、並びに、第２の実施形態の「ワークフロー処理部１２３の処理を呼び出すためのＷＳインタフェース１２４が存在している」及び「Ｗｅｂサービスの公開は、既にワークフローサーバ１２０によって行われている」という記載等によって、本発明に係る「処理情報をＷｅｂアプリケーションから呼び出し可能にするためのＷｅｂサービスを提供するＷｅｂサービス提供手段」の一例が構成されている。
【０２２２】
また第２の実施形態では、フィルタ処理部１２５が行うフィルタプログラムをフィルタプログラム生成部１０９が、Ｗｅｂアプリケーションを開発する度に生成しないこととする。
【０２２３】
予め、ワークフローサーバ１２０において、既存のフィルタプログラム（フィルタ処理部１２５）を準備しておくことにより、フィルタプログラム生成部１０９によって、フィルタ処理を行うプログラムを生成しなくてよくなる。（第１の実施形態においてフィルタプログラム生成部１０９が必要なのはワークフローサーバ１２０側にフィルタ処理部１２５であるフィルタプログラムが存在していないことを前提とし、これを作成するという意味でフィルタプログラム生成部１０９を存在させている。）このような理由により、第２の実施形態では、フィルタプログラム生成部１０９が機能として無い形態とする。
【０２２４】
更に、第２の実施形態では、Ｗｅｂアプリケーション生成装置１００は、ワークフローサーバ１２０からデータ構造情報１２１のみを受け取ることによって、Ｗｅｂアプリケーション１６０を生成するのに必要となる処理定義以外の部分の設計情報を生成することとする。
【０２２５】
なお、図１０のＳ８０１、及び、第２の実施形態の「Ｗｅｂアプリケーション生成装置１００は、ワークフローサーバ１２０からデータ構造情報１２１のみを受け取る」という記載によって、本発明に係る「前記設計情報記憶手段に記憶された前記データ構造情報を前記サーバから受信するデータ構造情報受信手段」の一例が構成されている。
【０２２６】
最低限、ワークフローサーバ１２０のデータ構造情報１２１から、項目の定義情報を受け取り、データモデル定義１０４を生成することによって、Ｗｅｂアプリケーション生成装置１００においては、（ワークフロー処理の定義以外の）入出力定義１０７の定義を生成することが可能であることとする。
【０２２７】
なお、第２の実施形態の「ワークフローサーバ１２０のデータ構造情報１２１から、項目の定義情報を受け取る」という記載、及び、「データ構造情報１２１」によって、本発明に係る「前記クライアントアプリケーションで使用されるデータ項目の情報であるデータ構造情報」の一例が構成されている。
【０２２８】
また、図１０のＳ８０２〜Ｓ８０３、及び、第２の実施形態の「ワークフローサーバ１２０のデータ構造情報１２１から、項目の定義情報を受け取り、データモデル定義１０４を生成する」という記載によって、本発明に係る「前記データ構造情報受信手段より受信した前記データ構造情報を、前記Ｗｅｂアプリケーションで使用されるデータ項目の情報であるデータモデル定義として記憶するデータモデル定義記憶手段」の一例が構成されている。
【０２２９】
これにより、レイアウト情報取得部１０５と入出力定義変換部１０６が無くてよいことになる。なお、入出力定義１０７は、レイアウトエディタ部１０８の機能を使用することによって、データモデル定義１０４の定義情報から作成することが可能であることとする。
【０２３０】
なお、Ｗｅｂアプリケーション１６０の生成において、このデータモデル定義１０４や、入出力定義１０７の設計情報が関わる処理は、第１の実施形態のプログラム生成部１１０が行う、図２１のＳ１９０３からＳ１９０７の処理と同様であることとする。
【０２３１】
以上、第２の実施形態により、クライアントアプリケーションの項目情報と、既存のＷｅｂサービスと、既存のフィルタプログラムを使用することにより、既存のクライアントアプリケーションから呼び出される処理を新たに開発することなく、Ｗｅｂアプリケーション生成システムを提供することが可能になる。なお、第１の実施形態と異なる点を中心に説明したが、それ以外の部分については、第１の実施形態と同様とする。
【０２３２】
なお、第２の実施形態の記載、特に「クライアントアプリケーションの項目情報と、既存のＷｅｂサービスと、既存のフィルタプログラムを使用することにより、既存のクライアントアプリケーションから呼び出される処理を新たに開発することなく」という記載等によって、本発明に係る「前記データモデル定義と、前記Ｗｅｂサービス提供手段により提供されるＷｅｂサービスにより使用可能な既存の前記処理情報を処理可能にするための定義情報と、を用いることにより、Ｗｅｂアプリケーションを生成する生成手段」の一例が構成されている。
【０２３３】
なお、このフィルタ処理部１２５、及び、図２４のＳ２２０１〜Ｓ２２０４によって、本発明に係る「前記サーバの前記クライアントアプリケーションに対しアクセスを受け付けた場合にアクセス元を判定する判定手段」の一例が構成されている。また、フィルタ処理部１２５、及び、図２４のＳ２２０５によって、本発明に係る「前記判定手段により、前記サーバが端末からアクセスを受け付けたと判定した場合は、前記クライアントアプリケーションを前記端末へ表示する」ことの一例が構成されている。また、フィルタ処理部１２５、及び、図２４のＳ２２０７によって、本発明に係る「前記判定手段により、前記サーバがモバイル端末からアクセスを受け付けたと判定した場合は、前記Ｗｅｂアプリケーションの画面を前記モバイル端末へ表示する」ことの一例が構成されている。
【０２３４】
また、第２の実施形態の「フィルタプログラム生成部１０９が機能として無い形態とする」という記載によって、本発明において「フィルタプログラム生成手段」を備えていないことが構成されている。
【０２３５】
また、図２２によって、本発明に係る「前記サーバは、前記判定手段により、前記サーバが前記モバイル端末からアクセスを受け付けたと判定した場合に表示するＷｅｂアプリケーションのＵＲＬと、前記クライアントアプリケーションのＵＲＬとを対応づけた対応テーブルを記憶するフィルタ設定情報記憶手段」の一例が構成されている。
【０２３６】
また、図２２の「ＩＤ＝２」、及び、図２４のＳ２２０６がＹｅｓの場合、によって、本発明に係る「前記切替手段は、前記アクセス元のモバイル端末がリクエスト情報として前記サーバに送信した前記クライアントアプリケーションのＵＲＬに対応する、前記Ｗｅｂアプリケーションを表示するためのＵＲＬが前記フィルタ設定情報記憶手段に存在する場合」の一例が構成されている。また、図２４のＳ２２０７によって、本発明に係る「前記アクセス元のモバイル端末に当該Ｗｅｂアプリケーションを表示するＵＲＬに対応する前記Ｗｅｂアプリケーションを表示する」ことの一例が構成されている。
【０２３７】
以上、２つの実施形態について示したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記録媒体等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【０２３８】
また、本発明におけるプログラムは、図４、図１０、図１６、図２１、図２３、図２４に示すフローチャートの処理方法をコンピュータが実行可能なプログラムであり、本発明の記憶媒体は図４、図１０、図１６、図２１、図２３、図２４の処理方法をコンピュータが実行可能なプログラムが記憶されている。なお、本発明におけるプログラムは図４、図１０、図１６、図２１、図２３、図２４の各装置の処理方法ごとのプログラムであってもよい。
【０２３９】
以上のように、前述した実施形態の機能を実現するプログラムを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記録媒体に格納されたプログラムを読み出し実行することによっても、本発明の目的が達成されることは言うまでもない。
【０２４０】
この場合、記録媒体から読み出されたプログラム自体が本発明の新規な機能を実現することになり、そのプログラムを記憶した記録媒体は本発明を構成することになる。
【０２４１】
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＤＶＤ−ＲＯＭ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＥＥＰＲＯＭ、シリコンディスク、ソリッドステートドライブ等を用いることができる。
【０２４２】
また、コンピュータが読み出したプログラムを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０２４３】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０２４４】
また、本発明は、複数の機器から構成されるシステムに適用しても、１つの機器からなる装置に適用してもよい。また、本発明は、システムあるいは装置にプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本発明を達成するためのプログラムを格納した記録媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
【０２４５】
さらに、本発明を達成するためのプログラムをネットワーク上のサーバ、データベース等から通信プログラムによりダウンロードして読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
【０２４６】
なお、上述した各実施形態およびその変形例を組み合わせた構成も全て本発明に含まれるものである。
【符号の説明】
【０２４７】
１  ワークフローシステム
１００  Ｗｅｂアプリケーション生成装置
１２０  ワークフローサーバ
１３０  ワークフローデータベース
１４０  利用者端末（ＰＣ、モバイル）
１７０  Ｗｅｂアプリケーション
２０１  ＣＰＵ
２０２  ＲＯＭ
２０３  ＲＡＭ
２０４  システムバス
２０５  入力コントローラ
２０６  ビデオコントローラ
２０７  メモリコントローラ
２０８  通信Ｉ／Ｆコントローラ
２０９  キーボード
２１０  ＣＲＴディスプレイ
２１１  外部メモリ
【図１】
0006002302.tif 000002
【図２】
0006002302.tif 000003
【図３】
0006002302.tif 000004
【図４】
0006002302.tif 000005
【図５】
0006002302.tif 000006
【図６】
0006002302.tif 000007
【図７】
0006002302.tif 000008
【図８】
0006002302.tif 000009
【図９】
0006002302.tif 000010
【図１０】
0006002302.tif 000011
【図１１】
0006002302.tif 000012
【図１２】
0006002302.tif 000013
【図１３】
0006002302.tif 000014
【図１４】
0006002302.tif 000015
【図１５】
0006002302.tif 000016
【図１６】
0006002302.tif 000017
【図１７】
0006002302.tif 000018
【図１８】
0006002302.tif 000019
【図１９】
0006002302.tif 000020
【図２０】
0006002302.tif 000021
【図２１】
0006002302.tif 000022
【図２２】
0006002302.tif 000023
【図２３】
0006002302.tif 000024
【図２４】
0006002302.tif 000025
【図２５】
0006002302.tif 000026