第1章
Webサービスによって、企業が情報を交換したり、ビジネストランザクションを実行したりする方法が根本的に変わりつつあります。 WSDLやSOAP、およびその関連技術を活用すれば、個々のプラットフォームへの依存性をなくし、最終的に、さまざまな基幹システムの相互運用性を高めることができます。さらに、頑健性や信頼性を改善する効果もあります。
サービス指向アーキテクチャの利点は広く知られています。 ただし、その一方で基幹システムのWeb対応にはかなりの作業が必要です。 そのためには、ビジネスアナリストや開発者が協力して、高度で大規模な分散アプリケーションを構築していく必要があります。このアプリケーションは、性能、セキュリティ対応、拡張性、信頼性など、今後ますます厳しくなる市場からの要求に応えられるものでなければなりません。
最新のWeb技術を活用できる、サービスベースアーキテクチャへの移行作業を成功に導く要因として最も重要なのは、使いやすく機能が豊富な開発ツールです。 ツールは次のような条件を満たす必要があります。
ビジネスアナリストからシステム管理者そしてソフトウェアエンジニアまで、さまざまなチームのユーザが同時開発環境でただちに生産的に作業できるよう、習得と使用が容易である。
すべての重要なWebサービス技術に関して、標準に完全に対応している。 たとえば、XML文法(SOAPを含む)、情報記述・検索技術(WSDL、WSIL、UDDI)、トランスポート層プロトコル(HTTPなど)、ディレクトリサービスプロトコル(LDAP、DSML)、セキュリティ関連の標準規格に対応している必要がある。
プログラミング言語としてJavaを採用するのであれば、開発環境はJ2EEに完全対応したものである必要があります。3GL IDE(統合開発環境)だけでなく、開発からテスト、パッケージ化、展開に到るさまざまなツール群が必要です。しかもJAR/WAR/EARなどといったパッケージ形式や、ポータル/ポートレットアーキテクチャをも、完全に認識できるものでなければなりません。
NovellのexteNd製品シリーズは、これらの条件をすべて満たしています。
Novell exteNdは、J2EE (Java)アプリケーションサーバプラットフォーム上でWebサービスオブジェクトを迅速に開発するためのWebサービス開発製品のファミリです。主なツールは個別に販売しているほか、統合製品としても入手できます。 統合製品には、Professional EditionとEnterprise Editionの2種類があります。
基本的なツールをまとめた統合製品で、基幹Webアプリケーションの開発や展開に利用できます。 次のようなコンポーネントが密に統合されています。
Novell exteNd Composer (JDBC ConnectおよびLDAP Connectを含む)
注記: ただし、Professional Editionに含まれるComposerには、アプリケーションサーバの展開作業用GUIは組み込まれていません (exteNd Directorから実行する必要があります)。 また、トランザクション処理(JTA)、EJBベースのサービストリガ、XFormにも対応していません。
完全機能版のComposerには、3270、5250、CICS RPC、Data General、EDI、HP3000、HTML、JMS、SAP、Tandem、Telnet、Unisys (UTSおよびT27)との接続機能があります。
Novell exteNd Director Enterprise Edition (Content Management、Workflowサブシステム、Autonomyベースの検索機能を除く)。 Directorは完全J2EE対応の開発環境で、高度なパッケージ化機能や展開機能を備えるほか、ポータル/ポートレットアプリケーション開発用の頑健なサブシステムとしても使えます。
Novell exteNd Messaging Platform - JMS (Java Messaging Service)、Common Object Request Broker Architecture (CORBA)、Java Transaction Service (JTS)、Java Transaction API (JTA)などの標準規格に対応
Professional Editionに含まれるツール群のほか、次のようなツールが追加されています。
Novell exteNd Composer Enterprise Edition。ただしBPM (Business Process Modeler)サブシステム、アプリケーションサーバ配備作業用のGUI、EJBサービストリガ、トランザクション制御、XForm対応機能も組み込まれています
Novell exteNd Director Enterprise Edition。Content Management、Workflowサブシステム、Autonomyベースの検索機能を含みます
その他、Professional Editionに含まれるツール群(MySQL、WSSDK、メッセージングプラットフォームなど)。
Novell exteNd Composerは、WebサービスおよびXML統合アプリケーション(つまり、さまざまなバックエンドシステムやデータソースに接続できるアプリケーション)を迅速に設計および配備するために設計された開発(およびランタイム)環境です。
Composerシリーズには次のような製品があります。
Novell exteNd Composer - WebサービスおよびXMLに対応したバックエンド統合アプリケーションの作成とデバッグのための視覚的な設計時ツール
Novell exteNd Composer Enterprise Server - exteNd Composerで作成したアプリケーションを実行および管理するランタイムコンテナレイヤ(J2EE準拠のアプリケーションサーバ上で使用可)
Novell exteNd Connectファミリ - exteNd ComposerおよびexteNd Serverの機能を拡張し、専用のデータソース(EDI、CICS RPC、3270/5250端末データストリーム、Telnet、JMSなど)に依存するシステムのXML対応を可能にする個々のアドイン製品 (リレーショナルデータベースとの通信を可能にするexteNd Composer JDBC Connectは、LDAP Connectと同様、コアのComposerインストールスイートにバンドルされています。その他のConnect製品は個別に購入できます)。
すべてのexteNd Composer製品は、Novell exteNd Application Server、Apache Tomcat、IBMのWebSphere、およびBEA WebLogicで動作することが認証されており、Windows NTやWindows 2000から、Linux、Solaris、AIX、およびHP-UXにいたるまで、さまざまなオペレーティングシステムをサポートしています。
注記: Novell exteNd Composer Enterprise ServerおよびexteNd Composer Enterprise Connectの各製品には、専用のマニュアルがあります。 本マニュアルでは、コア開発環境(以下Composerと呼びます)についてのみ解説します。 JDBC Connect、LDAP Connectのコンポーネントエディタについては、それぞれのマニュアルを参照してください。
Composerは直感的で分かりやすいGUI (グラフィカルユーザインタフェース)を備えており、ビジネスアナリストやアプリケーション開発者は、頑健性に優れたXML統合アプリケーションを短期間で開発できます。
Composerでは、特に次の機能を備えています。
ドラッグアンドドロップに対応したXMLマッピングエンジン。スキーマ、DTD、XSL、XPath、およびDOMレベル2をサポートしています。
Javaプログラミングに関する広範な専門知識なしに、標準の制御フロー構成要素、エラートラップ、ログなどを実装するための直感的で視覚的な編集環境。
リアルタイムステップイン/ステップオーバのデバッグおよびアニメーション。開発環境内からリアルタイムでアプリケーションをテストできます。
ビジネスロジックやデータ操作に関して細かい制御を必要とするユーザ用の、組み込まれたECMAScriptサポート(カスタムスクリプトエディタおよびライブコンソールを含む)。
3270、5250、Telnet、JMS、JDBC、CICS RPC、EDIなど用のexteNd Composer Connectアドインを通じたバックエンドシステムとの接続。
プロジェクトを直接アプリケーションサーバに配備する機能(Novell、WebSphere、またはWebLogicアプリケーションサーバに対するコンテキスト駆動型のカスタマイズ)。
exteNd Directorとの統合(いつでもDirector環境に切り替えて、Composerプロジェクトを任意のWARファイルやEARプロジェクトにインポートすることが可能)。
紙幅の都合で詳しくは紹介できませんが、Composerにはほかにも、XFormやJSPコードの生成などさまざまな機能があります。 ここでは主なものだけ紹介しています。
Composerは、ビジネスアナリスト、ITマネージャ、Java開発者など、Webサービスの開発に携わる人を対象としています。
Composerは、さまざまなスキルレベルのユーザが利用できるよう設計されています (単なるJavaプログラミングIDEではありません)。 プログラミング経験がほとんどまたはまったくないビジネスアナリストでも、ComposerのドラッグアンドドロップによるXMLマッピング機能を使用すれば、複雑なデータ変換を短時間でマスターすることができます。 ウェブマスタは、JSPやXForm、UDDIの参照/公開機能を使って、高度なWebアプリケーションを開発できます。Composer以外のツールは必要ありません。 Java開発者は、Composerを使用して、ECMAScript、SQL、LDAP、カスタムJavaクラス、または専用のパッケージ(WAR/EAR/JARファイル)、あるいはこれらすべてに大きく依存する可能性がある、再利用可能で洗練されたXMLコンポーネントを開発できます。
Composerには、ウィザード、選択リスト、ドラッグ&ドロップなど、さまざまなGUI機能が組み込まれているため、専門分野や能力にかかわらず、誰でも短期間で生産性を向上させることができます。 各種のツールを複雑に組み合わせた開発体制では「月単位」の期間を要していた高度なWebアプリケーションが、Composerの導入により、週単位、日単位の期間で開発できることも珍しくありません。
Composerによるアプリケーション設計は、「コンポーネント」と「サービス」という2つの主な処理構成要素を含む「アクションモデル」アーキテクチャに基づきます。
コンポーネントとは、ビジネスロジックをカプセル化した、実行可能な処理単位で、一般には接続要求を受けて起動されます。
たとえば、標準的なJDBCコンポーネントでは、着信したXML要求ドキュメントを検証して、ドキュメントの重要なデータ断片をSQL問い合わせにマップし、SQL結果セットをXML応答ドキュメントにマップします。 このようなビジネスロジックやデータ検索機能は、コンポーネントレベルでカプセル化した単位で実行できます(また、そうしなければなりません)。
一方、サービスでは、通常、コンポーネントの実行状況を見渡して、コンポーネント間のデータの流れを調整します。 代表的なサービスには、入力XMLドキュメントの受信、洗練されたドキュメントマッピング/変換の実行、バックエンドデータソースからの情報の収集、メインフレームおよびAS/400上でのトランザクションの実行、エラー条件の処理、電子メールまたはJMSによる状況依存型の通知の送信、または元のリクエスタへのXML応答ドキュメント(1つまたは複数)の返信、あるいはこれらすべてを行う一連のコンポーネントをラップする場合があります。 サービスのタスクを独立したコンポーネントに分割することで、テスト、デバッグ、コードの保守、カプセル化、およびコードの再利用に関して重要な利点を実現できます。

