Skip to main content

This is documentation for Caché & Ensemble. See the InterSystems IRIS version of this content.Opens in a new tab

For information on migrating to InterSystems IRISOpens in a new tab, see Why Migrate to InterSystems IRIS?

Ensemble 2016.1

Ensemble 2016.1 の新機能

Ensemble 2016.1 では、次の新機能と拡張機能が導入されました。

  • Ensemble を ESB として使用するためのサービス・レジストリおよび拡張ツール

  • アクティビティ量の統計と監視

  • プロダクション間で伝搬される SuperSession ID

  • X12 の漸進的な機能拡張

  • Ensemble グラフィカル・エディタのマイナーな機能向上

  • プロダクションとコンポーネントの再起動の向上

  • メッセージ・バンクの機能強化

  • メッセージ・バンク・ビューワの新しいフィルタ

  • ルールが変換情報にアクセス可能

Ensemble 2016.1 にアップグレードする際の互換性の問題

このリリースの以下の変更によって、既存のシステムの動作が影響を受ける可能性があります。Ensemble のインスタンスをアップグレードする前に、以下の問題を確認してください。

クエリ・パラメータに対する EnsLib.REST.Service の異なる処理

このリリースでは、EnsLib.REST.Service のサブクラスは URL からではなく属性からクエリ・パラメータを取得する必要があります。前のリリースでは、受信要求が CSP ポート経由で送信される場合は、URL から取得することも可能でした。この変更は、受信 URL を URLMap とマッチングする際の問題を修正するために必要とされました。クエリ・パラメータは、OnProcessInput に渡される、または %request オブジェクトから渡されるストリーム・オブジェクトの属性として使用できます。

EnsLib.REST.Service のサブクラス化ではなく、%CSP.REST の直接のサブクラス化が推奨されることに注意してください。%CSP.REST を直接サブクラス化する場合は、そのクラスの全機能を使用できます。%CSP.REST のサブクラスを Ensemble プロダクションで使用するためには、CreateBusinessService を呼び出す必要があります。

失効を防止するための Ensemble セットの _Ensemble ユーザのアップグレード

ほとんどの場合、Ensemble が内部的に使用する _Ensemble ユーザは失効しないように設定し、有効期限が切れないようにパスワードを設定する必要があります。今回および今後のリリースでは、Ensemble をアップグレードすると AccountNeverExpires および PasswordNeverExpires プロパティが真にリセットされて、ensinstall ログに変更がコメントされます。使用している環境でこれらのプロパティの一方または両方を偽に設定する必要がある場合は、Ensemble をアップグレードした後でこれらをリセットする必要があります。

基盤エラーのテキストを含むビジネス・プロセス終了エラー

このリリースでは、ビジネス・プロセスでエラーが発生すると、終了エラーに、基盤となるエラーのテキストが含まれます。エラー・テキストを比較するエラー処理コードがある場合は、コードの変更が必要な場合があります。

Ensemble は既定のデータベースが書き込みアクセスを許可することをチェック

このリリースでは、Ensemble はプロダクションを開始する前に既定のデータベースへのアクセスをチェックします。既定のデータベースが読み取り専用の場合は、管理ポータルにエラーが表示され、プロダクションは開始されません。ほとんどの場合、この状況は構成エラーによって発生し、プロダクションは起動しても失敗します。推奨される方法ではありませんが、グローバル・マッピングを使用して、読み取り専用の既定のデータベースと共に使用するプロダクションを作成することが可能でした。この構成は、今回のリリースでは使用できません。プロダクションの開始前に既定のデータベースが書き込みアクセスを許可するように構成を変更する必要があります。

受信 TCP アダプタが起動時に追加エラーを報告する可能性

以前のリリースでは、常時接続 (StayConnected = -1) に設定された受信 TCP アダプタと送信 TCP アダプタは、起動方法が異なっていました。警告猶予期間内に初期接続が作成されない場合、送信アダプタはエラーを報告しましたが、受信アダプタは報告しませんでした。受信アダプタは、アダプタがリスナを 1 つだけ持つように設定され、既存の接続が終了している場合のみ、エラーを報告しました。

