Apache Struts
Apache Struts情報
- Apache Strutsとは
- 主な特徴
- 導入事例
- Apache Strutsと脆弱性
- Apache Strutsのライセンス
- 製品ダウンロード
- Apache Struts 脆弱性パッチ提供
- オープンソース年間サポートサービス
Apache Strutsとは
Apache Struts(アパッチストラッツ)は、Java言語を用いてWebアプリケーションを効率的に開発するために使用される、MVC(Model-View-Controllerの略で、アプリケーションを役割単位に分割するソフトウェアアーキテクチャ)ベースのオープンソースのフレームワークです。
最初のリリースは2001年で、当時複雑化していたJ2EEベースのWebアプリケーション開発を容易にし、生産性の向上と実装の均質化を実現するフレームワークとして大きな注目を受けました。
その後、2005年頃にはApache Strutsは、Webアプリケーション・フレームワークとしてはデファクトスタンダードと言えるほどのシェアを持つことになります。
しかし、Spring FWなどの他のフレームワークの登場とともに、技術的な欠点も多く指摘されるようになり、2007年にリリースされたStruts 2ではそれまでの仕組みを捨て、開発されていた別のフレームワーク(WebWork 2)をベースとしたものへと置き換えられています。したがって、Struts 1.xとStruts 2.xには互換性がありません。
現在、新規Webアプリケーション開発の選択肢となることはほとんどありませんが、多くのシステムの中で動作し続けています。ただし、Struts 1.x がEOLを迎えた2014年以降もセキュリティ脆弱性の存在を報告されることが度々あるため、新しいフレームワークへの移行の需要が増えています。
主な特徴
Apache Struts(アパッチストラッツ)は、次のような特徴があります。
- サーブレット/JSPコンテナベース
- MVCアーキテクチャ
- 強力なカスタムタグライブラリ
- 長い間、JavaのWebアプリケーションのフレームワークとしてデファクトスタンダードだった
- 開発に慣れた技術者が多い
- Struts 1.xとStruts 2.xには互換性が無い
- Struts 1.xは2013年4月5日にEOLとなっている
- Struts 2.3.xシリーズの提供が停止され、2.5.x、または6.x.xへのアップグレードが推奨されている
導入事例
Apache Strutsは、アプリケーション・フレームワークとしてはデファクトスタンダードと言えるほどのシェアを持ち、中小から大規模まで、さまざまな業種・システムで幅広く利用されています。
OpenStandiaでの、Apache Struts導入事例も数多くあります。代表的な事例は下記のものです。
- 「金融機関の基幹DBにMySQLを活用」 金融機関K社
- 「お客様を待たせない、高性能コールセンター」 金融機関 B社
- 「高いピーク性能が求められるオンライントレードシステムをオープンソースで実現」 証券会社 G社
- 秒間24,000にも及ぶ大量トランザクション NRI 証券ASPサービス
- 「店舗とインターネット、2つの経路からの予約受付」 サービス業 F社
- 「1日も早くサービスをスタートしたい!」 サービス業 E社
- 「"止まらない"ECサイトを実現」 セブンドリーム・ドットコム様
Apache Strutsと脆弱性
Apache Strutsには、多数のセキュリティーホールが見つかっており、攻撃による被害が多く出ています。特にStruts 2.0から導入されたOGNL (Object-Graph Navigation Language) と呼ばれる式言語に関する脆弱性が多く、根本的な対策がなかなかできていないのが現実です
Apache Strutsの脆弱性対策
NRI OpenStandiaではStruts 2.x だけでなく、1.2.x 1.3.xへの脆弱性パッチの提供を行っています。詳しくはお問い合わせください。
Apache Strutsのライセンス
Apache Struts(アパッチストラッツ)は、Apache 2.0ライセンスです。
Apache Struts(アパッチストラッツ)のコードが使用されていることの明記を条件に、ソースコードの自由な改変と公開が認められています。
製品ダウンロード
Apache Struts 脆弱性パッチ提供
NRI OpenStandiaではStruts 1.2.x 1.3.xへの脆弱性パッチの提供を行っています。詳しくはお問い合わせください。
オープンソース年間サポートサービス
OpenStandiaではOSSを安心してご利用いただけるように、オープンソース年間サポートサービスをご提供しております。
サポートしているOSSは下記ページをご参照ください。
関連OSS
-
Apache Wicket
アパッチウィケット。Javaで実装されたコンポーネントベースのWebアプリケーションフレームワークです。
-
サポート対象
Spring Framework
スプリングフレームワーク。Javaプラットフォーム向けのオープンソースアプリケーションフレームワークです。
-
サポート対象
HikariCP
ヒカリシーピー。高速かつ軽量なJDBCコネクションプールのライブラリです。