通常は、Composerを使用して、データの取得と変換に関するB2B統合タスクを、XML技術(オプションとして、SOAPおよびWebサービス技術を含む)で実行するコンポーネントおよびサービスを作成します。 これらのコンポーネントやサービスは、J2EEアプリケーションサーバ環境に配備します。この環境では、exteNd Composer Enterprise Server (Composerのランタイムの部分)によって、コンポーネントやサービスの実行が実現されます。
Composerでは、さまざまなタイプのアプリケーションを作成できますが、通常は、サーブレット、EJB、カスタムJavaオブジェクト、またはJMSメッセージキュー上の着信メッセージによってトリガされるXML統合アプリケーションを作成します。場合によっては、アプリケーションを単にアプリケーションサーバ上でローカルに使用して、ローカルプロセス全体にサービスを提供し、外部環境には公開しないこともあります。 そうでない場合は、完全にWebに対応したアプリケーションになるでしょう。 SOAPやWSDLに対するインタフェースも用意することになるかも知れません。
一般的に、Composerでは、データ入力とデータ出力にXMLを使用する任意の種類のアプリケーションを実装できます。
ComposerのEnterprise EditionにはJMS Connectも付属しており、これを使えば「メッセージ」を使って入出力を行うサービスも作成できます。
注記: (IBMのMQSeriesのようなメッセージ指向ミドルウェアに関する)メッセージングは、それ自体で強力なデータ共有の例で、XML以外のペイロードを使用できます。ComposerとJMS Connectを使用すると、入力にはメッセージ、出力にはXMLを使用するアプリケーション、入力側ではXML、出力にはメッセージを使用するアプリケーション、またはXML-in/XML-outアプリケーション内でメッセージングを使用するアプリケーションなどを作成できます。
次に示す簡単な例では、XMLとComposerを使用して、購入者と供給者が各ビジネスシステムをインターネット上で接続しています。