このリリースでは、常時接続に設定されている TCP 受信アダプタは、起動時に送信アダプタと同じ動作をします。警告猶予期間内に初期接続が作成されない場合はエラーを報告します。このエラーは、[エラー警告] (構成されている場合) を招く機能停止の後でシステムをオンラインに戻すと、トリガされる場合があります。通常起動時に TCP 接続の実行までに遅れが生じる場合は、警告猶予期間を長くすることでこのエラーを回避できます。

一時停止のメッセージにおける再起動を改善するオプションによる格納場所の変更

以前のリリースでは、プロダクションの停止時に ^Ens.Queue グローバル・キューの非同期メッセージはすべて ^Ens.Suspended キューに移され、プロダクションの再起動時に元の場所に戻されていました。キューに多数のメッセージが存在するプロダクションの場合、この動作によりプロダクションの停止および再起動が遅くなることがありました。今回のリリースでは、この移動、およびこれにより生じる再起動の遅延を回避するオプションが用意されています。一時停止のメッセージを移動しないようにするには、ネームスペースごとに ^Ens.Configuration("Queues","KeepInQueues")=1 を設定します。 デフォルト値は 0 です。0 を設定した場合、現行の動作のままになります。

新しい動作を要求しても、この変更でプロダクションのコードに互換性の影響を及ぼすことはありません。ただし、プロダクションの停止時にデータベースのグローバルに格納されている一時停止のメッセージを検証するコードが存在する場合、新しいオプションに対応するようにコードを更新する必要があります。

ebXML メッセージの検証の改善による動作の変更

今回のリリースでは、ebXML メッセージの検証が改善されています。これにより、以前のリリースでは、有効でないメッセージの一部が検証にパスしていましたが、それらがエラーとして扱われるようになりました。具体的には、MessageId と ConversationId の両方が空である場合、ebXML メッセージは有効でないと見なされます。以前のリリースでは、これらのメッセージが検証にパスする場合もありました。

Java ゲートウェイ切断時における追加のログ・メッセージ

ping オペレーション後に Java ゲートウェイを正常に終了するために、今回のリリースでは、ゲートウェイに追加の送受信メッセージが送信されます。これにより、ログに新たなエントリが記録されます。

電子メール送信アダプタのデフォルトの変更

以前のリリースでは、配布リストにエラーが存在する場合、どの受信者にもメッセージが送信されませんでした。今回のリリースでは、エラーが含まれるアドレス以外の受信者すべてにメッセージが送信されます。送信アダプタを従来の動作に戻し、どの受信者にも電子メールを送信しないようにするには、ContinueAfterBadSend を偽に設定します。

FTP はネットワーク・ファイルの削除に失敗した際、ファイルを再処理しない

FTP アダプタがサーバのファイルを削除するように構成されていて削除に失敗した場合、Ensemble はファイルが処理されたものと見なし、ファイルを再処理しません。以前のリリースでは、権限によりアダプタがファイルを削除できなかった場合はこの動作が正常に行われていました。しかし、ネットワークの問題によりアダプタがファイルを削除できなかった場合、アダプタはファイルを誤って新規として扱い、再処理していました。今回のリリースでは、この問題が修正されています。アダプタは、ファイルを再処理しません。従来の誤動作に対応するようにプロダクションのコーディングを行っている場合は、そのコードを削除する必要があります。

タイムアウト後のルータによるメッセージ・ヘッダの正しい設定

以前のバージョンでは、ルータがメッセージを処理する前にタイムアウトした場合、ルータはメッセージ・ヘッダを正しく設定せず、メッセージ・ヘッダをパージできませんでした。今回のリリースでは、このエラーが修正されています。パージされないメッセージを処理する手順を作成している場合、この状況でそれが必要なくなります。

BPL による、同じ名前を持つ 2 つの呼び出しの不許可

