製品情報 > SMART Framework

SMART Framework

SMART Frameworkは、Webアプリケーション開発のためのデファクト・フレームであるApache Strutsを基盤に、更に高い開発生産性を追求するために必要な機能を拡張したWebアプリケーション開発フレームワークです。

フレームワークとしての拡張機能

認証アドイン機能

クライアントの要求に対してURL(アクションマッピング)ごとに実行すべき認証処理が可能です。

トランザクションン制御機能

EISに対するトランザクションのコミットやロールバックを設定ファイルに定義することで、ビジネスロジックコードから形式的な処理を切り離すことが出来ます。また、J2EE JTAを利用した複数トランザクションの制御についても定義ベースで実現することが可能です。

リソースオブジェクト管理機能

EISへアクセスする為のリソースオブジェクトのオープンやクローズ処理を自動化して、ビジネスロジックコードから形式的なロジックを切り離すことができます。

ページ遷移管理機能

ユーザのページ遷移履歴を記録することが出来ます。様々なページ遷移やサイトにおけるページ位置の階層表示が可能です。

フォームオブジェクトキャッシュ機能

Struts標準機能である、フォームオブジェクトの生成時に、セッションに登録してあるフォーム情報を利用することで、クライアント−サーバ間のネットワーク通信の負荷を軽減します。

入力妥当性検証拡張機能

Strutsを拡張した妥当性検証API(桁制限無しの数値範囲検証、マルチバイト文字列検証など)を提供します。

共通外部ファイル参照管理機能

設定ファイルに追加したカスタムタグを利用することによって、共通の外部参照ファイルの情報を一元管理することが出来ます。

文字セット制御機能

サーブレットフィルターにより、HTTPメソッドによる動的な文字セットの制御が可能になります。

表示情報フォーマット機能

クライアントに結果表示する文字列に対して、設定ファイルに定義した書式パターンを自動的にフォーマットすることが出来ます。表示対象の文字列がフォーム及びフィールドにおいても利用可能です。

送信情報フィルター機能

クライアントから送信されるパラメータの文字列に対して、設定ファイルに定義した書式パターンを参照し、自動的にフィルターをかけることが出来ます。この機能を利用すると、フォームオブジェクトのフィールドには、常にフィルター済みの値が格納されます。

システム開発の生産性を向上

J2EE JTAを標準サポート

J2EE JTAに準拠したアプリケーションサーバさえあれば、SMART Frameworkが提供するAPIを利用して簡単に複数トランザクションの制御を行うことが出来ます。

J2EEJNDIを標準サポート

J2EE JNDIに準拠しているアプリケーションサーバさえあれば、SMART Frameworkが提供するAPIを利用して簡単にネーミングサービスを利用してオブジェクトを取得することが出来ます。

Jakarta Velocityを標準サポート

SMART Frameworkは標準でVelocity をサポートしています。

J2EE EJBを標準サポート

J2EE EJBを標準サポート予定です。

Hibernateを標準サポート

Hibernate を標準サポート予定です。

システム方針の柔軟性を向上

データソース管理機能

データソースの取得に必要なロジックをSMART Frameworkが提供する仕様に従い実装を行うことで、アプリケーション本体とデータソースの生成・取得コードを切り離すことが出来ます。また、J2EE JTAに準拠したデータソースの場合、アプリケーションでJTAを利用するのか、JDBCを利用するのか、という判断をすることなくトランザクションの制御を行うことが可能です。また、「JNDIサービスを利用したデータソース」 を取得する為のファクトリクラス(推奨)、「Jakarta Commons DBCP を利用したデータソース」 を取得する為のファクトリクラスを標準で用意しています。

メッセージリソース管理機能

外部管理されているメッセージの取得に必要なロジックをSMART Frameworkが提供する仕様に従い実装を行うことで、アプリケーションからはメッセージの管理形式に依存させずにメッセージを利用することが可能となります。また、XMLにより管理されるメッセージリソースを生成・取得する為のファクトリクラス、プロパティファイルにより管理されるメッセージリソース を生成・取得する為のファクトリクラス、データベースにより管理されるメッセージリソースを生成・取得する為のファクトリクラスを標準で用意しています。

環境設定管理機能
外部管理されている環境設定情報の取得に必要なロジックをSMART Frameworkが提供する仕様に従い実装を行うことで、アプリケーションからは環境設定情報の管理形式に依存させずに環境設定情報を利用することが可能となります。また、XMLにより管理される環境設定情報を生成・取得する為のファクトリクラス、プロパティファイルにより管理される環境設定情報を生成・取得する為のファクトリクラスを標準で用意しています。

システムの運用性の向上

ログ出力機能を強化

SMART Frameworkでは、デバッグ情報の他にも標準で、以下のようなログを出力することが可能です。

・ クライアント追跡ログ

サーバへの要求内容(URL)とクライアントへの返信情報(URL)を出力することにより、クライアントの追跡が容易となります。

・ エラー解析ログ
アプリケーションで発生した例外の詳細情報を出力することにより、システムの異常や、クライアントの不正の監視が容易となります。

・ データベースアクセスログ
データベースへの接続情報を出力することにより、アクセスにおけるパフォーマンスチェックや動的なSQLのチェックが容易となります。

ビジネスロジック単体実行環境の提供

SMART Frameworkでは、モデルレイヤとWEBレイヤが完全に分離されているので、単体環境で、ビジネスクラスを実行するテストプログラムを容易に作成することが出来ます。そのためのAPIおよびビルド&実行環境を提供します。

システム開発の管理性向上

ビジネスモデルへの共通インターフェイスの提供

ビジネスクラスに対して、1つのインターフェイスを提供します。ビジネスクラスがインターフェイスを実装することで、オブジェクトの生成・破棄をSMART Frameworkが管理します。

XDAO導入によるデータアクセスのXML定義化

XDAOを導入することで、データアクセスに関連する一切の処理コードをXMLで管理することが可能になります。これにより、複雑なビジネスロジックコードから単純なデータアクセスコードを切り離すことが出来ます。

XDTO導入によるデータ転送のXML定義化

XDTOを導入することで、各レイヤを越えてデータを転送する為に必要とされるデータ構造を表現するクラスの実装をXMLの定義で置き換えることが可能になります。

動的共通レイアウト表示の為のカスタムタグの提供

Apache Strutsが標準で提供するTilesや、JSPのIncludeを利用せずに共通のレイアウトを表示する為のカスタムタグを提供します。

アーキテクチャ

SMARTFrameworkでは、アクションエージェントにより、ログ出力、認証処理、トランザクション制御、DBアクセス情報などをXMLベースで定義することが可能となります。このため、SMART Frameworkでは、定型的な処理をソースコードから切り離すことで、アプリケーションの品質、生産性の向上を実現します。


開発元


SMART Frameworkは、株式会社アルディートが開発したArdito B-Strutsをもとに商品化しています。アルディートは、Javaを中心としたオブジェクト指向言語を使用したシステム開発のプロフェッショナルエンジニア集団です。