はじめに
WACsとはWeb Application ComponentS の略。
(WACと区別するために無理やりsをつけた?)
IBM社が提供しており、Javaアプリケーション開発で必要となる基盤機能のコンポーネントと、生産性向上のための開発支援ツールを提供するスーパーニッチなアプリケーション開発フレームワークでバージョンは23.2まで出ている。(2024/02/29現在)
WACsを利用する新規案件はほぼ無いと思うが、更改案件などでもしかしたら触れる機会があるかも…
おそらく日本中の全エンジニア、プログラマーの中で知っている人は1%もいないと思われる。
IBM系の製品あるあるなのだが、いざ調べようと思い「WACs」や「Web Application ComponentS」で検索しても関係のない記事ばかり出てきてしまう。
どうにかみつけても日本語の記事は2,3個くらいしかみつけられなかった。
ちなみにX(旧Twitter)で「WACs IBM」と検索するとWACsに携わったであろう歴戦の猛者の先輩エンジニア達からボロクソ言われてるので面白い。どれも10年以上前のポストなので歴史を感じる。
そんなWACsを業務で触れることがあったので、自分も全てを把握している訳ではないが、備忘録・業務で使用する為に調べたけど全く情報がない中、検索でこの記事が引っ掛かった人の為にわかったことだけでも残しておこうと思う。
何ができるのか
WAS(WebSphere Application Server)及びJDKの導入が前提。
WASもIBM社製品でシステム構築・運用をサポートするアプリケーションサーバ。
イメージとしては、WASとJDKの上にWACsが乗り、その上にWACsの共通、カスタマイズ部品などが乗っているような構成になる。
WACsにはいくつか製品としての特長がある。
・お客様の業務をシステム化する上で十分なシステム基盤機能を提供
・標準技術をベースとしたコンポーネント機構と開発環境(Java EE/Eclipse)
・フレームワークの拡張方式を標準化(コンポーネントの再利用が可能)
・各種提携ロジックを自動生成する開発支援ツールとガイド類の提供
・研修サービス、オンラインサポートなどのサポート体制
WACsにはいくつかのFutureがある。
・Web Feature
MVCフレームワーク (Base Framework / JSF)
Webアプリケーションに必要な基盤機能 (セッション制御 / 画面遷移制御 / Ajax連携など)
Form生成ツール /JSP生成ツール / CPA設定ツール
・Common Feature
Webサービス・リクエスト制御用フレームワーク
リクエスト制御(流量制限など)および外部リソース・アクセス用基盤(JMSアクセスなど)機能
Spring Framework連携用コンポーネント*
コンポーネントの組み込み可能な実行基盤
Javaビーン変換クラス生成ツール
DAO生成ツール
・Batch Feature
バッチ/非同期処理用フレームワーク
種々のジョブ呼び出し用コンポーネント (Shell / REST API etc.)
ジョブ管理用Webアプリケーション
・Print Feature
帳票Webサービス
帳票データ登録
オンライン印刷
帳票データDBメンテナンス
・SOA Application Template Feature
Web FeatureをベースとしたSOAの考え方を採用したシステム構造を実現するための再利用可能な設計、開発ガイド
画面仕様書からスケルトン・ソースコードを自動生成
実際に開発で使う際にはRADと呼ばれるEclipseベースの開発ツールを使うことになると思うが、ヘルプからWACsのガイドを参照しながら開発が可能になる。
また分かったことがあれば追記していこうと思います。