以前のバージョンでは、BPL ウィザードは、同じ名前を持つ呼び出しが 2 つ存在するエラーを検出しませんでした。この状況により、予期しない呼び出しが生じる場合がありました。このバージョンでは、応答が存在する同期呼び出しについて、BPL ウィザードがこのエラーを検出します。したがって、以前のバージョンではこのエラーが存在する BPL は正常にコンパイルを実行していましたが、このバージョンではエラーを返します。

TCP カウント・アダプタによる受信長の確認

以前のリリースでは、文字エンコーディングが存在しない場合、TCP カウント・アダプタは受信長の値を無視していました。したがって、実際の長さが指定された長さと一致しない場合でも、アダプタはメッセージを受け取っていました。今回のリリースでは、アダプタはこの確認を行い、誤った形式のメッセージを拒否します。この変更により、常に受信長が確認されている状況において、文字エンコーディングが存在しない TCP カウント・アダプタの動作と文字エンコーディングが存在する TCP カウント・アダプタの動作が一致するようになっています。

プール・サイズが 0 であるビジネス・プロセスの無効化

以前のリリースでは、プール・サイズが 0 であるビジネス・プロセスが無効になっている場合、共有アクター・プールを使用するすべてのビジネス・プロセスが無効になっていました。通常、共有アクター・プールを使用するすべてのビジネス・プロセスではなく、特定のビジネス・プロセスのみを無効にしたいと考えます。今回のリリースでは、プール・サイズが 0 であるビジネス・プロセスを無効にしようとした場合、Ensemble により警告が表示され、ビジネス・プロセスは無効になりません。

Note:

プール・サイズが 0 であるビジネス・プロセスを無効にしようとした場合、ビジネス・プロセスは無効にならず、プロダクション構成ダイアグラムで緑色で表示されますが、[有効] チェック・ボックスは選択されません。

プール・サイズが 0 であるビジネス・プロセスを無効にする場合は、プール・サイズを正の整数に設定することでこれを行うことができます。共有アクター・プールを使用するすべてのビジネス・プロセスを停止する場合は、[プロダクション設定] タブで [アクター・プール・サイズ] を 0 に設定します。

無効になっており、プール・サイズが 0 である新しいビジネス・プロセスを作成しようとした場合、ビジネス・プロセスは無効の状態で作成されますが、プール・サイスは 1 に設定されます。この状況は、以下の場合に発生します。

  • プール・サイズが 0 であり、無効になっている新しいビジネス・プロセスを追加した場合

  • プール・サイズが 0 である既存のビジネス・プロセスをコピーした場合

上記の場合、無効になっているビジネス・プロセスは、プール・サイズが指定された 0 ではなく 1 になるように設定されます。

パージのアラートに関する権限確認の改善

Ensemble イベント・ログ・ページでは、イベント・ログ・エントリのパージに %Ens_Purge リソースに対する USE 権限をユーザに求めるセキュリティ要件が適用されていませんでした。現在、この問題は修正されており、このセキュリティ要件が適用されるようになりました。権限のないユーザが [パージ] をクリックした場合、[このアクションを実行する権限がありません] というアラートが表示され、パージは実行されません。

XML ファイルおよび FTP オペレーションによる検索テーブル・データの書き込み

以前のリリースでは、EnsLib.EDI.XML.Operation.FileOperation または EnsLib.EDI.XML.Operation.FTPOperation において検索テーブルを指定しても、検索テーブルのインデックスは作成されませんでした。今回のリリースでは、検索テーブルのインデックスが作成されます。メッセージ本文がパージされると、検索テーブル・データもパージされることに注意してください。

[作成時間] の値が NULL である完了済みのビジネス・プロセス・インスタンスのパージ

以前のリリースでは、[作成時間] の値が NULL の場合、完了済みのビジネス・プロセス・インスタンスがパージされない場合がありました。この状況は、デバッグ・フラグがビジネス・プロセス・インスタンスを保持するように設定され、カスタム・コードにより [作成時間] の値 (これはユーザ・コードで設定すべきではない) が更新された場合にのみ発生します。今回のリリースでは、上記の場合でも、完了済みのビジネス・プロセスが想定どおりにパージされます。

FeedbackOpens in a new tab