Composerを使用すると、次の1つまたは複数のタイプのアプリケーションを作成できます。
「内部アプリケーション統合サービス」。さまざまなソースのデータを交換する多くのアプリケーションを持っている場合があります。たとえば、Oracleの財務アプリケーション、SAPの製造アプリケーション、および自社開発した受注処理アプリケーションを相互に接続したいとします。Composerは、このような目的の実現に役立ちます。
「外部Webサービスアプリケーション」。サービスをWeb上で取引パートナー(またはその他のユーザ)に公開しなければならない場合があります。Composerを使用すると、SOAPサービスおよびWSDLベースのWebサービスをすばやく簡単に構築できます。 Composerでサービスを設計すると、サービスのWSDLがComposerによって実際に自動生成されます(さらに、必要に応じて、UDDIレジストリへの公開までも実行されます)。
「データウェアハウジングアプリケーション」。 Composerの重要な機能は異種ソースからのデータをマップすることなので、Composerは、データマイニング技術およびウェアハウジング技術と効果的に連携します。
ビジネスアプリケーションをWebサービスとしてパッケージ化すると、ワークフローを自動化するための新しい機会が生まれます。Web Services Flow Language (ワークフロー自動化用の複数の新しい標準の1つ)によって、次世代のBPMソフトウェアが作成される標準が提供されます。この次世代技術の基礎は、「Webサービス」上に構築されるワークフローです。SOAPとXMLは、将来のワークフローシステムの重要な技術的基盤となります。
Composerは、自動化されたワークフローに関する新しい標準や技術に従って動作します。次世代のワークフローエンジンでは、タイムアウトや再試行などのBPMの概念、サービス間の条件付きリンク、並列実行に関する個々のサービス間の制御フローなどに依存して、Webサービス(外部または内部)を「接続」し、洗練された、長時間実行されるアプリケーションを作成できます。また、Webサービスに関する複雑な処理が実現可能になります(実現可能な処理の一部については、「RosettaNet Partner Interface Processes」で説明されています)。Composerは、WSFL対応アプリケーションを作成する場合に便利なツールです。
Composerは、単純なハブ&スポークアーキテクチャに基づいて構築されています。ハブは、XMLドキュメントを受け付けてドキュメントを処理し、XMLドキュメントを返す、強力なXML変換エンジンです。スポーク(つまり、Connect製品)は、ネイティブではXML対応でないデータのソースを「XMLに対応させる」プラグインモジュールで、データをハブに送信してXMLとして処理します。これらのデータソースには、レガシーCOBOL/VSAMで管理されている情報から、HTMLページに対するメッセージキューまで何でも使用できます。
さまざまなConnect製品は、情報ソースをXMLに対応させるために各製品で使用されている統合方法に従って分類できます。統合方法は、インターネットベースのコンピュータアーキテクチャに対する現在のシステム設計において使用される主要な区分を反映したものです。exteNdでは、B2Biのニーズに応じて、ユーザインタフェースレベル、プログラムロジックレベル、またはデータレベルでビジネスシステムを統合できます。

