Info*Engine の操作
Info*Engine の操作を開始するには、以下の 1 つ以上の方法を使用します。
JavaServer Pages (JSP)
カスタム外部 Java アプリケーション
Simple Object Access Protocol (SOAP) Web サービス
Java メッセージサービス (JMS)
HTTP (または HTTPS) で XML を処理する外部アプリケーション
以下の図は、Info*Engine コンポーネントとほかのカスタムソフトウェアコンポーネントが連携して Info*Engine コードを実行する方法を示しています。
Info*Engine コードは、Info*Engine API を介してアクセスされる Java クラスで構成されています。API は SAK 経由で利用可能で、Webject と呼ばれるあらかじめ定義された機能とタスクを実行します。Webject とタスクは、簡単に Java アプリケーションから、またはほかの Info*Engine タスク (テキストファイルとして保存されている) から直接 Java オブジェクトとしてインスタンス化および起動することができます。
以下の各セクションでは、ご使用のソフトウェアで Info*Engine を使用する方法の詳細について説明します。
JavaServer Pages
インストールプロセスによって、Info*Engine を Web アプリケーションとして展開する手順を実行します。インストールプロセスが完了すると、Web サーバーとそのサーブレットエンジンは、Info*Engine リクエストを識別し、Info*Engine コンポーネントへ識別したリクエストを渡して処理します。これにより、Web ブラウザからの JSP および HTML ページの実行リクエストが正しく処理されるように Info*Engine 環境が設定されます。
以下の図は、Web ブラウザから受信した JSP ページへのリクエストを処理するコンポーネント間の関係を示しています。
この図は、リクエストが Info*Engine に JSP ページを実行するよう指定している場合に使用されるコンポーネントを示します。デフォルトでは、Info*Engine と Web サーバーは、Windchill メソッドサーバー内にインストールされた Tomcat サーブレットエンジンの JSP エンジンにより JSP ページが処理されるように設定されます。JSP エンジンは SAK のインスタンスを作成し、それを使用してページ上で Info*Engine 固有のコードを実行します。たとえば、ユーザーがリンクをクリックするか、Info*Engine から情報を求める JSP リクエストとして機能する URL をブラウザウィンドウに入力すると、JSP エンジンと SAK は連動してリクエストを管理します。
SAK はリクエストを処理し、必要に応じて、Oracle データベース、PDM システム、さまざまなレガシーシステム、および ERP システムなどの外部アプリケーションと通信する専用の Info*Engine アダプタに接続します。外部アプリケーションからリクエスト情報が取得されると、プロセスが逆順に実行され、最後にユーザーのブラウザウィンドウに情報が表示されます。
外部カスタム Java アプリケーション
カスタムアプリケーションを Java でコーディングすることにより、Web サーバーで複雑な処理を実行することなく、迅速で簡単に Info*Engine にアクセスできます。SAK で定義されている API を使用することにより、アプリケーションが常駐する Java 仮想マシン (JVM) で、Info*Engine の Webject とタスク、およびその他の Info*Engine コードを実行できます。
次の図は、リモートデータベース内のデータにアクセスするためにアプリケーションで使用される SAK およびアダプタクラスを示しています。
Java アプリケーション内では、アプリケーション外に保持されている Info*Engine タスクを実行することもできます。Info*Engine タスクは一連の Webject と、Webject の処理をサポートする付随コードから構成されています。これらのタスクは、任意の Info*Engine サーバーの JVM 内でも、アプリケーションの JVM 内でも処理できます。
次の図は、アプリケーションが Info*Engine サーバーでタスクを実行する際に使用される Info*Engine コンポーネントを示しています。この場合アプリケーションは、リモートデータベース内のデータにアクセスするサーバーでタスクを実行するよう要求します。
Simple Object Access Protocol (SOAP) Web サービス
Info*Engine タスクをコーディングし、そのコマンド委任を共通のタイプ識別子のもとに一括登録することにより、Info*Engine を使用して、プログラミング言語にとらわれることなく使用できる Web サービスを公開できます。インストールとともに事前設定されるレガシー RPC および SimpleTaskDispatcher サーブレットを使用すると、ユーザーによる追加の展開操作を必要としない動的な WS-I 準拠の Web サービスを展開できます。これらのサービスが使用するスキーマは、Web サービスを構成する一連のタスクによって指定され、Web サーバー認証によって常に保護されます。
* 
サイトでフォームベース認証が使用されている場合、RPC または SimpleTaskDispatcher サーブレットへのアクセスを試みるプログラム的クライアントは、/protocolAuth URL プリフィックスを使用する必要があります。例:
http://<ホスト>/Windchill/protocolAuth/servlet/SimpleTaskDispatcher
http://<ホスト>/Windchill/protocolAuth/servlet/RPC
フォームベース認証の詳細については、フォームベース認証 を参照してください。
別の方法として、一連の Info*Engine タスクに基づく JAX-WS ベースの Web サービスを生成および展開し、その Web サービスのセキュリティを確保するメカニズムをより的確に制御することもできます。また、JAX-WS ベースの Web サービスの場合、Info*Engine を使用するかどうかに関係なく、Java コードのみで Web サービスを作成することもできます。このシナリオでは、Web サービスはそれぞれ独自の Java サーブレットとして展開されます。
Java メッセージサービス (JMS)
Info*Engine の MSG および WES Webject は、Java メッセージサービス (JMS) API を使用してメッセージ指向ミドルウェアと統合するために使用できます。JMS キューまたはトピックを購読すると、Info*Engine Java 仮想マシン内で Info*Engine タスクが実行されることがあります。そうなると、タスクは、その Info*Engine サーバー (それが埋め込まれている Windchill サーバーを含む) に接続されているシステムのいずれとも対話できるようになります。JMS は、さまざまな方法でエンタープライズアプリケーションを統合するための効果的な方法であり、メッセージ指向ミドルウェアサーバーを介した Info*Engine とその他のエンタープライズシステムの間の一方向または双方向通信を容易にします。
HTTP (または HTTPS) で XML を処理する外部アプリケーション
Info*Engine は、HTTP または HTTPS を介して直接 Info*Engine タスクを起動するために使用できる IE サーブレットとともに事前インストールされています。IE サーブレットを通してタスクが呼び出された場合、応答内では Info*Engine の仮想データベース (VDB) が XML としてレンダリングされます。
別の方法として、Info*Engine タスクは、XML の代わりにバイナリデータを書き込むことにより、または Info*Engine VDB をそれらが選択する代替の XML 表現に変換することにより、応答内でデータに条件を付けることができます。
IE サーブレットの単純な HTTP または HTTPS クライアント (任意の言語で記述されている) を使用することで、アプリケーションは Info*Engine との間でデータを送信および取得するためのリクエストを発行できます。
* 
サイトでフォームベース認証が使用されている場合、IE サーブレットへのアクセスを試みるプログラム的クライアントは、/protocolAuth URL プリフィックスを使用する必要があります。以下に例を示します。
http://<ホスト>/Windchill/protocolAuth/servlet/IE
フォームベース認証の詳細については、フォームベース認証 を参照してください。
これは役に立ちましたか?