intra-mart WebPlatform/AppFramework Ver.7.2 イントロダクション 2012/08/03 第 3 版 i
変 更 履 歴 変 更 年 月 日 変 更 内 容 2010/04/01 初 版 2010/05/31 弟 2 版 2.1.5.6 IM-SonicESB( 別 売 ) 内 の 説 明 を 修 正 しました 2012/08/03 弟 3 版 2.5 intra-mart ebuilder 内 の 説 明 を 修 正 しました ii
第 1 章 intra-martとは 1 1.1 intra-martの 全 体 構 成 2 1.1.1 製 品 構 成 3 1.2 intra-martの 特 長 4 1.2.1 特 長 1 高 い 開 発 生 産 性 を 実 現 する 統 合 型 フレームワーク 5 1.2.2 特 長 2 ビジネスの 変 化 に 柔 軟 に 対 応 できるSOAシステム 統 合 基 盤 8 1.2.3 特 長 3 高 速 で 信 頼 性 のあるOSSアプリケーションサーバ 機 能 も 装 備 9 第 2 章 intra-martの 標 準 機 能 10 2.1 im-bizapi(java 業 務 コンポーネント 群 ) 概 要 11 2.1.1 利 用 方 法 1 JavaEE 開 発 モデルの 利 用 11 2.1.2 利 用 方 法 2 スクリプト 開 発 モデルの 利 用 12 2.1.3 Java 業 務 コンポーネント 群 (im-bizapi) 12 2.1.4 標 準 画 面 の 作 り 方 ( 共 通 画 面 デザイン) 34 2.1.5 エクステンションシリーズ 38 2.2 intra-martのアプリケーション 開 発 概 要 46 2.2.1 スクリプト 開 発 モデルによるアプリケーション 開 発 47 2.2.2 JavaEE 開 発 モデルによるアプリケーション 開 発 49 2.3 intra-martのシステムアーキテクチャー 54 2.3.1 intra-mart WebPlatformのシステムアーキテクチャー 54 2.3.2 intra-mart AppFrameworkのシステムアーキテクチャー 56 2.4 intra-martのその 他 の 特 徴 58 2.4.1 多 言 語 対 応 58 2.4.2 運 用 の 容 易 性 59 2.4.3 強 固 なセキュリティ 62 2.4.4 ASP 型 アプリケーションの 構 築 62 2.5 intra-mart ebuilder 63 2.5.1 Script Producer 63 2.5.2 FrameworkProducer 64 2.5.3 FrameworkProducerのソースコード 自 動 生 成 ビジュアルな 画 面 定 義 機 能 64 2.5.4 マスカットIDEによるビジュアルな 画 面 定 義 機 能 66 2.6 旧 バージョンとの 互 換 性 67 2.6.1 APIの 互 換 性 67 2.6.2 データベース 構 造 の 互 換 性 67 2.6.3 旧 バージョン(リビジョン)との 互 換 性 67 2.6.4 JumpUpモジュール(Ver.3 / Ver.4 Ver.5.0 ~) 67 iii
1.1 intra-mart の 全 体 構 成 intra-mart WebPlatform/AppFramework 第 1 章 intra-martとは イントロダクション 1
第 1 章 intra-mart とは 1.1 intra-martの 全 体 構 成 intra-martでは 企 業 のWebシステムを 実 現 するために 各 種 のソリューションを 提 供 しています intra-mart WebPlatform (フレームワークベースの 次 世 代 型 Webアプリケーションサーバ) intra-mart AppFramework intra-martアプリケーションシリーズ intra-mart WebPlatformは フレームワークを 利 用 することで 複 雑 なWebアプ リケーションを 簡 単 に 短 期 間 で 開 発 することができます フレームワークには さまざまなJava 業 務 コンポーネント(アクセスセキュリティ モジュール/ワークフ ロー モジュールなどを 総 称 して im-bizapi と 呼 びます)とJavaEEフレームワ ーク(im-JavaEE Framework)から 構 成 されています さらに JavaEEベースの 開 発 と 併 用 して スクリプト 開 発 モデルも 利 用 できるため Webシステム 開 発 の 敷 居 を 大 きく 下 げることができます また フェールオーバー 機 能 やラウンドロ ビンによるロードバランス 機 能 などの 高 度 な 信 頼 性 を 提 供 するJavaEEアプリケ ーションサーバの 機 能 (Resin/JBoss)も 標 準 搭 載 されています intra-mart WebPlatformのフレームワークを 他 社 アプリケーションサーバ(IBM WebSphere BEA WebLogic NEC WebOTXなど)でもご 利 用 になれるフレーム ワークだけの 製 品 です JavaEEアプリケーションサーバ 上 でのWebシステム 開 発 の 生 産 性 を 大 きく 向 上 させることができます intra-martアプリケーションは 強 力 なフレームワークにより 構 築 された 統 合 型 Web 業 務 アプリケーションシリーズです すべてのソースコードが 公 開 されてお り ユーザは 自 由 にカスタマイズして 機 能 を 拡 張 していくことができます さら に 各 アプリケーションの 会 社 / 組 織 情 報 顧 客 情 報 など 基 本 的 な 情 報 が 連 動 して 動 作 します これらのアプリケーションでは 既 存 の 基 幹 システムと 連 携 し た 全 社 規 模 の 情 報 共 有 を 実 現 することで 経 営 課 題 を 短 期 間 で 達 成 していくこ とができます 各 アプリケーションのシリーズ 製 品 は 以 下 の2つのソリューションに 分 類 されま す イントラネット ソリューション CRMソリューション M&A アウトソーシングニーズの 高 まりにより 増 大 する 間 接 部 門 のコスト 低 減 と 全 社 規 模 での 情 報 共 有 (コラボレーション) を 実 現 するWebイントラネッ ト 構 築 ソリューション 全 社 規 模 のイントラネットを 実 現 します 折 衝 情 報 サポート 情 報 クレーム 情 報 などの 顧 客 情 報 の 全 社 共 有 は 企 業 の 最 重 要 テーマとなります CRMソリューションは 顧 客 情 報 を 中 心 としたエン タープライズポータルを 実 現 します 2 intra-mart WebPlatform/AppFramework
1.1 intra-mart の 全 体 構 成 intra-martでは イントラネット CRMなど 各 種 Webアプリケーション 製 品 により 力 強 くトータルに バックアップしていきます またこれらのアプリケーションシリーズはすべてソースコードが 公 開 されて いるため ソースコードに 対 してユーザ 自 身 で 簡 単 にカスタマイズできるなどの 特 徴 があります 本 書 では intra-mart 製 品 の 中 核 をなす 基 盤 ツールであるintra-mart WebPlatform/AppFramework について 説 明 します その 他 intra-martアプリケーションの 詳 細 については それぞれのマニュアル 等 を 参 照 してください 1.1.1 製 品 構 成 intra-mart WebPlatform/AppFrameworkには 以 下 のような3つの 製 品 が 用 意 されています 機 能 スタンダード アドバンスト エンタープライズ for BPM アプリケーションサーバ*1 im-bizapi アクセスセキュリティ 機 能 ポータル スクリプト 開 発 モデルによるアプリケーション 構 築 JavaEE 開 発 モデルによるアプリケーション 構 築 EJBサーバ 機 能 *1 ワークフローモジュール FormatCreator BPM Server BPM designer (Intalio) ESB Mule *1 intra-mart AppFrameworkには 付 属 しない 機 能 です イントロダクション 3
第 1 章 intra-mart とは 1.2 intra-martの 特 長 需 要 の 高 まるWebシステムの 開 発 には 以 下 のような 課 題 があります 短 納 期 低 コストへの 要 求 (IT 投 資 に 対 する 厳 しい 評 価 ) オープンソースソフトウェア(OSS)の 台 頭 ( 特 定 ベンダーからの 離 脱 ) ビジネス 変 化 に 柔 軟 に 対 応 するシステムへの 期 待 これらの 課 題 に 対 応 するため システム 開 発 はフルスクラッチ(ゼロからの 開 発 )から コンポーネント やOSSの 組 み 合 わせ 利 用 型 へと 変 化 しています そこで 開 発 期 間 の 短 期 化 開 発 コストの 低 減 に 加 え 標 準 化 の 推 進 品 質 の 向 上 等 にもメリットがある ことから フレームワークやコンポーネントを 組 み 合 わせた 統 合 型 フレームワーク に 対 する 要 求 が 高 まってきました この 統 合 型 フレームワークを 全 社 共 通 のプラットフォームとして 有 効 活 用 していくことが 激 しい 競 争 を 勝 ち 抜 くための 企 業 戦 略 として 欠 かせません intra-martのフレームワークを 利 用 することで 複 雑 なWebアプリケーション 開 発 を 容 易 に 短 期 間 で 実 現 するとともに ビジネス 変 化 にも 柔 軟 に 対 応 できる 保 守 性 の 高 いWebシステムを 構 築 することができま す 4 intra-mart WebPlatform/AppFramework
1.2 intra-mart の 特 長 1.2.1 特 長 1 高 い 開 発 生 産 性 を 実 現 する 統 合 型 フレームワーク 統 合 型 フレームワークは さまざまなJava 業 務 コンポーネント(im-BizAPI)と JavaEEフレームワー ク(im-JavaEE Framework)から 構 成 されています さらにJavaEE 開 発 モデルとスクリプト 開 発 モデルを 併 用 できるため Webシステム 開 発 の 敷 居 を 大 きく 下 げることができます 1.2.1.1 数 多 くのJavaコンポーネント 群 (im-bizapi) JavaEE 対 応 Webアプリケーションサーバによるシステム 開 発 では 一 般 的 にJavaクラスやEJB (Enterprise Java Beans)コンポーネントなどのソフトウェア 部 品 を 活 用 しながら 開 発 生 産 性 を 高 めて いくことができる 特 徴 があります しかし このソフトウェア 部 品 の 開 発 には 特 殊 なスキルが 必 要 とされ 依 然 として しきい が 高 いのが 現 状 です 従 来 ゼロから 開 発 したり 他 社 製 品 を 組 み 合 わせたりしないと 実 現 しなかった 複 雑 な 機 能 を フレームワ ークで 用 意 されているJava 業 務 コンポーネント 群 を 利 用 することで 大 規 模 なWebシステムでも 短 期 かつ 高 品 質 に 構 築 できます またソースコードも 公 開 されているので 自 社 独 自 の 機 能 拡 張 フレームワークに 発 展 させることができま す 標 準 で 用 意 されている 各 種 Javaコンポーネントを 組 み 合 わせることで 要 件 に 合 わせた 柔 軟 なカスタマイ ズが 可 能 です イントロダクション 5
第 1 章 intra-mart とは 1.2.1.2 JavaEE 開 発 のフレームワーク(im-JavaEE Framework) JavaEE 開 発 モデルの 生 産 性 を 向 上 させるため JavaEE 開 発 で 必 要 になる 共 通 的 な 処 理 はすべてフレー ムワーク(im-JavaEE Framework)として 用 意 し 開 発 者 に 委 ねられる 箇 所 はコンポーネントを 作 成 し てもらう 形 態 となります 特 に このフレームワークを 利 用 するコンポーネントについては 雛 型 となる"スケルトン"を 用 意 してお くことで さらに 生 産 性 を 高 めることが 可 能 となります( 共 通 部 分 はあらかじめ 実 装 されているので 開 発 者 は 独 自 のコンポーネントを 作 成 する 場 合 スケルトンをコピーし 実 装 されていない 箇 所 を 埋 めてコ ンポーネントを 作 成 することになります) 作 成 されたコンポーネントはプロパティ 設 定 によりフレーム ワークにあてはめていくことで 動 作 します スケルトンを 利 用 したコンポーネント 開 発 のため JavaEE 開 発 の 前 提 知 識 がなくても 完 成 したシステム はJavaEEアーキテクチャの 推 奨 型 となり MVCモデルの 実 現 が 容 易 になります(プログラム 構 造 が 統 一 できるため コンポーネントの 再 利 用 性 が 高 まり 生 産 性 および 保 守 性 が 向 上 します) また コンポーネ ント 群 とプロパティファイルの 設 定 をベースとした 構 造 になるため 柔 軟 なカスタマイズや 機 能 追 加 が 可 能 なシステムとなります JavaEE 開 発 モデル JavaEE(Java2 EnterpriseEdition)とは 米 サンマイクロシステムズが1999 年 9 月 に 発 表 したプラッ トフォームで Servlet JSP(JavaServerPage) EJB(EnterpriseJavaBeans)などから 構 成 さ れ MVCモデル(Model-View-Controller)でシステム 構 築 をおこなっていきます 特 に 高 トランザク ションが 集 中 する 処 理 に 適 し さらに 業 務 コンポーネントの 再 利 用 が 可 能 になるなどのメリットがありま す intra-mart WebPlatform/AppFrmeworkは オープンソースDIコンテナであるSeasar2を 組 み 込 んでいます Seasar2の 機 能 であるHOT deployも 使 用 することができます 6 intra-mart WebPlatform/AppFramework
1.2 intra-mart の 特 長 1.2.1.3 スクリプト 開 発 モデルによる 開 発 も 同 時 にサポート intra-mart WebPlatform/AppFrameworkでは 世 界 で 初 めて2つのWebアプリケーションモデルを 同 時 にサポートしています JavaEE 開 発 モデル と スクリプト 開 発 モデル という2つの 開 発 モデル は それぞれ 特 徴 を 持 ち 用 途 に 応 じて 使 い 分 けることができます また 2つのモデルで 開 発 したWeb アプリケーションを 同 一 のシステム 内 に 混 在 させて 実 行 することもできます どちらの 開 発 モデルもアクセスセキュリティ モジュール ワークフロー モジュールなど intra-mart が 標 準 で 用 意 しているJavaコンポーネント 群 (im-bizapi)を 利 用 することができますので 高 い 生 産 性 を 誇 ります そのため 開 発 予 算 が 限 られ 短 期 間 開 発 の 必 要 なWebシステムはスクリプト 開 発 モデルを 主 体 に 開 発 を 進 め その 中 で 異 なるプロジェクトでも 作 成 したコンポーネントの 再 利 用 が 可 能 な 部 分 を 切 り 出 してJavaEEベースで 開 発 するといった 現 実 的 かつ 柔 軟 な 開 発 スタイルをとることができます この 方 式 により JavaEEベースの 開 発 モデルでの 問 題 (クラス 設 計 などの 高 度 なスキルの 必 要 性 やJava 技 術 者 の 確 保 などの 面 から 敷 居 が 高 く 開 発 費 用 が 増 大 する)を 解 決 することが 可 能 となります スクリプト 開 発 モデル PHPやRubyに 代 表 されるようなスクリプトを 主 体 にした 開 発 モデルです intra-martでは 普 段 ホ ームページの 作 成 に 利 用 しているHTMLと(サーバサイド)JavaScriptを 利 用 してデータベースと 連 動 し たWebシステムの 開 発 が 可 能 な 作 りにしています そのため 初 心 者 でも 始 められる 簡 易 性 により 要 員 のシ ステム 教 育 コストを 大 きく 削 減 することができます これまで 簡 単 なホームページしか 作 成 したことがな かった 方 でも 約 2 週 間 ~1ヶ 月 ほどでマスタしてWeb 業 務 画 面 を 作 成 しています また ホームページの 作 成 更 新 と 同 様 に 簡 易 に 開 発 ができますので 頻 繁 に 更 新 されるような 複 雑 なWeb システムにも 柔 軟 に 対 応 できるメリットがあります(さらに JavaScriptからは 開 発 者 のテクニカルス キルにあわせて Java(Class EJB) C++ ストアドプロシージャなどが 簡 単 に 呼 び 出 せます) イントロダクション 7
第 1 章 intra-mart とは 1.2.2 特 長 2 ビジネスの 変 化 に 柔 軟 に 対 応 できるSOAシステム 統 合 基 盤 M&Aや 分 社 化 ビジネスモデルの 変 更 など ビジネスの 変 化 に 対 して システムも 柔 軟 に 対 応 できるよ うな 変 化 に 強 いシステム の 重 要 性 が 高 まっています この 考 えがないと ビジネス 戦 略 にとって 情 報 システムが 足 かせとなってしまいます intra-martではシステム 統 合 基 盤 として フレームワークに 加 え アプリケーション 共 通 マスタ ポータルモジュール シングルサインオン ビジネスプロセスマネー ジメント(BPM)などの 各 種 システム 統 合 のための 機 能 を 用 意 しています これにより ERPや 汎 用 機 などの 基 幹 システムと 密 接 に 連 携 したWebフロントシステムの 構 築 が 既 存 システムを 活 かしながら 短 期 間 で 構 築 できます また ビジネスプロセス システム 機 能 DBが 独 立 し た 構 造 となるため 業 務 プロセスが 変 わっても 業 務 システムの 対 応 が 短 期 間 でできます 8 intra-mart WebPlatform/AppFramework
1.2 intra-mart の 特 長 1.2.3 特 長 3 高 速 で 信 頼 性 のあるOSSアプリケーションサーバ 機 能 も 装 備 intra-martのフレームワーク 機 能 は さまざまなアプリケーションサーバに 対 応 していますが intra-mart WebPlatformは 高 速 で 信 頼 性 の 高 いOSSアプリケーションサーバ 機 能 (Resin/JBoss)も 標 準 装 備 しています そのためWebサーバ 上 で 実 行 されるビジネスロジックをWebアプリケーションサー バ 上 で 集 中 的 に 稼 動 し WebサーバやDBサーバと 分 割 した 構 成 にすることで 負 荷 の 分 散 を 図 ることも 可 能 です( 多 階 層 アーキテクチャへの 対 応 ) また intra-mart WebPlatformでは 製 品 に 内 包 されているOSSアプリケーションサーバを 使 用 すると ラウンドロビン 機 能 (*1) を 利 用 することができます ラウンドロビン 機 能 は 複 数 のアプリケーショ ンサーバ 間 でも 処 理 の 負 荷 分 散 を 図 ることができるため( 単 一 のIPアドレスで) クライアント 数 の 増 加 にも 柔 軟 に 対 応 できるとともに セッションフェイルオーバー(*2)などの 障 害 対 策 にも 優 れたシステム を 構 築 することができます *1: ラウンドロビン 機 能 とは 複 数 台 のWebサーバをクラスタ 化 し 負 荷 を 複 数 サーバに 分 散 させる 機 能 です *2: セッションフェイルオーバー 機 能 とは 複 数 台 のWebサーバをクラスタ 化 し その 中 のサーバが 何 らかの 障 害 ( 電 源 故 障 ネットワーク 障 害 等 )でダウンするなど サーバ 機 能 を 果 たさない 場 合 そのサーバへのアクセスを 他 のサーバに 振 り 替 える 機 能 です(セッション 情 報 も 他 のサーバへ 引 き 継 ぐことができますので 完 全 にノンストップの システムとなります) また intra-mart WebPlatform/AppFrameworkは HTMLやJava JavaScriptなど インターネッ ト 業 界 標 準 のテクノロジーのみで 構 築 されているため ひとつのメーカに 拘 束 されない 柔 軟 性 の 高 いイン トラネット 構 築 を 実 現 します これらはシステムの 将 来 性 があるだけでなく 他 社 システムまでも 包 含 し たエクストラネットシステムを 構 築 する 際 や 消 費 者 と 連 動 するECシステムを 構 築 する 際 に 特 に 重 要 な システム 要 素 となってきます イントロダクション 9
第 2 章 intra-mart の 標 準 機 能 intra-mart WebPlatform/AppFramework 第 2 章 intra-martの 標 準 機 能 10 intra-mart WebPlatform/AppFramework
2.1 im-bizapi(java 業 務 コンポーネント 群 ) 概 要 2.1 im-bizapi(java 業 務 コンポーネント 群 ) 概 要 intra-mart WebPlatform/AppFrameworkに 内 包 されているフレームワークでは Webシステム 構 築 で よく 利 用 される 機 能 を Javaコンポーネント として 数 多 く 提 供 しており JavaClassまたはEJBコン ポーネントとして 再 利 用 が 可 能 です(アクセスセキュリティ モジュールやワークフロー モジュール ポータルモジュールなど これらを 総 称 して im-bizapi と 呼 んでいます) これにより 従 来 ゼロから 開 発 したり 他 社 製 品 を 組 み 合 わせないと 実 現 できない 複 雑 な 機 能 を 用 意 されているJava 業 務 コンポー ネント 群 を 組 み 合 わせることで 大 規 模 なWebシステムを 短 期 間 かつ 高 品 質 に 構 築 できます この im-bizapiは 2つのアプリケーション 開 発 モデル(スクリプト 開 発 モデル JavaEE 開 発 モデル)から 同 様 に 呼 び 出 して 活 用 することができます 2.1.1 利 用 方 法 1 JavaEE 開 発 モデルの 利 用 intra-mart WebPlatform/AppFrameworkに 内 包 されているフレームワーク( 下 図 のフレームワーク 部 分 )には Java 業 務 コンポーネント 群 (im-bizapi) だけでなく JavaEEフレームワーク(im-JavaEE Framework) もあわせて 用 意 されています JavaEE 開 発 で 必 要 になる 共 通 的 な 処 理 はすべて JavaEE フレームワーク(im-JavaEE Framework) 内 に 隠 蔽 化 されて 実 装 されているため JavaEEによる Webシステムの 開 発 生 産 性 を 大 きく 向 上 させることができます 特 に このJavaEEフレームワーク(im-JavaEE Framework)を 利 用 するコンポーネント 開 発 について は 雛 型 となる スケルトン を 利 用 することで さらに 生 産 性 を 高 めることが 可 能 となります( 共 通 部 分 はあらかじめ 実 装 されているので 開 発 者 は 独 自 のコンポーネントを 作 成 する 場 合 スケルトンをコピ ーし 実 装 されていない 箇 所 を 埋 めてコンポーネントを 作 成 することになります) 作 成 されたコンポー ネントはプロパティ 設 定 によりJavaEEフレームワーク(im-JavaEE Framework)にあてはめていくこ とで 動 作 します im-javaee Frameworkの 中 のサービスフレームワークの 代 わりにオープンソースフレームワークとして Jakartaプロ ジェクトから 提 供 されている Struts を 利 用 することもできます イントロダクション 11
第 2 章 intra-mart の 標 準 機 能 2.1.2 利 用 方 法 2 スクリプト 開 発 モデルの 利 用 スクリプト 開 発 モデルは 取 り 回 しに 優 れ コードの 作 成 修 正 が 容 易 と 見 なされる 軽 量 プログラミング 言 語 を 採 用 したフレームワークを 基 盤 とした 開 発 モデルで intra-martではjavascriptを 採 用 しています プログラマ 負 担 の 軽 い 開 発 を 実 現 し 初 心 者 にもお 勧 めできる 簡 易 性 を 持 った 開 発 モデルで おもに 短 期 間 でのWebシステム 開 発 に 向 いています JavaScriptを 開 発 言 語 として 採 用 すると クライアントサ イドおよびサーバサイド 双 方 の 開 発 言 語 を 統 一 できるという 大 きなメリットが 得 られます また JavaScriptは Ajaxが 普 及 したことにより 再 び 脚 光 をあびてきている 言 語 でもあります intra-martでは あらかじめ 再 利 用 可 能 な モジュール として 用 意 されているJava 業 務 コンポーネント (im-bizapi)をプレゼンテーションページ(ユーザインタフェースを 担 うHTMLファイル)やファンクシ ョンコンテナ( 業 務 ロジックを 記 述 するJavaScriptファイル)から 呼 び 出 して 利 用 することができます 2.1.3 Java 業 務 コンポーネント 群 (im-bizapi) Java 業 務 コンポーネント 群 (im-bizapi)に 用 意 されている モジュール は それぞれ 利 用 する 形 態 が 異 なりますので 以 下 のように 分 類 されています 各 モジュールの 詳 細 内 容 はAPIリストを 参 照 してくださ い 詳 細 については スクリプト 開 発 モデル プログラミングガイド および JavaEE 開 発 モデル プ ログラミングガイド を 参 照 してください また ほとんどのモジュール 群 のソースコードは 公 開 されて いるため モジュール 自 体 の 機 能 をカスタマイズして 拡 張 することが 可 能 です 12 intra-mart WebPlatform/AppFramework
2.1 im-bizapi(java 業 務 コンポーネント 群 ) 概 要 2.1.3.1 ユーザインタフェース 層 画 面 共 通 モジュール WebベースでのGUI 開 発 でよく 利 用 される 画 面 部 品 のモジュール(スプレッドシート 入 力 チェック ポ ップアップ タブなどのタグライブラリ)です それぞれのモジュールに 適 当 なプロパティを 設 定 して 呼 び 出 すだけで データベースと 連 動 したユーザー インターフェイスを 簡 単 に 作 成 できます スクリプト 開 発 モデルではプレゼンテーションページで 利 用 される 以 下 のモジュール 群 は すべてHTML 文 書 の 中 で <IMART>タグ で 呼 び 出 すことができます JavaEE 開 発 モデルではJSPファイルの 中 で intra-martタグライブラリ を 利 用 します intra-martタグライブラリの 詳 細 については API リスト を 参 照 してください 帳 票 印 刷 モジュール これまで 帳 票 の 印 刷 はイントラネットのシステム 開 発 で 一 番 困 難 と 言 われていました intra-martには エクステンションシリーズ( 別 売 )が 用 意 されています IM-PDFデザイナー IM-X Server( 総 合 帳 票 機 能 ) PDFを 採 用 することにより より 複 雑 な 帳 票 形 式 への 対 応 が 可 能 となる オプションの エクステンションモジュールです IM-X Server を 利 用 することにより Web 帳 票 の 電 子 化 (PDF/XML)やサーバ 大 量 印 刷 FAX/Mail 送 信 までトータルした 帳 票 の 課 題 を 解 決 することができます きめ 細 かい 帳 票 作 成 が 簡 単 に 行 え 開 発 工 数 を 大 幅 に 削 減 できます オプション 追 加 により 帳 票 作 成 の 履 歴 管 理 負 荷 分 散 / 冗 長 化 機 能 やFAX 送 信 機 能 を 付 加 できます イントロダクション 13
第 2 章 intra-mart の 標 準 機 能 グラフ 描 画 モジュール グラフ 描 画 モジュールを 利 用 することで 数 値 データをグラフ 化 してHTMLに 表 示 することができます グラフ 描 画 モジュールには 次 の5 種 類 のグラフが 用 意 されています スクリプト 開 発 モデル JavaEE ベースの 両 方 の 開 発 モデルに 対 応 しています < 利 用 できるグラフの 種 類 > 折 れ 線 グラフ 棒 グラフ 円 グラフ レーダーチャート ポートフォリオ <グラフの 表 示 例 > 詳 細 については スクリプト 開 発 モデル プログラミングガイド および JavaEE 開 発 モデル プログラミングガイド を 参 照 してください カレンダ 表 示 モジュール 日 付 の 入 力 に 使 用 するユニットで 曜 日 休 日 営 業 日 等 を 管 理 する 機 能 を 持 っています Ajax 技 術 を 利 用 して 実 装 されているので カレンダのデータのみをサーバに 問 い 合 わせて 別 レイヤとして 表 示 されま す このため ウィンドウ 間 のデータ 連 携 等 を 意 識 することなく 使 い 勝 手 の 良 い 画 面 を 作 成 できます 会 社 独 自 の 休 日 などの 管 理 は ログイングループ 管 理 の カレンダ- 設 定 で 行 います なお カレ ンダーの 設 定 は 複 数 持 つことができ 本 社 と 工 場 海 外 の 支 社 など 状 況 に 応 じて 使 い 分 けることができま す 詳 細 については スクリプト 開 発 モデル プログラミングガイド および JavaEE 開 発 モデル プログラミングガイド を 参 照 してください 14 intra-mart WebPlatform/AppFramework
2.1 im-bizapi(java 業 務 コンポーネント 群 ) 概 要 ツリー 表 示 モジュール ツリー 表 示 モジュールを 組 み 込 むと 階 層 化 されたデータをツリー 表 示 することができ 階 層 構 造 の 把 握 や メニューの 選 択 が 用 意 になります <ツリー 表 示 ユニットの 例 > 詳 細 については スクリプト 開 発 モデル プログラミングガイド および JavaEE 開 発 モデル プログラミングガイド を 参 照 してください Ajaxアプリケーション 開 発 ツール マスカット マスカットとは Webブラウザ 上 で 動 作 するAJAXベースのリッチクライアントを 開 発 するオープンソー ス フレームワークです intra-mart WebPlatform/AppFrameworkがサポートする2つのアプリケーション 開 発 モデル(スクリ プト 開 発 モデル JavaEE 開 発 モデル)と 連 携 することにより リッチクライアントを 容 易 に 開 発 するこ とができます 詳 細 については マスカット 連 携 プログラミングガイド を 参 照 してください イントロダクション 15
第 2 章 intra-mart の 標 準 機 能 2.1.3.2 業 務 基 盤 モジュール 業 務 基 盤 モジュールには アプリケーション 共 通 モジュール メール 連 携 モジュール 外 部 ソ フトウェア 接 続 モジュール の4つのモジュールが 用 意 されています これらのモジュールは スクリプ ト 開 発 モデルではファンクションコンテナからオブジェクトの 形 式 で 呼 び 出 すことができ JavaEE 開 発 モデルでは ServletからJavaClassやEJBコンポーネントとして 利 用 することができます アプリケーション 共 通 モジュール アプリケーション 開 発 に 必 要 な 処 理 ロジックのモジュールが 使 いやすくオブジェクト 化 されています これらオブジェクトをビジネスロジックに 組 み 込 んで 編 集 していくことで ロジックの 作 り 込 みをせずに 多 階 層 アーキテクチャに 基 づいたWebシステムの 開 発 を 短 期 間 で 行 うことが 可 能 になります 提 供 されるアプリケーション 共 通 モジュールのオブジェクト 概 要 アプリケーション 開 発 に 必 要 な 処 理 ロジックのモジュール(セッション 管 理 やDBアクセスなど)が 使 いや すくオブジェクト 化 されて 提 供 されています このオブジェクトの 利 用 により ページをまたいだセッシ ョン 管 理 を 実 現 することができます またフッター 等 に 利 用 する 会 社 名 称 や 各 種 データベースへのログイ ンユーザ 名 等 の 情 報 も このオブジェクトから 利 用 できます これらのオブジェクトをアプリケーション ロジックに 組 み 込 んで 編 集 していくことで 余 計 なロジックの 作 りこみをせずに 複 雑 なWebシステムの 開 発 を 短 期 間 で 行 うことが 可 能 になります その 他 アプリケーションの 環 境 変 数 を 含 めた 各 設 定 値 へのアクセス 用 オブジェクト 区 分 コードへのア クセス 用 オブジェクト データベース 関 連 の 汎 用 オブジェクト 日 付 関 連 オブジェクト デバック 関 連 オ ブジェクト URL 管 理 オブジェクトなど 多 数 用 意 されています これらにより 現 在 接 続 している 社 員 コ ードや 直 前 に 表 示 したHTMLページ 名 などさまざまな 情 報 にアクセスできます また 複 数 DBへの 同 時 アクセスメソッドや 大 量 の 検 索 データに 対 して 指 定 した 件 数 ごとに 結 果 を 画 面 表 示 する 機 能 の 検 索 ストリーミング アプリケーションロック 機 能 XML 対 応 モジュールなど 高 度 な 機 能 が 含 まれています アプリケーション 共 通 モジュールの 詳 細 については APIリスト を 参 照 してください 16 intra-mart WebPlatform/AppFramework
2.1 im-bizapi(java 業 務 コンポーネント 群 ) 概 要 アクセスセキュリティモジュール ユーザやロールなどのログイン セキュリティ 情 報 を 操 作 するためのモジュールです ログインするユー ザの 認 証 機 能 はもちろん ユーザのアクセス 権 に 応 じた 固 有 のWebページを 表 示 することができます た とえば 一 般 社 員 がアクセスしたときには アクセス 権 限 のないページはメニューにもあらわれないため ユーザはその 存 在 を 一 切 意 識 することはありません しかし 管 理 者 がアクセスした 場 合 には 同 じペー ジでも 管 理 者 が 利 用 できるメニューまで 表 示 されることになります アクセスセキュリティ モジュール を 利 用 することで このようなユーザに 応 じて 内 容 の 異 なるページ 構 成 を 組 むことが 可 能 になります 設 定 方 法 については ログイングループ 管 理 者 操 作 ガイド を 参 照 してください <ログインするユーザごとにアクセス 権 限 のあるページメニューが 表 示 される> ユーザごとの 言 語 の 切 り 替 えや 画 面 のテーマカラーの 選 択 が 可 能 となりました また これまでユーザ 情 報 の 設 定 はシステム 管 理 者 がすべてを 行 う 使 用 でしたが システム 管 理 者 の 配 下 にログイングループ 管 理 者 を 設 定 し ログイングループ 管 理 者 がユーザ 情 報 の 設 定 を 行 えるようになりました イントロダクション 17
第 2 章 intra-mart の 標 準 機 能 さらに アクセスセキュリティの 各 機 能 はAPI 化 されており それらを 利 用 して 独 自 のメニュー 画 面 を 作 成 することもできます intra-martでは 完 全 なSecure Sockets Layer(SSL)サポートを 提 供 します これにより 送 信 されるコ ンテンツに 対 して 暗 号 化 セキュリティをかけることが 可 能 になります さらに ユーザ 認 証 はLDAPと の 連 携 も 可 能 です 標 準 で 用 意 されているアクセスセキュリティモジュールのほかに シングルサインオンを 実 現 するエクス テンションシリーズ IM-SecureSignOn( 別 売 ) も 用 意 されています シングルサインオンを 実 現 する アクセスセキュリティ モジュール: IM-SecureSignOn 独 自 のエージェント 型 リバースプロシキ 方 式 により 適 用 範 囲 が 広 く 導 入 運 用 が 容 易 なシングルサインオンを 実 現 するエクステンション モジュールです 簡 易 ログイン 認 証 機 能 により 他 システムやパッケージとの 連 携 も 容 易 です 詳 細 については システム 管 理 者 操 作 ガイド グループ 管 理 者 操 作 ガイド および アクセスセキュリティ 仕 様 書 を 参 照 してください 18 intra-mart WebPlatform/AppFramework
2.1 im-bizapi(java 業 務 コンポーネント 群 ) 概 要 intra-martのアクセスセキュリティの 考 え 方 intra-martのユーザには ロール 組 織 役 職 などの 属 性 を 設 定 することができます そして intra-mart 画 面 のフォルダやページにも ロール 組 織 役 職 などを アクセス 権 限 として 設 定 することができます ユーザがintra-martにログインすると そのユーザが 持 つロール 組 織 役 職 などの 属 性 と 一 致 するアクセス 権 限 を 持 つフォルダやページだけが 表 示 されるようになります アクセスセキュリティのAPIが 公 開 されています 外 部 ユーザアプリケーションから intra-mart のアクセスセキュリティの 機 能 を 利 用 することができ 企 業 内 のアクセスセキュリティを 一 元 管 理 することができます イントロダクション 19
第 2 章 intra-mart の 標 準 機 能 LDAPとの 連 携 intra-martは ディレクトリサービスへの 標 準 的 なアクセス 手 段 であるプロトコルLDAP (Lightweight Directory Access Protocol)にも 対 応 しています intra-martは 認 証 モジュ ールによって intra-mart 標 準 の 認 証 システムをはじめ LDAPサーバなどに 接 続 して 認 証 する 形 式 となっています この 認 証 モジュールを 変 更 することによって 各 社 の 認 証 システムにも 対 応 す ることができます LDAPとの 連 携 については システム 管 理 者 操 作 ガイド および アクセスセキュリティ 仕 様 書 を 参 照 してください よく 利 用 する 画 面 を 登 録 できる マイメニュー 設 定 intra-martでは 頻 繁 に 利 用 する 画 面 を マイメニュー として 登 録 することができます 登 録 さ れたメニューは 標 準 で 表 示 されるメニューの 最 上 部 もしくは 画 面 上 部 にアイコンとしてに 表 示 さ れ メニューの 階 層 をたどらなくてもワンタッチでアクセスできるようになります マイメニュ ー へのページの 登 録 は [ユーザ 設 定 ]の[マイメニュー 設 定 ]メニューで 行 います 20 intra-mart WebPlatform/AppFramework
2.1 im-bizapi(java 業 務 コンポーネント 群 ) 概 要 ポータル 画 面 に 表 示 する メニューリンク メニューリンクはポートレットとして 提 供 され グループポータル 画 面 上 に 任 意 のintra-martのメ ニューを 表 示 させることができます マイメニュー はユーザ 個 人 ごとに 設 定 するのに 対 して メ ニューリンク はグループ 管 理 者 が 設 定 し 指 定 したユーザ(アクセス 権 制 御 )のポータル 画 面 に 表 示 させることができます イントロダクション 21
第 2 章 intra-mart の 標 準 機 能 ワークフローモジュール Webブラウザベースのワークフローを 構 築 するためのモジュールです 当 モジュールを 利 用 すると イン トラネット 環 境 での 多 階 層 の 承 認 ワークフローが 構 築 できます あらかじめ 設 定 された 承 認 ルートにした がって 承 認 者 宛 てに 承 認 ページURLリンクの 入 った 電 子 メールが 伝 達 されます そこから 承 認 者 は 自 分 の 承 認 ページを 起 動 し 承 認 行 為 を 行 います さらに 承 認 の 進 捗 状 況 のチェックなど きめ 細 かいワーク フローの 構 築 が 可 能 になります 電 子 メールは URLリンク 機 能 およびSMTPに 対 応 した 市 販 のメールソ フトに 対 応 しています 標 準 で 用 意 されているワークフローモジュールのほかに エクステンション モジュールとして IM-EX 申 請 システム( 別 売 ) が 用 意 されています 承 認 ルートはあらかじめ 設 定 しておくことや 申 請 / 承 認 時 に 次 の 承 認 者 を 画 面 から 選 択 することができま す また 既 存 の 人 事 システムと 連 動 すると 面 倒 な 承 認 ルートの 設 定 をなくすこともできます ワークフローモジュールの 持 つ 高 度 な 機 能 の 例 は 以 下 のようになっています 差 戻 し 機 能 案 件 を 申 請 者 または 直 前 の 承 認 者 に 戻 す 機 能 代 理 申 請 承 認 機 能 申 請 者 承 認 者 が 不 在 時 に 代 理 者 が 申 請 承 認 を 行 う 機 能 一 括 承 認 機 能 承 認 者 宛 の 複 数 の 申 請 に 対 して 一 括 で 承 認 / 否 認 を 行 う 機 能 根 回 し 機 能 現 在 依 頼 承 認 中 であることを 他 のユーザにもメールで 知 らせる 機 能 自 動 催 促 自 動 パス 機 能 承 認 者 の 設 定 承 認 期 限 がせまっている 申 請 について 処 置 ( 承 認 / 否 認 )を 促 す 通 知 をメール で 送 信 する 機 能 承 認 期 限 となったまたは 承 認 期 限 を 過 ぎた 申 請 について 自 動 的 に 承 認 し 次 の 承 認 者 に 申 請 を 送 信 する 機 能 承 認 ルート 上 の 承 認 者 は 個 人 だけでなく 組 織 や 役 職 でも 指 定 可 能 ( 人 事 異 動 組 織 改 変 に 強 い 構 造 のルート 設 定 が 可 能 ) 引 戻 し 機 能 案 件 を 引 き 戻 しも 可 能 承 認 案 件 振 替 機 能 特 定 案 件 に 対 する 承 認 権 限 を 第 三 者 に 委 譲 する 機 能 申 請 者 / 承 認 者 ルート 作 成 ワークフロー 稟 議 書 の 申 請 に 代 表 されるような 臨 機 応 変 なプロセスを 実 現 するワークフロー 基 本 のプロセスは 管 理 者 が 作 成 し 申 請 者 / 承 認 者 が 処 理 時 に 承 認 者 を 自 由 に 選 択 することができます 22 intra-mart WebPlatform/AppFramework
2.1 im-bizapi(java 業 務 コンポーネント 群 ) 概 要 途 中 保 存 機 能 アプリケーション 共 通 マスタの 履 歴 化 申 請 前 に 登 録 内 容 を 途 中 保 存 し 次 回 申 請 時 に 途 中 からスタートすることがで きる 機 能 アプリケーション 共 通 マスタの 履 歴 化 に 対 応 したルート 定 義 ができる 機 能 将 来 変 更 予 定 の 組 織 情 報 をもとに ルート 情 報 を 作 成 することができる 期 間 化 されたルートの 選 択 期 間 化 されたルートを 過 去 未 来 に 渡 って 選 択 できる 異 動 が 発 生 した 場 合 に も 前 職 現 職 どちらの 立 場 で 起 票 を 行 うかが 選 択 可 能 ワークフローのステータスに 対 応 し たダイレクトメニューの 採 用 きめ 細 かく 設 定 できる 代 理 設 定 項 目 の 表 示 設 定 ワークフローモニタリング ワークフローのステータスをそのままメニューに 採 用 しているため 直 感 的 でわ かりやすいメニュー 代 理 申 請 承 認 も 独 立 したメニューを 用 意 ( 上 図 参 照 ) プロセス 定 義 単 位 バージョン 単 位 そして タスク 単 位 そしてこれらを 組 み 合 わせて きめ 細 かく 代 理 設 定 を 行 うことが 可 能 起 票 起 票 済 未 処 理 処 理 済 参 照 など 一 覧 画 面 の 表 示 項 目 を 変 更 すること ができる ワークフロー 管 理 者 があらかじめ 表 示 項 目 を 編 集 したセットを 用 意 し ておき 一 般 ユーザはこの 中 から 任 意 に 選 択 することが 可 能 完 了 案 件 ならびに 未 完 了 案 件 の 状 態 をリアルタイムにモニタリングすることが 可 能 ワークフロー 機 能 は アドバンスト 版 および エンタープライズ 版 のみの 機 能 となります ワークフローの 詳 細 については ワークフロー 操 作 ガイド を 参 照 してください イントロダクション 23
第 2 章 intra-mart の 標 準 機 能 バッチ 管 理 モジュール Webサーバ 自 身 はもともとバッチ 処 理 を 想 定 していません しかし 業 務 アプリケーションを 構 築 する 場 合 は バッチで 処 理 を 実 行 したい 時 がでてきます バッチ 管 理 モジュールは そうした 要 求 を 実 現 するた めにサーバ 上 のサーバサイドスクリプトプログラムやJavaプログラムをバッチ 実 行 できるスケジューラ 機 能 を 提 供 しています intra-martの 設 定 画 面 から バッチプログラム(JavaScriptまたはJava)とプ ログラムの 実 行 時 刻 を 設 定 していきます 詳 細 については グループ 管 理 者 操 作 ガイド を 参 照 してください メール 連 携 モジュール このモジュールを 利 用 することで 他 のSMTP 互 換 のメールサーバに 対 するメール 送 信 処 理 を 行 うなど メールに 連 携 したアプリケーションを 簡 単 に 構 築 することができます たとえば 掲 示 板 にある 情 報 を 日 付 指 定 で 指 定 ユーザに 一 斉 にメール 配 信 するエージェントを 作 成 したり 売 上 情 報 を 定 期 的 に 社 員 にメール 配 信 するようなアプリケーションを 構 築 したりすることができます < 売 上 情 報 などをメールで 自 動 配 信 することができます> 詳 細 については スクリプト 開 発 モデル プログラミングガイド および JavaEE 開 発 モデル プログラミングガイド を 参 照 してください 24 intra-mart WebPlatform/AppFramework
2.1 im-bizapi(java 業 務 コンポーネント 群 ) 概 要 外 部 ソフトウェア 接 続 モジュール intra-martアプリケーションと 外 部 システムを 連 携 するためのモジュールです このモジュールを 利 用 することで 市 販 のソフトウェアや 外 部 システムなどからリアルタイムに 接 続 し im-bizapiを 呼 び 出 して 連 携 できます 詳 細 については スクリプト 開 発 モデル プログラミングガイド および JavaEE 開 発 モデル プログラミングガイド を 参 照 してください イントロダクション 25
第 2 章 intra-mart の 標 準 機 能 2.1.3.3 業 務 基 盤 ツール FormatCreator FormatCreatorは intra-mart 上 で 動 作 するドキュメントワークフローの 起 票 画 面 ( 申 請 書 )を ノンプ ログラミングで 作 成 するためのソリューションです ウィザード 形 式 の 画 面 にしたがって 設 定 するだけで ワークフローの 申 請 画 面 を 作 成 することができるので HTML JavaScript XMLなどのWeb 画 面 作 成 言 語 およびデータベースに 関 する 知 識 を 必 要 としません 申 請 書 の 入 力 項 目 に 対 する 入 力 必 須 や 文 字 数 などの 入 力 チェックも 設 定 だけで 機 能 するようになっています 作 成 した 申 請 書 は 専 用 の 連 携 画 面 で 簡 単 にintra-martのワークフローと 連 携 させることができます また 定 期 的 に 起 票 する 案 件 に 関 しては 専 用 の 起 票 画 面 から 以 前 に 起 票 したものを 再 利 用 して 効 率 よ く 起 票 することができます 申 請 書 項 目 申 請 書 の 作 成 は ウィザードにしたがって 設 定 するだけで 完 成 します 申 請 書 に 必 要 な 項 目 は 次 の 図 に 示 すような さまざまな 項 目 が 用 意 されていて それぞれに 対 して 入 力 チェックなどを 制 御 する 設 定 項 目 が 用 意 されています また 項 目 のレイアウトは 表 作 成 のように セルの 結 合 と 解 除 行 列 の 追 加 で 行 います 26 intra-mart WebPlatform/AppFramework
2.1 im-bizapi(java 業 務 コンポーネント 群 ) 概 要 メニュー 構 成 FormatCreatorには 次 のような3つの 機 能 が 用 意 されています 申 請 書 メンテナンス ワークフロー 連 携 申 請 書 再 利 用 申 請 書 の 新 規 作 成 と 編 集 を 行 う 機 能 です 申 請 書 は 新 規 に 作 成 するほか に 既 存 申 請 書 のコピーを 作 成 して 効 率 よく 新 しい 申 請 書 を 作 成 する 機 能 も 用 意 されています FormatCreatorで 作 成 した 申 請 書 をintra-martのワークフローの 起 票 画 面 に 利 用 できるように 連 携 させる 機 能 です 連 携 には ワークフローの 新 しいプロセス とするか または 既 存 プロセスの 新 しいバージョンとするかを 選 ぶことができま す FormatCreatorで 作 成 した 申 請 書 を 利 用 したプロセスを 起 票 すると 申 請 書 再 利 用 の 画 面 に 一 覧 表 示 されるようになります この 画 面 では この 起 票 済 みの 案 件 を 再 利 用 して 効 率 よく 新 しく 起 票 することができます 詳 細 については FormatCreator 操 作 ガイド を 参 照 してください FormatCreatorは アドバンスト および エンタープライズ for BPM のみの 機 能 となります イントロダクション 27
第 2 章 intra-mart の 標 準 機 能 ViewCreator ViewCreatorはintra-martの 画 面 上 から データベースのデータを 使 用 して 様 々な 表 やグラフを 作 成 す ることができるツールです 使 用 可 能 なデータベースには ログイングループデータベースとシステムデ ータベースがあります ViewCreatorの 機 能 は クエリメンテナンスとデータ 参 照 メンテナンスの2つの 操 作 に 大 きく 分 かれます クエリメンテナンス データ 参 照 メンテナンス データベース 上 のテーブルやビューの 結 合 などを 行 い データ 参 照 で 使 用 する 元 データとなる 表 を 作 成 します また 作 成 したクエリのSQL 表 示 やViewの 作 成 あるいは 表 をプレビュー 表 示 することもできます クエリメンテナンスで 作 成 したデータの 表 示 の 仕 方 (グラフまたは 表 など)やデー タの 絞 込 みに 関 する 設 定 を 行 います また 参 照 権 限 をデータ 参 照 単 位 で 設 定 することができます 作 成 したデータ 参 照 は 表 示 時 にデータの 検 索 や 表 示 項 目 の 絞 り 込 み 並 び 順 の 変 更 などを 行 うこと ができます また データ 参 照 はポートレットとして 追 加 したり CSV/HTML 形 式 のファイルとして 出 力 あるいはスクリプト 開 発 モデルのプログラムファイルとして 出 力 可 能 で 出 力 されたプログラムソー スは 自 由 にカスタマイズして 再 利 用 が 可 能 です このように データベースの 中 のデータを 元 に 様 々な 表 やグラフの 作 成 / 表 示 をWebブラウザ 上 で 簡 単 に 操 作 できるのがViewCreatorの 大 きな 特 徴 です <ViewCreator> 詳 細 については ViewCreator 管 理 者 操 作 ガイド および ViewCreator ユーザ 者 操 作 ガイド を 参 照 してくださ い 28 intra-mart WebPlatform/AppFramework
2.1 im-bizapi(java 業 務 コンポーネント 群 ) 概 要 TableMaintenance TableMaintenanceでは データベース 上 の 既 存 のテーブルに 対 してレコードの 新 規 登 録 更 新 削 除 を 行 うことができます データベースを 使 用 したアプリケーションを 作 成 した 際 に 必 要 になることの 多 いマ スタメンテナンスの 機 能 を 簡 単 な 設 定 操 作 のみで 簡 易 的 に 実 現 することができます ログイングループ 管 理 者 が メンテナンスを 行 うテーブルに 対 してアクセス 権 の 設 定 を 行 うことで 一 般 ユーザが 参 照 できる テーブルを 制 限 することもできます TableMaintenanceで 扱 えるデータベースは ログイングループデ ータベースとシステムデータベースです TableMaintenanceの 操 作 は 以 下 の2つに 分 類 することができます テーブルの 管 理 データベース 上 のテーブルをメンテナンスの 対 象 とするテーブルとして 追 加 しま す また アクセス 権 を 設 定 して そのテーブルを 操 作 できるユーザを 限 定 するこ ともできます この 操 作 は ログイングループ 管 理 者 が 行 います データの 編 集 管 理 者 からアクセス 権 を 与 えられたユーザは テーブルのデータの 追 加 更 新 削 除 が 行 えるようになります < TableMaintenanceの 概 念 > 詳 細 については TableMaintenance 管 理 者 操 作 ガイド を 参 照 してください イントロダクション 29
第 2 章 intra-mart の 標 準 機 能 イベントナビゲータ イベントナビゲータは 条 件 によって 複 雑 に 分 岐 する 申 請 書 などの 画 面 へのアプローチを ウィザード 形 式 で 導 く 画 面 を 作 成 するメニューです 下 記 の 例 は 会 社 内 の 社 宅 規 定 にもとづき 適 切 な 申 請 を 導 くサンプルです 表 示 される 質 問 に 答 えて ゆくだけで 最 適 な 申 請 書 にたどりつけるようになります <イベントナビゲータの 概 要 > 30 intra-mart WebPlatform/AppFramework
2.1 im-bizapi(java 業 務 コンポーネント 群 ) 概 要 2.1.3.4 アプリケーション 共 通 マスタ 会 社 データ 組 織 データ グループデータ 取 引 先 データ 顧 客 データ 商 品 データなど システム 開 発 でよく 利 用 するマスタが 標 準 で 用 意 されています これらのマスタを 利 用 することにより 設 計 工 程 まで 含 め 短 期 間 でのシステム 開 発 が 可 能 となります また 各 intra-martアプリケーションシリーズは すべ てこのアプリケーション 共 通 マスタをベースに 構 築 されていますので 各 intra-martアプリケーションシ リーズと 連 携 したシステムが 開 発 できます さらに マスタにアクセスするためのAPIなども 標 準 で 用 意 さ れています これらのマスタはすべてデータベース 仕 様 も 公 開 されており さらに 用 意 されているAPIを 利 用 しながらユ ーザアプリケーションを 作 りこんでいくことができます また 各 intra-martアプリケーションシリーズ も アプリケーション 共 通 マスタを 利 用 して 構 築 されていますので 必 要 なデータを 相 互 連 携 させながら アプリケーションを 拡 張 していくこともできます 詳 細 については アプリケーション 共 通 マスタ 仕 様 書 アプリケーション 共 通 マスタAPIガイドライン を 参 照 してく ださい イントロダクション 31
第 2 章 intra-mart の 標 準 機 能 アプリケーション 共 通 マスタで 定 義 される 組 織 とは 組 織 とは 会 社 - 組 織 ( 事 業 部 部 課 など)-ユーザというデータの 階 層 を 指 します 会 社 を 登 録 し その 会 社 に 属 する 組 織 として 事 業 部 や 部 課 係 などの 組 織 を 登 録 します 組 織 を 階 層 化 したり 組 織 のどの 階 層 に 対 しても ユーザを 紐 づけたりすることができます 上 記 図 中 の グループA と グループB がパブリックグループに 相 当 します アプリケーション 共 通 マスタで 定 義 されるパブリックグループとは パブリックグループは 企 業 内 の 部 門 など 組 織 にとらわれないユーザグループを 作 成 したい 場 合 に 利 用 します アプリケーション 共 通 マスタで 定 義 されるプライベートグループとは パブリックグループと 同 様 に 組 織 に 関 係 なく 自 由 に 作 成 できるユーザグループで ユーザ 自 身 で 自 由 にユーザグループを 作 成 できるように 用 意 しています 32 intra-mart WebPlatform/AppFramework
2.1 im-bizapi(java 業 務 コンポーネント 群 ) 概 要 アプリケーション 共 通 マスタで 定 義 される 商 品 マスタとは intra-martで 作 成 する 複 数 のアプリケーションから 共 同 で 利 用 することができる 商 品 マスタが 標 準 で 用 意 されています アプリケーション 共 通 マスタの 国 際 化 対 応 アプリケーション 共 通 マスタは 国 際 化 対 応 されています 例 えば 会 社 名 や 組 織 名 などを 多 言 語 登 録 することができます また 登 録 したデータはロケールを 指 定 して 検 索 することにより その 時 々に 応 じて 必 要 な 言 語 でデータを 扱 うことができます さらに アクセスセキュリティのAPIを 利 用 して ログインセッションのロケールと 連 動 させることによって アプリケーションを 国 際 化 対 応 させるこ とができます イントロダクション 33
第 2 章 intra-mart の 標 準 機 能 2.1.4 標 準 画 面 の 作 り 方 ( 共 通 画 面 デザイン) intra-martの 標 準 画 面 は 提 供 されている 共 通 化 APIを 利 用 して オリジナルな 画 面 デザインでアプリ ケーションを 開 発 することができます 画 面 のデザインは メインページパターン と カラーパター ン の2つから 構 成 されています メインページパターンは HTMLまたはJSPなどで 作 成 された 画 面 の デザインページで カラーパターンはCSSファイルとなっています これらのファイルは グループ 管 理 者 が 用 意 します 一 般 ユーザの 画 面 には グループ 管 理 者 が 用 意 した メインページパターン と カ ラーパターン が 表 示 され その 組 み 合 わせの 数 だけ 画 面 をカスタマイズすることができます 標 準 の 画 面 には 2つのメインページパターンと5つのカラーパターンが 用 意 されています デザインが 共 通 化 されると 他 の 画 面 と 見 た 目 や 操 作 性 が 統 一 され メニューから 呼 び 出 されたときに 利 用 者 が 違 和 感 なくアプリケーションを 操 作 できるなどのメリットがありますので アプリケーション 開 発 の 際 には デザイン 統 一 の 方 法 としてこのガイドラインの 利 用 を 検 討 してください 画 面 作 成 に 関 しては 以 下 のドキュメントが 用 意 されています 画 面 デザインガイドライン 画 面 デザインスタイルシート 仕 様 書 アクセスセキュリティ 仕 様 書 画 面 デザインガイドラインに 準 じたAPIも 用 意 されています API 仕 様 は 画 面 デザインガイドライン または APIリスト を 参 照 してください WebPlatform/AppFrameworkの 持 つ 各 画 面 ソースは そのほとんどがプレーンな 状 態 でインストールされています 画 面 デザインガイドラインの 適 用 方 法 や APIの 使 用 例 としてご 活 用 ください 34 intra-mart WebPlatform/AppFramework
2.1 im-bizapi(java 業 務 コンポーネント 群 ) 概 要 < 標 準 で 2つのメインパターンと5つのカラーパターンが 用 意 されている> イントロダクション 35
第 2 章 intra-mart の 標 準 機 能 intra-mart WebPlatform/AppFrameworkを 利 用 する 上 での 規 定 事 項 intra-mart WebPlatformならびにAppFrameworkを 利 用 したアプリケーション 構 築 には いく つかの 規 定 事 項 があります 1 ユーザ 設 定 画 面 の 利 用 intra-martへのログインユーザ 管 理 は ユーザ 設 定 画 面 を 使 用 しています アプリケーション 構 築 の 際 にも ログインユーザの 管 理 は そのまま ユーザ 設 定 を 利 用 してください アクセス セキュリティ モジュールやワークフロー モジュールなどは このユーザ 設 定 で 作 成 されたアカ ウント 情 報 の 利 用 が 前 提 で 稼 動 します( 次 のColumnを 参 照 してください) ユーザ 管 理 マスタの 登 録 については グループ 管 理 者 操 作 ガイド を 参 照 してください 2 フォルダ/ページのメニュー 構 成 intra-martのメニュー 構 成 は メニューツリーのフレーム 利 用 が 前 提 となっています 特 に アク セスセキュリティ モジュールは このメニュー 構 成 に 従 うことが 前 提 となっています フォルダ やページへの 登 録 については グループ 管 理 者 操 作 ガイド を 参 照 してください ただし ア クセスセキュリティの 各 機 能 はAPI 化 されており それらを 利 用 して 独 自 のメニュー 画 面 を 作 成 す ることができます また これらのログインユーザ 管 理 機 能 やフォルダ/ページ 機 能 を 利 用 せずにintra-martをDBと 連 携 した 機 能 を 利 用 することも 可 能 です 36 intra-mart WebPlatform/AppFramework
2.1 im-bizapi(java 業 務 コンポーネント 群 ) 概 要 intra-martで 提 供 する 各 モジュール(im-BizAPI)のアカウント 情 報 への 依 存 について intra-martの 各 モジュールには intra-martのアカウント 情 報 ( ユーザ 設 定 画 面 でのユーザ 管 理 )の 利 用 時 にしか 使 用 できないものもあります 下 記 表 を 参 考 にしてください また 一 部 モジュー ルには 別 のモジュールの 利 用 を 前 提 として 使 用 可 能 となるものもあります 下 記 の 注 意 点 を 参 考 に してください intra-martモジュール(im-bizapi) 画 面 共 通 モジュール アカウント 情 報 なしで: 〇 利 用 可 能 一 部 利 用 不 能 利 用 不 能 *3 ポータルモジュール*1 グラフ 描 画 モジュール カレンダー 表 示 モジュール ツリー 表 示 モジュール アプリケーション 共 通 モジュール メール 連 携 モジュール 〇 〇 〇 〇 ワークフローモジュール*1 アクセスセキュリティモジュール バッチ 管 理 モジュール 〇 アプリケーション 共 通 マスタ エクステンションモジュール IM-PDFデザイナー 〇 *1 アクセスセキュリティモジュールの 利 用 が 前 提 のモジュールです(intra-martのアカウント 情 報 をプログラム 内 部 で 使 用 して 動 作 するモジュールです) *3 デザインタグはアカウント 情 報 に 依 存 しています アカウント 情 報 の 仕 様 については アクセスセキュリティ 仕 様 書 を 参 考 してください イントロダクション 37
第 2 章 intra-mart の 標 準 機 能 2.1.5 エクステンションシリーズ エクステンションシリーズは intra-mart WebPlatformやintra-mart AppFrameworkに 標 準 添 付 され ているモジュールとは 別 に 用 意 されている 拡 張 モジュール 群 (オプション 製 品 )です より 高 機 能 なモジ ュールが 必 要 なユーザのために 用 意 されており 必 要 に 応 じて 組 み 込 んで 標 準 のモジュールと 同 様 に 利 用 することができます 現 在 用 意 されているモジュールには 次 のようなものがあります 2.1.5.1 IM-PDFデザイナー( 別 売 ) PDFを 採 用 することにより より 複 雑 な 帳 票 形 式 やページ 制 御 の 対 応 が 可 能 となるモジュールで 単 票 お よび 連 票 に 対 応 します ビジュアルな 帳 票 デザイン 作 成 ツール IOWebDoc で 帳 票 フォーマットを 作 成 します ユーザアプリケーションからのデータはCSV 形 式 またはメモリ 経 由 で 受 け 渡 し PDFファイルを 作 成 してからAcrobatを 起 動 して 印 刷 します 複 数 のアプリケーションサーバを 配 置 した 環 境 では IM-PDFデザイナーをStorage Service 上 で 稼 動 させることによって 生 成 したPDFファイルを 一 元 管 理 し て クライアントへダウンロードすることが 可 能 になります <IM-PDFデザイナーサンプル 画 面 > 38 intra-mart WebPlatform/AppFramework
2.1 im-bizapi(java 業 務 コンポーネント 群 ) 概 要 2.1.5.2 IM-X Server( 別 売 ) 大 量 帳 票 出 力 やプリンタへのダイレクト 出 力 電 子 署 名 とタイムスタンプのサポートも 可 能 な 印 刷 モジュ ールです XML 対 応 の 高 機 能 ビジネス 帳 票 ソリューションで オンデマンド 印 刷 ダイレクト 出 力 など 多 様 な 機 能 を 提 供 します さまざまな 形 式 の 帳 票 の 生 成 出 力 配 信 が 可 能 IM-X-Serverの 帳 票 生 成 はXMLで 定 義 されるため 電 子 化 (PDF HTML CSV OPR)や 印 刷 (ダイ レクト 印 刷 FAX 送 信 )から 検 索 入 力 フォームまで 1ソースマルチフォーマットで 生 成 でき 開 発 工 数 を 削 減 することが 可 能 です 基 幹 帳 票 生 成 から 日 々の 業 務 に 必 要 なビジネスレポートまで トータルソ リューションを 提 供 します きめ 細 かい 帳 票 作 成 が 可 能 なデザインツールも 合 わせて 提 供 日 本 固 有 の 複 雑 な 罫 線 やページ 単 位 のレポート 連 帳 単 票 サブレポート ラベル カスタムサイズ 等 の 設 計 に 対 応 動 的 グラフ 生 成 動 的 バーコード 生 成 電 子 署 名 表 計 算 複 数 オブジェクトのグループ 化 による 段 組 表 現 など フレキシブルな 表 現 でさまざまなビジネス 帳 票 に 対 応 します イントロダクション 39
第 2 章 intra-mart の 標 準 機 能 2.1.5.3 IM-SecureSignOn(セキュア サイン オン)( 別 売 ) IM-SecureSignOnは シングルサインオンを 実 現 するツールです 社 内 のさまざまなWebシステムへの ログインも このSecureSignOnに 一 度 ログインするだけ すべての 認 証 が 完 了 します 独 自 のエージェ ント 型 リバースプロキシ 方 式 *により 適 応 範 囲 が 広 く 導 入 運 用 が 容 易 なシステムです また 簡 易 ログイン 認 証 機 能 により 他 システムやパッケージとの 連 携 も 容 易 です エージェント 型 リバースプロキシ 方 式 シングルサインオンを 実 現 するには 一 般 的 にリバースプロキシ 方 式 とエージェントモジュール 方 式 の2 つの 方 式 が 考 えられます IM-SecureSignOnでは これら 両 者 の 長 所 を 兼 ね 備 えた 独 自 のエージェント 型 リバースプロキシ 方 式 を 採 用 しています 40 intra-mart WebPlatform/AppFramework
2.1 im-bizapi(java 業 務 コンポーネント 群 ) 概 要 2.1.5.4 IM-SecureBlocker( 別 売 ) インターネットに 公 開 するWebアプリケーションのセキュリティ 対 策 を 低 コストで 実 現 することができま す 脆 弱 な 箇 所 にピンポイントで 適 用 が 可 能 なため 導 入 によるWebアプリケーション 全 体 への 影 響 を 最 小 限 に 抑 えることができます SecureBlockerは 入 力 パラメータを 検 査 し 自 動 的 に 無 害 化 してくれるJavaクラスライブラリです IM-SecureBlockerを 導 入 すると 次 のような 効 果 が 得 られます HTTP Request のパラメータの 入 力 値 チェック 機 能 の 検 討 実 装 コストが 削 減 できます 開 発 者 のスキルに 依 存 せず Web アプリケーション 脆 弱 性 対 策 が 実 施 できます Web サイトで 使 用 するパラメータごとにチェックを 制 御 可 能 です クロスサイトスクリプティング OS コマンドインジェクション ディレクトリトラバーサル SQL インジェクションのチ ェックが 可 能 です イントロダクション 41
第 2 章 intra-mart の 標 準 機 能 2.1.5.5 IM-EX 申 請 システム( 別 売 ) 電 子 申 請 のための 申 請 書 フォーマット 画 面 にExcelシートを 利 用 することができるソリューションです intra-martのワークフローと 組 み 合 わせて 利 用 することで 申 請 ワークフローを 設 定 だけでノンプラグラ ミングで 作 成 することができます 書 式 設 定 やマクロはExcelの 機 能 をそのまま 利 用 することができるので 入 力 チェックを 行 うこともできます 入 力 した 情 報 はデータベースの 指 定 のテーブルに 保 存 することが 可 能 です Excel 様 式 さえ 用 意 すれば 短 時 間 で 申 請 書 をWeb 化 することができます お 使 いのExcelの 様 式 を 入 力 画 面 に 活 用 し intra-mart のワークフロー 連 動 することができます Excelの 書 式 設 定 や 提 供 するマクロを 設 定 し クライアントサイドで 入 力 チェックが 行 えます Excelに 入 力 した 情 報 は データベースの 指 定 のテーブルに 保 存 可 能 です データベースに 保 存 されている 情 報 を 指 定 のExcel 様 式 で 出 力 できます Excel 様 式 の 登 録 入 力 チェック 等 すべて 設 定 だけでプログラム 言 語 の 知 識 がいりません 42 intra-mart WebPlatform/AppFramework
2.1 im-bizapi(java 業 務 コンポーネント 群 ) 概 要 2.1.5.6 IM-SonicESB( 別 売 ) IM-SonicESBは 企 業 内 に 分 散 している 複 数 の 既 存 システムを 連 携 する バックエンドシステム 統 合 プラッ トフォーム(ESB)です システム 間 のデータの 一 貫 性 を 保 証 する 機 能 も 実 装 しており Webサービス 同 士 を 高 信 頼 に 連 携 させるアプリケーションを 容 易 に 開 発 することが 可 能 です ビジネスプロセスワークフローモジュールと 連 携 することで バックエンドも 含 めたダイナミックかつミ ッションクリティカルなシステム 統 合 が 実 現 します ショート&ロングランニングプロセスに 対 応 したシステムを 実 現 intra-martのビジネスプロセスワークフローは さまざまなWebシステムを 業 務 フローに 従 って 柔 軟 に 連 携 させることができます いわゆるロングランニングプロセスを 実 現 しています 一 方 IM-SonicESB は 企 業 内 のさまざまな 既 存 システムを 高 信 頼 で 結 ぶ ショートランニングプロセス を 実 現 しています そして intra-martのビジネスプロセスワークフローからim-sonicesbと 連 携 することにより 複 数 の 業 務 プロセスや 業 務 システムを 統 合 制 御 自 動 化 し 業 務 フロー 全 体 を 最 適 化 するビジネスプロセスマ ネジメント(BPM)が 実 現 します イントロダクション 43
第 2 章 intra-mart の 標 準 機 能 IM-SonicESBの 高 信 頼 性 トランザクション IM-SonicESBは エラー 発 生 時 に 連 携 システム 間 のデータをの 一 貫 性 を 保 証 する 機 能 を 持 っています IM-SonicESBの 高 信 頼 性 メッセージ 保 証 IM-SonicESBは HTTP 上 の 高 信 頼 なメッセージを 実 現 するためのさまざまな 機 能 を 持 っています 44 intra-mart WebPlatform/AppFramework
2.1 im-bizapi(java 業 務 コンポーネント 群 ) 概 要 2.1.5.7 IM-ERPリアルコネクト( 別 売 ) intra-martでは ERPとリアルタイムに 連 携 できるエクステンションモジュールを 用 意 してます SAP JCo 技 術 を 利 用 してSAP 連 携 APIをライブラリ 化 しています 標 準 のJava 技 術 を 用 いて アドオン 開 発 を 低 コストで 行 うことが 可 能 になります 従 来 のバッチを 中 心 にした 連 携 から リアルタイムトラン ザクション 連 携 へとWebの 可 能 性 が 大 きく 拡 大 されます 現 在 提 供 しているIM-ERPリアルコネクトには SAPとの 連 携 ができる 豊 富 なAPIが 用 意 されています その 他 のERP 用 の 連 携 モジュールも 順 次 追 加 して 行 く 予 定 です 詳 細 については 以 下 の 資 料 を 参 照 してください 製 品 に 添 付 されている SAP R/3 および ERP6.0とリアルタイムに 連 携 するためのプログラミングガイド SAP R/3 連 携 プログラミングガイド SAP ERP6.0 連 携 プログラミングガイド SAP mysap ERP SAP R/3 SAP ERP6.0 SAP JCO 製 品 内 に 記 載 するSAPの 製 品 /サービス 名 は すべてドイ ツおよびその 他 の 国 におけるSAP AGの 商 標 または 登 録 商 標 です 2004 年 6 月 にSAP Certified Integration 及 びPowered by SAP NetWeaverTMの 認 定 を 取 得 しました イントロダクション 45
第 2 章 intra-mart の 標 準 機 能 2.2 intra-martのアプリケーション 開 発 概 要 intra-mart WebPlatformあるいはintra-mart AppFrameworkを 使 ったアプリケーションの 開 発 にお いて 開 発 者 はブラウザ 上 に 表 示 されたユーザインタフェースと Webサーバ 上 で 動 作 するビジネスロジ ックを 作 成 することになります スクリプト 開 発 モデルではプレゼンテーション ページ(HTMLファイル)とファンクションコンテナ(サ ーバサイドJavaScriptファイル)の2つのファイルを 作 成 します この 際 フレームワークで 用 意 されて いるモジュール 群 (im-bizapi)を 活 用 することでさらに 生 産 性 を 向 上 させることができます JavaEE 開 発 モデルでは JSPファイルとServlet EJBコンポーネントで 開 発 します この 際 にも フレームワークで 用 意 されているモジュール 群 (im-bizapi)をjavaeeフレームワーク (im-javaee Framework)とともに 利 用 することで 煩 雑 なJavaEEによるWebシステム 開 発 をさらに 効 率 化 するとともに 業 務 コンポーネントの 再 利 用 を 促 進 することができます 46 intra-mart WebPlatform/AppFramework
2.2 intra-mart のアプリケーション 開 発 概 要 2つの 開 発 モデルの 使 い 分 け JavaEE 開 発 モデル コンポーネント 再 利 用 や 並 行 分 散 開 発 により 大 規 模 システム 開 発 において 開 発 生 産 性 を 発 揮 しま す スクリプト 開 発 モデル コンポーネントアーキテクチャではなく 1ファイルに 業 務 処 理 を 記 述 していくスタイルであるた め 少 人 数 システム 開 発 において 生 産 性 は 高 くなります ただし 大 規 模 開 発 においても コンポーネント 再 利 用 性 の 低 い 画 面 (マスタメンテナンスな ど)においては 軽 量 プログラミングを 使 用 するなど 双 方 を 組 み 合 わせることでコスト 削 減 が 可 能 (すべてをJavaEEで 開 発 することはオーバーヘッドが 大 きくなります) im-bizapi(java 業 務 コンポーネント)は 両 モデルから 共 通 で 利 用 することが 可 能 です 2.2.1 スクリプト 開 発 モデルによるアプリケーション 開 発 ファンクションコンテナ の 中 には ビジネスロジックがJavaScriptで 記 述 されており プレゼンテ ーション ページ から 呼 び 出 され 実 行 されます その 橋 渡 しの 機 能 をintra-martが 実 現 しています 2.2.1.1 プレゼンテーションページ プレゼンテーションページは ユーザインタフェース 部 分 に 相 当 します 拡 張 子 は.html で 固 定 となりま す 開 発 者 またはエンドユーザは ebuilder(script Producer) を 利 用 して Webベースのプレゼン テーションページを 作 成 していきます また ブラウザベースのユーザインタフェースには 動 画 像 やサウンドなどを 盛 り 込 んだマルチメディア リッチな 画 面 を 構 築 していくことができます さらに プレゼンテーションページはHTMLファイルであ るため Webシステムの 開 発 において ユーザインタフェース 部 分 のみを 切 り 出 してホームページデザイ ナに 作 業 を 依 頼 することもできます ホームページ 作 成 ツールから 生 成 されるHTMLファイルに<IMART> タグを 追 加 していくことで ファンクションコンテナにあるJavaScriptを 関 連 付 けて 呼 び 出 すことが 可 能 になります ユーザ 定 義 関 数 を 呼 び 出 す<IMART> 拡 張 タグも 追 加 できます 完 成 したHTMLファイルは ページ 登 録 をするだけで すぐにデータベースと 連 動 して 高 速 動 作 します <HTML> <TR> <TD> <IMART name> </TD> <TD> <IMART name> </TD> <TD> <IMART name> </TD> </TR> 画 面 共 通 モ ジュー ル 帳 票 印 刷 ワークフロ ー アクセスセ キュリ ティ グラフ 描 画 メール 連 帯 SQL 文 1 2 イントロダクション 47
第 2 章 intra-mart の 標 準 機 能 1 市 販 のホームページ 作 成 ツール(Microsoft FrontPageやHOMEPAGE BUILDER 等 )や ebuilder(script Producer)を 利 用 してユーザインタフェースとなるプレゼンテーションページのひな 型 を 作 成 します 2 ホームページ 作 成 ツールから 自 動 生 成 されたHTMLソースに ファンクションコンテナ 中 の JavaScript 関 数 やWebPlatformのオブジェクトと 連 携 する<IMART>タグをeBuilder(Script Producer) やテキストエディタを 使 い 挿 入 ( 記 述 )します プレゼンテーションページのサンプル 例 を 示 します intra-martの 独 自 拡 張 タグ<IMART>を 利 用 して 各 種 モジュールを 呼 び 出 していきます 独 自 拡 張 タグ<IMART>を 利 用 して 各 種 モジュール を 呼 び 出 していきます 2.2.1.2 ファンクションコンテナ 多 階 層 アーキテクチャのうちのApplication Runtime 上 で 稼 動 するビジネスロジック 部 分 に 相 当 します 拡 張 子 は.js で 固 定 となります ファンクションコンテナとプレゼンテーションページはワンセットとな っているため ファイルラベル 名 は 同 一 のものを 使 用 します 開 発 者 は プレゼンテーションページから 呼 び 出 されるJavaScriptを ファンクション コンテナの 中 に 記 述 し 作 成 していきます 具 体 的 には intra-mart WebPlatformやintra-mart AppFrameworkに 用 意 されているフレームワーク 機 能 から 必 要 なオブジェクトや 関 数 群 を 選 び 出 し ebuilder(script Producer) で それらオブジェクトや 関 数 群 を 利 用 したサーバサイドで 稼 動 するビジネスロジックをJavaScriptで 記 述 し 作 成 していきます データ ベースへのSQL 文 もファンクション コンテナの 中 に 記 述 していきます 実 際 のRDBとの 接 続 やSQL 発 行 は intra-mart WebPlatformやintra-mart AppFrameworkから 実 行 されるため 細 かなセッション 管 理 やトランザクション 管 理 を 開 発 者 は 意 識 する 必 要 はありません 作 成 されたビジネスロジックは プレゼンテーションページの<IMART>タグから 呼 び 出 され 実 行 されるこ とになります intra-mart WebPlatformやintra-mart AppFrameworkに 用 意 されているフレームワー ク 機 能 の 詳 細 は intra-mart APIリスト に 一 覧 記 述 されています これらスクリプトの 記 述 は JavaScriptで 行 えるため 習 得 が 難 しいといわれるJavaやActiveXを 用 いることなく これまでのホー ムページ 作 成 の 延 長 でデータベースと 連 動 した 本 格 的 なWebシステムの 開 発 が 可 能 になります 画 面 共 通 モジュール 帳 票 印 刷 ワークフロー アクセスセキュリティ グラフ 描 画 メール 連 帯 SQL 文 48 intra-mart WebPlatform/AppFramework
2.2 intra-mart のアプリケーション 開 発 概 要 2.2.2 JavaEE 開 発 モデルによるアプリケーション 開 発 OSやWebアプリケーションサーバに 依 存 しない 共 有 プラットフォームとして JavaEEによるWebシス テム 開 発 が 普 及 してきました しかし JavaEEによる 開 発 はJavaをベースにしているため オブジェク ト 指 向 などの 高 度 な 知 識 と 経 験 が 要 求 される 点 や JavaEEでの 前 提 知 識 が 必 要 になる 点 など 敷 居 の 高 さが 問 題 になってきています さらに JavaEE 開 発 の 規 約 にさえ 準 拠 させれば あとはいかようにでも 組 める 自 由 さが 初 心 者 にとってはかえって 負 担 となり SEによってバラバラな 開 発 スタイルとなってし まう 原 因 ともなります intra-mart WebPlatformやintra-mart AppFrameworkでは これらの 問 題 をJavaEEフレームワーク (im-javaee Framework)を 利 用 することで 解 決 し JavaEE 開 発 モデルの 生 産 性 を 大 幅 に 向 上 させて います 2.2.2.1 JavaEE 開 発 のフレームワーク JavaEEでのWebシステム 開 発 には 構 造 的 に 共 通 な 部 分 が 多 く その 事 実 を 利 用 すると 開 発 生 産 性 を さらに 大 きく 向 上 させることができます intra-mart WebPlatformやintra-mart AppFrameworkでは JavaEE 開 発 で 必 要 になる 共 通 的 な 処 理 は すべてJavaEEフレームワークとして 用 意 し 開 発 者 に 委 ね られる 箇 所 はコンポーネントを 作 成 してもらう 形 態 となっています <intra-martフレームワークの 利 用 概 念 > 前 図 のフレームワーク 部 分 にあるように 大 きくは Java 業 務 コンポーネント 群 (im-bizapi) と JavaEEフレームワーク(im-JavaEE Framework) に 分 かれています Javaコンポーネントモジュ ール 群 (ワークフロー モジュールやアクセスセキュリティ モジュールなど)はすべて Java 業 務 コン ポーネント 群 (im-bizapi) に 配 置 されます そしてJavaEE 開 発 で 必 要 になる 共 通 的 な 処 理 はすべて JavaEEフレームワーク(im-JavaEE Framework) に 配 置 されます 特 に このフレームワークを 利 用 するコンポーネントについては 雛 型 となる スケルトン が 用 意 され ており さらに 生 産 性 を 高 めることが 可 能 となります( 共 通 部 分 はあらかじめ 実 装 されているので 開 発 者 は 独 自 のコンポーネントを 作 成 する 場 合 スケルトンをコピーし 実 装 されていない 箇 所 を 埋 めてコン ポーネントを 作 成 することになります) 作 成 されたコンポーネントはプロパティ 設 定 によりフレームワ ークにあてはめていくことで 動 作 します イントロダクション 49
第 2 章 intra-mart の 標 準 機 能 フレームワークもJavaEEで 定 義 されている4 層 (Client 層 Web 層 EJB 層 EIS 層 )を 使 用 する 共 通 的 な 機 構 となります(SunのBluePrintに 準 拠 )が 開 発 者 はそのことを 一 切 意 識 する 必 要 はありません(シ ステム 規 模 に 合 わせてあとから 構 成 変 更 することも 設 定 ファイルの 変 更 のみで 可 能 です) intra-martのフレームワーク 機 能 は 以 下 のフレームワークから 構 成 されています 1 サービスフレームワーク Client 層 のブラウザからの 要 求 受 付 の 画 面 遷 移 (Web 層 ) ( 下 記 注 を 参 照 してください) 2 イベントフレームワーク 主 にデータアクセスなどの 処 理 の 実 行 (EJB 層 ) 3 データフレームワーク データストア(EIS 層 )へのアクセス 4 DI コンテナ コンポーネント 依 存 性 排 除 とAOPの 実 現 (Seasar2を 組 み 込 み) これらのフレームワークが プロパティに 設 定 された 内 容 に 従 い 該 当 するコンポーネントを 呼 び 出 しま す これにより Webシステムに 最 適 なJavaEEのMVCモデルで 処 理 が 実 行 されることになります これらのフレームワーク 機 能 を 適 用 することで 開 発 するシステムを コンポーネント 群 とプロパティフ ァイルの 設 定 をベースとした 構 造 に 分 けることができます その 結 果 システムは 柔 軟 にカスタマイズや 機 能 追 加 できるようになります 50 intra-mart WebPlatform/AppFramework
2.2 intra-mart のアプリケーション 開 発 概 要 DIコンテナとは DI コンテナは,コンポーネント 間 の 依 存 性 を 内 部 から 排 除 し DIコンテナ 側 で 依 存 関 係 を 構 成 しま す 作 成 したコンポーネント 群 に 対 して 後 付 け で 機 能 や 処 理 を 挿 入 できるアスペクト 指 向 プログラミ ング(AOP)が 可 能 です 2.2.2.2 JavaEE 開 発 モデルにおいてフレームワークを 活 用 した 際 のメリット JavaEE 開 発 時 にJavaEEフレームワークを 利 用 することで 以 下 のメリットがでてきます JavaEEベースの 開 発 基 盤 生 産 性 の 向 上 保 守 性 の 向 上 高 度 な 知 識 が 必 要 となる 部 分 は 隠 蔽 し 開 発 者 はアプリケーションロジックをス ケルトンの 中 に 埋 め 込 む 前 提 知 識 がなくても 完 成 したシステムはJavaEEモデ ルの 推 奨 型 となり MVCモデルの 実 現 が 容 易 (プログラム 構 造 が 統 一 できメンテ ナンス 性 向 上 ) 共 通 的 なものはすべてフレームワーク 中 に 用 意 されているので コンポーネント の 再 利 用 性 が 高 まりチーム 全 体 の 生 産 性 が 向 上 (コンポーネントのチーム 共 有 と 並 行 分 散 開 発 による 期 間 短 縮 ) コンポーネントの 新 規 追 加 時 にも 元 のアプリケーションにはまったく 変 更 が 入 ら ない 仕 組 み また 機 能 変 更 時 も 該 当 コンポーネントのみの 修 正 とし 他 の 箇 所 イントロダクション 51
第 2 章 intra-mart の 標 準 機 能 への 影 響 がない 機 構 となる テスト 工 程 期 間 の 短 縮 と 品 質 向 上 テスト 工 程 でフレームワーク 部 分 の 確 認 が 不 要 また 問 題 発 生 時 の 切 り 分 けが 容 易 またDIコンテナにより テスト 用 のモック ( 模 型, 仮 実 装 ) と 正 式 コンポー ネントの 入 れ 替 えが 簡 単 になるため, 楽 にモックを 使 えるようになる Ajaxアプリケーション 開 発 ツール マスカット マスカットは Ajaxベースのリッチクライアントを 開 発 するオープンソースフレームワークで NTT データが 公 開 しています intra-martでは マスカットが 組 み 込 まれています ユーザは マスカ ットを 利 用 することで intra-mart 環 境 で 動 作 するリッチクライアントを 容 易 に 開 発 することがで きます <マスカット 開 発 画 面 > intra-martでマスカットを 利 用 するのメリット intra-martでajaxを 利 用 したリッチクライアント 画 面 を 簡 単 開 発 可 能 JavaEE 開 発 モデル/スクリプト 開 発 モデルのどちらでもマスカットと 連 携 可 能 画 面 に 配 置 した 各 部 品 の 複 雑 な 動 作 や 難 解 な 通 信 制 御 を 全 て 隠 蔽 化 開 発 者 は 定 義 ファイルの 設 定 とビジネスロジックの 作 成 だけでリッチクライアントを 実 現 52 intra-mart WebPlatform/AppFramework
2.2 intra-mart のアプリケーション 開 発 概 要 <マスカットを 利 用 して 開 発 した 実 装 例 > イントロダクション 53
第 2 章 intra-mart の 標 準 機 能 2.3 intra-martのシステムアーキテクチャー intra-mart WebPlatformあるいはintra-mart AppFrameworkのシステムアーキテクチャは 以 下 のよ うになります 2.3.1 intra-mart WebPlatformのシステムアーキテクチャー 以 下 に intra-mart WebPlatformのシステムアーキテクチャーを 示 します <intra-mart WebPlatformのシステムアーキテクチャー:4 台 の 負 荷 分 散 構 成 例 > Web Server Connector :Webサーバ 接 続 モジュール Service Platform : 各 種 サービスのプラットフォーム Application Runtime :アプリケーション 実 行 Resource Service :プログラム 配 布 Webサーバに 組 み 込 むモジュールです Webブラウザからのユーザのリクエスト をWebサーバからService Platformに 送 ったり Service Platformの 実 行 結 果 を 受 け 取 りWebサーバに 渡 すなど Webサーバとintra-mart Service Platformのインタ フェースとして 機 能 します 複 数 のService Platformがある 場 合 にはラウンドロビ ン 機 能 により 自 動 振 り 分 け 処 理 もおこないます intra-martの 各 種 サービスを 実 行 するプラットフォーム Web Server Connectorと 連 携 してWebアプリケーションを 実 行 するランタイム サ ービスです スタンドアロン 型 で 動 作 させる 場 合 Application Runtime 自 身 が HTTPサーバとしても 機 能 します(Webサーバは 必 要 ありません) Application Runtime 機 能 を 利 用 するには Schedule Service 以 外 のすべてのサ ービスが 正 しく 動 作 していることが 必 要 になります(Schedule Serviceはバッチ 管 理 機 能 を 利 用 する 場 合 にのみ 必 要 になります) スクリプト 開 発 モデルでは プログラムファイル(プレゼンテーションページ (*.html)およびファンクションコンテナ(*.js))は Resource Serviceに 保 管 されて おり 必 要 時 に 配 信 され Application Runtimeで 実 行 されます JavaEE 開 発 モデ ルでは プログラムファイルはResource Serviceを 利 用 せず URLによりマッピン グされたプログラム(*.jsp *.xtp *.class)をロードして 実 行 します Application Runtimeは JDBCを 利 用 して 複 数 のデータベースに 接 続 することも できます また 構 築 するアプリケーションの 負 荷 クライアント 数 などに 応 じて Applicatio Runtimeなどを 柔 軟 に 増 設 することができます 複 数 のApplication Runtimeがある 場 合 は サーバトラブル 発 生 時 においても 並 列 に 配 置 した Application Runtimeが 相 互 に 補 間 することができます(セッションフェイルオーバ ー 機 能 ) また 開 発 時 には 当 サーバ 内 にHTTP Serverが 内 包 されているので 別 途 Web Serverを 用 意 する 必 要 はありません intra-martシステムの 動 作 に 必 要 な 各 プレゼンテーションページ(*.html)および ファンクションコンテナ(*.js)のプログラムファイルを 集 中 管 理 すると 共 に 54 intra-mart WebPlatform/AppFramework
2.3 intra-mart のシステムアーキテクチャー Application Runtimeが 必 要 なプログラムを 自 動 的 に 配 布 します スクリプト 開 発 モデルのみで 利 用 されるサービスです Shared Memory Service :メモリへのデータ 保 管 Permanent Data Service :システム 設 定 情 報 管 理 Serialization Service :システム 全 体 の 一 意 性 保 証 Storage Service :ファイルの 一 元 管 理 Schedule Service :バッチ 実 行 スケジュール Server Manager : 動 作 状 況 のモニタリング データを 一 時 的 に 保 存 しておく 目 的 で 利 用 される 機 能 です また このサービス が 提 供 する 情 報 管 理 は セッションレスです タイムアウトなどによりデータが 消 失 することはありません これらの 情 報 は Shared Memory Serviceのメモリ 中 に 保 管 され プログラムの 要 求 に 応 じて 取 り 出 したり 削 除 したりします intra-martシステムが 動 作 するために 必 要 な 設 定 情 報 などを 管 理 しています このサービスでは 情 報 をファイル 保 存 するので サービスが 停 止 した 場 合 も 次 の 起 動 時 に 以 前 に 保 存 されたデータを 復 元 することができます したがって 簡 易 的 なデータベースとして 利 用 することも 可 能 です また アカウントやメニュ ーなどの intra-martのシステム 設 定 情 報 もこの 機 能 を 利 用 しています 情 報 ファイルは Permanent Data Serviceのインストールディレクトリ 直 下 の treasure/ディレクトリ 内 に 保 存 されます システム 全 体 における 統 括 的 な 利 用 を 目 的 とした 機 能 の 集 合 体 です アプリケ ーションロック 機 能 の 管 理 が 行 われています 複 数 のApplication Runtimeを 用 いた 分 散 システムでintra-martを 利 用 していると きに アップロードされたファイルやシステムで 共 有 化 したいファイル( 主 にデータ ファイル)を 一 元 管 理 するときに 利 用 します その 他 エクステンション モジュー ルを 用 いる 場 合 には PDFファイルの 作 成 も このサービスが 受 け 持 ちます フ ァイルの 保 存 場 所 は Storage Serviceをインストールしたディレクトリ 直 下 の storage/ 以 下 になります バッチプログラムの 実 行 スケジュールを 管 理 します このサービスは 指 定 の 時 間 になると 該 当 するバッチプログラムの 実 行 を 指 定 U RLを 用 いてApplication Runtimeに 依 頼 します したがって バッチプログラム は Application Runtimeで 実 行 されます intra-martの 各 種 サービス Application Runtimeなどの 動 作 状 況 を 管 理 します 標 準 で 用 意 されている 監 視 ツール IM-Administrator を 経 由 して intra-martの 各 種 Serviceの 状 況 監 視 や 起 動 停 止 を 行 うことができます イントロダクション 55
第 2 章 intra-mart の 標 準 機 能 2.3.2 intra-mart AppFrameworkのシステムアーキテクチャー 以 下 に intra-mart AppFrameworkのシステムアーキテクチャーを 示 します Service Platform : 各 種 サービスのプラットフォーム Web Application Server :アプリケーション 実 行 Application Runtime :アプリケーション 実 行 Resource Service :プログラム 配 布 Shared Memory Service :メモリへのデータ 保 管 Permanent Data Service :システム 設 定 情 報 管 理 Serialization Service :システム 全 体 の 一 意 性 保 証 Storage Service intra-martの 各 種 サービスを 実 行 するプラットフォーム Web Applicationを 実 行 可 能 なプラットフォームです JavaEEの 規 格 に 準 拠 してい るサーバ 製 品 をご 利 用 ください( 正 式 に 対 応 している 製 品 に 関 しては 製 品 に 付 属 のリリースノートをご 覧 ください) Application Runtime 機 能 を 利 用 するには Schedule Service 以 外 のすべてのサ ービスが 正 しく 動 作 していることが 必 要 になります(Schedule Serviceはバッチ 管 理 機 能 を 利 用 する 場 合 にのみ 必 要 になります) スクリプト 開 発 モデルでは プログラムファイル(プレゼンテーションページ (*.html)およびファンクションコンテナ(*.js))は Resource Serviceに 保 管 されて おり 必 要 時 に 配 信 され Application Runtimeで 実 行 されます JavaEE 開 発 モデルでは プログラムファイルはResource Serviceを 利 用 せず URLによりマッピングされたプログラム(*.jsp *.class)をロードして 実 行 します Application Runtimeは JDBCを 利 用 して 複 数 のデータベースに 接 続 することも できます また 構 築 するアプリケーションの 負 荷 クライアント 数 などに 応 じてApplicatio Runtimeなどを 柔 軟 に 増 設 することができます intra-martシステムの 動 作 に 必 要 な 各 プレゼンテーションページ(*.html)および ファンクションコンテナ(*.js)のプログラムファイルを 集 中 管 理 すると 共 に Web Application Serverが 必 要 なプログラムを 自 動 的 に 配 布 します スクリプト 開 発 モデルのみで 利 用 されるサービスです データを 一 時 的 に 保 存 しておく 目 的 で 利 用 される 機 能 です また このサービスが 提 供 する 情 報 管 理 は セッションレスです タイムアウトな どによりデータが 消 失 することはありません これらの 情 報 は Shared Memory Serviceのメモリ 中 に 保 管 され プログラムの 要 求 に 応 じて 取 り 出 したり 削 除 した りします intra-martシステムが 動 作 するために 必 要 な 設 定 情 報 などを 管 理 しています このサービスでは 情 報 をファイル 保 存 するので サービスが 停 止 した 場 合 も 次 の 起 動 時 に 以 前 に 保 存 されたデータを 復 元 することができます したがって 簡 易 的 なデータベースとして 利 用 することも 可 能 です また アカウントやメニュ ーなどの intra-martのシステム 設 定 情 報 もこの 機 能 を 利 用 しています 情 報 ファイルは Permanent Data Serviceのインストールディレクトリ 直 下 の treasure/ディレクトリ 内 に 保 存 されます システム 全 体 における 統 括 的 な 利 用 を 目 的 とした 機 能 の 集 合 体 です アプリケ ーションロック 機 能 の 管 理 が 行 われています 複 数 のWeb Application Serverを 用 いた 分 散 システムでintra-martを 利 用 してい 56 intra-mart WebPlatform/AppFramework
2.3 intra-mart のシステムアーキテクチャー :ファイルの 一 元 管 理 Schedule Service :バッチ 実 行 スケジュール Server Manager : 動 作 状 況 のモニタリング るときに アップロードされたファイルやシステムで 共 有 化 したいファイル( 主 にデ ータファイル)を 一 元 管 理 するときに 利 用 します その 他 エクステンション モジ ュールを 用 いる 場 合 には PDFファイルやXRFファイルの 作 成 も このサービス が 受 け 持 ちます ファイルの 保 存 場 所 は Storage Serviceをインストールしたデ ィレクトリ 直 下 のstorage/ 以 下 になります バッチプログラムの 実 行 スケジュールを 管 理 します このサービスは 指 定 の 時 間 になると 該 当 するバッチプログラムの 実 行 を 指 定 U RLを 用 いてWeb Application Serverに 依 頼 します したがって バッチプログラム は Web Application Serverで 実 行 されます intra-martの 各 種 サービス Application Runtimeなどの 動 作 状 況 を 管 理 します 標 準 で 用 意 されている 監 視 ツール IM-Administrator を 経 由 して intra-martの 各 種 Serviceの 状 況 監 視 や 起 動 停 止 を 行 うことができます イントロダクション 57
第 2 章 intra-mart の 標 準 機 能 2.4 intra-martのその 他 の 特 徴 intra-mart WebPlatform/AppFrameworkには 次 のような 優 位 性 があります 多 言 語 機 能 運 用 の 容 易 性 強 固 なセキュリティ ASP 型 アプリケーションの 構 築 製 品 体 系 と 構 成 エディション 2.4.1 多 言 語 対 応 ログインユーザごとに 使 用 する 言 語 を 切 替 えることができるアプリケーションの 開 発 が 行 えます 言 語 を 切 り 替 えると メニュー 項 目 名 などがユーザの 指 定 した 言 語 に 切 り 替 わります 58 intra-mart WebPlatform/AppFramework
2.4 intra-mart のその 他 の 特 徴 2.4.2 運 用 の 容 易 性 Application Runtime(intra-mart WebPlatformの 場 合 )やWebアプリケーションサーバ(intra-mart AppFrameworkの 場 合 )を 複 数 設 置 して 稼 動 される 大 規 模 システムで 問 題 となるのは ユーザアプリケ ーションの 配 布 管 理 です スクリプト 開 発 モデルでは Resource Serviceが 各 アプリケーションサーバ へのユーザアプリケーションの 配 布 を 自 動 で 行 うため Resource Service 上 でのみユーザアプリケーシ ョンを 最 新 に 保 てばよいことになり 運 用 の 負 担 がかかりません ただし JavaEE 開 発 モデル(JSP Servlet EJBコンポーネント)の 場 合 は intra-mart WebPlatformでは 各 Application Runtime 上 に intra-mart AppFrameworkではWebアプリケーションサーバ 上 に 配 置 する 必 要 があります Application RuntimeやWebアプリケーションサーバの 新 規 増 設 時 にも ネットワークにマシンを 接 続 し intra-martを 起 動 するだけで 最 新 の 稼 働 環 境 になります また ブラウザに 送 信 する 文 字 コードをintra-martアプリケーションサーバ 上 で 指 定 できるため Windows UNIXや 携 帯 電 話 などの 機 種 混 在 時 にも 文 字 化 けがおこりません さらに 監 視 ツールであるIM-Administrator( 標 準 装 備 )により intra-mart 各 種 サーバの 稼 動 情 報 をビ ジュアルに 表 示 でき 各 サーバの 状 態 監 視 や 設 定 変 更 自 動 復 旧 の 設 定 が 遠 隔 で 可 能 になります <システム 構 成 拡 張 例 :intra-mart WebPlatformの 場 合 > 詳 細 については システム 管 理 者 操 作 ガイド を 参 照 してください イントロダクション 59
第 2 章 intra-mart の 標 準 機 能 HttpSessionのフェールオーバー Application Runtimeを 複 数 立 てた 場 合 HttpSession(クライアントのログインセッション 情 報 ) をフェールオーバーさせることができます この 機 能 は intra-mart WebPlatformで 利 用 できる 機 能 で intra-mart AppFrameworkでは 利 用 できません( 各 アプリケーションサーバの 機 能 に 依 存 します) WebPlatformでのセッションフェイルオーバーは 以 下 の2 方 式 となります 詳 細 については intra-mart WebPlatfrom 設 定 ガイド の HttpSessionのフォールトトレラ ンス 設 定 方 法 を 参 照 してください メモリtoメモリ 方 式 メリット Application Runtimeの 設 定 だけで 構 築 可 能 メモリto RDBと 比 較 して 処 理 負 担 が ない デメリット バックアップ 関 係 にある2 台 が 両 方 ともダウンするとセッションが 消 える メモリ to RDB 方 式 に 比 べて 設 定 が 難 他 のApplication Runtimeのメモリを 保 存 するため Application Runtimeのメモリ 消 費 量 が 増 える メモリto RDB 方 式 メリット Application Runtimeが 何 台 ダウンしても 最 低 1 台 残 ればセッションの 継 続 が 可 能 メモリ to メモリ 方 式 に 比 べて 設 定 が 容 易 デメリット DBが 必 要 市 販 のクラスタ 製 品 を 利 用 してラウンドロビン 構 成 で 運 用 する 場 合 には メモリ to RDBを 推 奨 し ます より 堅 牢 なシステム 構 成 にするには メモリ to RDB 方 式 を 推 奨 します 60 intra-mart WebPlatform/AppFramework