JDBCやLDAPはコアとなるConnect製品としてComposerのどの版にも入っていますが、ほかにも次のようなConnect製品があります。
JMS - Java Message Service標準を使用するJavaベースのメッセージング。このConnect製品は、Composerアプリケーションと任意のJMS対応メッセージングシステムとの間の接続を提供します。
HTML - Webページのスクリーンスクレーピング、またはHTMLデータのXMLデータへの再マッピング、あるいはその両方を行います。
注記: このガイドでは、exteNd Composerの基本的な機能を説明しています。各Connectを追加すると、Composerで使用可能な機能が増えます。これらの追加機能は、各Connectに付属する別のユーザガイドで説明されています。
Connect製品をインストールすると、ComposerのGUIが次の項目でアップデートされます。
これらのカスタマイズや追加はConnectのインストールとともに自動で行われ、Composerの既存の設計環境にシームレスに統合されます。
ComposerまたはConnect製品に関連付けられているライセンス文字列をアップデートする必要が生じた場合は、UpdateLicense.batファイル(\binディレクトリにあります)を使用してこれを実現できます。コマンドラインから、次のコマンドを実行します。
updateLicense product newLicense [Composer/Server]
ここで、productには(ライセンスをアップデートする)特定の製品の名前を指定し、newLicenseにはライセンス文字列を指定します。最後の引数(ComposerまたはServerの一方)は、目的の製品の設計時バージョンまたはランタイムバージョンのどちらをアップデートするかを指定します。
インストールされている製品のリストは、次のコマンドを実行して参照できます。
updateLicense -L
多くの場合、Composerを理解するための最適な方法は、実際に動作している状態で確認することです。 Composerには、実用的なビジネス業務がアプリケーションによってどのように処理されるかを順に確認できる、完全に動作するプロジェクト(このチュートリアルでは「ソリューション」と呼びます)が含まれています。 これはexteNd Composerのインストール先フォルダの下、\tutorialフォルダにあります。 また、プロジェクトを開くも参照してください。
Copyright © 2004 Novell, Inc. All rights reserved. Copyright © 1997, 1998, 1999, 2000, 2001, 2002, 2003 SilverStream Software, LLC. All rights reserved. more ...