Red Hat Training
A Red Hat training course is available for Red Hat Fuse
リリースノート
Red Hat Fuse の新機能
fuse-docs-support@redhat.com
概要
第1章 Fuse 7.3 の製品概要
1.1. Fuse のディストリビューション
Fuse 7.3 は、以下の 3 つのディストリビューションで提供されます。
- Fuse スタンドアロン
複数のオペレーティングシステム上でサポートされる従来の Fuse ディストリビューションです。このディストリビューションは以下のコンテナータイプでサポートされます。
- Apache Karaf
- JBoss Enterprise Application Platform (EAP)
- Spring Boot
- Fuse on OpenShift
OpenShift でインテグレーションアプリケーションを実行するための Fuse ディストリビューションです (Red Hat Enterprise Linux オペレーティングシステムでサポートされます)。このディストリビューションでは、サポートされるコンテナータイプは docker 形式のコンテナーイメージで提供されます。
- Java イメージ (Spring Boot 用)
- Apache Karaf イメージ
- JBoss EAP イメージ
- Fuse Online
ブラウザーベースの UI を使用して簡単なワークフローにアクセスできる、インテグレーション初心者向けの Fuse ディストリビューションです。このディストリビューションは以下のようなデプロイメントで使用できます。
- OpenShift Online Professional 層での事前インストール
- Red Hat Managed Integration クラスター上のデプロイメント
- オンプレミス Openshift クラスターのインストール
1.2. 新機能
Fuse 7.3 には、主要なコンポーネントのアップグレードや新機能が多く含まれています。詳細は、各 Fuse ディストリビューションの「新機能」のセクションを参照してください。
1.3. サポートされる構成
バージョン 7.3 でサポートされる構成、標準仕様、およびコンポーネントに関する詳細は、以下のカスタマーポータルの記事を参照してください。
第2章 Fuse Online
Fuse Online は、コードを作成せずに複数の異なるアプリケーションやサービスの統合を可能にする Web ブラウザーインターフェースを提供します。また、複雑なユースケースで必要な場合にコードを追加できる機能も提供します。
Fuse Online では、OpenShift のインテグレーションは Apache Camel を使用する Spring Boot として実行されます。Camel K はテクノロジープレビューの機能であるため、追加のランタイムとして使用できます。
2.1. Fuse Online ディストリビューション
Fuse Online は Red Hat の Web ベースのインテグレーションプラットフォームです。Syndesis は Fuse Online のオープンソースプロジェクトです。Fuse Online は以下のような OpenShift 環境で実行されます。
ホスト環境 | インストール |
OpenShift Online | Red Hat が Red Hat インフラストラクチャーに Fuse Online をインストールし、提供します。 |
OpenShift Container Platform | お客様がインストールし、管理します。 |
2.2. Fuse Online 7.3 の新機能
Fuse Online 7.3 は以下の新機能を提供します。
API プロバイダーインテグレーション がサポートされるようになりました。このインテグレーションは、これまでのリリースではテクノロジープレビューでした。API プロバイダーインテグレーションは、OpenAPI スキーマを提供した REST API サービスをパブリッシュします。REST API クライアントからの呼び出しによって、API プロバイダーインテグレーションの実行がトリガーされます。
API プロバイダーインテグレーションでないインテグレーションは、シンプルなインテグレーションと呼ばれるようになりました。
以下に対して新しいコネクターが提供されます。
Google Sheets へのコネクションは、スプレッドシートデータやスプレッドシートプロパティーの返送、スプレッドシート値やプロパティーの更新、またはスプレッドシートへのチャートまたはピボットテーブルの挿入を行うことができます。
Apache Kudu は Apache Hadoop プラットフォーム向けに開発された列指向ストレージです。Fuse Online のインテグレーションは Kudu データストアに接続してテーブルをスキャンでき、テーブルのすべてのレコードをインテグレーションに返すか、レコードをテーブルに挿入します。
- テキストベースの Internet Relay Chat に接続してメッセージを送受信する IRC コネクターがサポートされるようになりました。これは、これまでのリリースではテクノロジープレビューの機能でした。
インテグレーションのコレクションを処理するサポートには、以下の新機能が含まれます。
- データマッパーの手順では、プリミティブ型のコレクションをマップ先またはマップ元とすることができ、複雑なコレクションにあるフィールドをマップ元またはマップ先とすることができるようになりました。実行中、データマッパーはソースコレクションを反復処理し、ターゲットにデータを追加します。
新しい スプリットステップ (split step) はコレクションを個別の要素に分割します。インテグレーションは、後続のステップを各要素に対して 1 度処理します。コレクションがコネクションから以下のサービスの 1 つに返されると、スプリットステップはコレクションを分割できます。
- Amazon S3
- Google スプレッドシート
- Kudu
- OData
- ServiceNow
- SQL データベース
- 集約ステップ (aggregate step) は新しいステップで、要素を結合してコレクションにし、コレクションをフローの次のステップに渡します。インテグレーションは、後続のステップをコレクションに対して 1 度実行します。スプリットステップをフローに追加してから、集約ステップを追加する必要があります。集約ステップの後、通常はインテグレーションにデータマッパーステップ (data mapper step) が必要です。集約ステップの出力コレクションは、Google Sheets コネクションのみへ直接入力 (データマッパーステップに干渉しない) できます。
- テンプレートステップ (template step) では、Fuse Online は Freemarker、Velocity、および Mustache テンプレートをサポートするようになりました。
Fuse Online を OpenShift Container Platform (OCP) にてオンプレミスで実行している場合、以下の新機能を使用できます。
- CI/CD (Continuous Integration/Continuous Deployment) パイプラインのインテグレーションをマーク付けする。
- 外部ツールが使用するために Fuse Online のパブリック API を公開する。
-
Ansible、Jenkins、
cron
ジョブなどの外部ツールを使用して、CI/CD パイプラインで インテグレーションをエクスポートおよびインポートする。 - Fuse Online から OpenShift アカウントへの アクセス承認を要求するページをユーザーが迂回するように OpenShift を設定する。
2.3. Fuse Online 7.3 での変更点
Fuse Online 7.3 では 7.2 の機能が以下のように変更されました。
これまでのリリースでは、以下のサービスの 1 つへの接続がコレクションを返すと、Fuse Online は返されたコレクションを個別の要素に分割し、後続のインテグレーションステップを各要素に対して 1 度実行しました。
- Amazon S3
- SQL データベース
- ServiceNow
Fuse Online 7.3 では、これらのコネクションは、以下に入力できるコレクションを返すようになりました。
- データマッパーステップ。プリミティブ型のコレクションをマップ先またはマップ元としたり、複雑なコレクションのフィールドをマップ先またはマップ元とすることができます。
- 7.3 で新規導入された、スプリットステップ。
既存のインテグレーションおよびインポートしたインテグレーションでの動作を保持するため、Fuse Online はコネクションの 1 つの後に、新しい 7.3 でのスプリットステップを自動的にインテグレーションに追加します。これは、Fuse Online 7.3 へのアップグレードの一部として行われるか、7.2 のインテグレーションを Fuse Online 7.3 の環境にインポートするときに行われます。
インテグレーションをコレクションで操作するには、アップグレードされたインテグレーションを編集し、スプリットステップを削除します。ほとんどの場合で、データマッパーステップの追加や再設定も必要になります。
詳細は、「How to process a collection in a flow」を参照してください。
以下の 1 つが、コレクションとして指定されたデータを返した場合にそのコレクションをデータマッパーステップでマップすることができるようになりました。
- API プロバイダーインテグレーション
- AMQP メッセージブローカーコネクション
- HTTP/HTTPS コネクション
- Red Hat AMQ コネクション
- Webhook コネクション
入力がコレクションとして指定されている場合に、データマッパーステップがコレクションを以下への入力として提供できるようになりました。
- API プロバイダーインテグレーションの戻りパス。これは、各 API プロバイダーインテグレーションの操作フローの最後のステップになります。
- メッセージをパブリッシュする AMQP メッセージブローカーコネクション。
- コンテンツを格納、更新、または削除する HTTP/HTTPS コネクション。
- メッセージをパブリッシュする Red Hat AMQ コネクション。
ログステップ をシンプルなインテグレーションの最後のコネクションとして追加したり、実行フローの途中に追加することができるようになりました。ログコネクションは、インテグレーションに追加できないようになり、本リリースで非推奨となりました。ログコネクションは今後のリリースで削除される予定です。
7.3 へのアップグレード後、フローにログコネクションがある稼働中のインテグレーションは継続して実行されます。フローの準備ができているログコネクションは編集することができ、ログコネクションがあるインテグレーションは編集およびパブリッシュすることができます。本リリースではインテグレーションからログコネクションを削除する必要はありませんが、最終的に削除する必要があります。インテグレーションの編集時にログコネクションをログステップに変更してください。インテグレーションの可視化フローで、ログステップを追加したい部分のプラスマークをクリックします。Fuse Online がステップの選択を要求したら、Log をクリックします。
ログステップは、ログコネクションによって提供されたすべてのロギングを提供しません。
- ログステップは各メッセージの ID をログに記録できません。(内部的には、この ID は交換 ID です)。
-
ログステップでは、ログに記録するメッセージのログレベル (
ERROR
、WARN
、INFO
、DEBUG
、TRACE
) を指定できません。
-
API プロバイダーインテグレーションでは、
SELECT
ステートメントを実行する SQL データベースのコネクションは結果セットが含まれるコレクションを返すようになりました。これまでのリリースでは、コネクションは結果セットの最初の記録のみを返しました。 -
これまでのリリースでは、テンプレートステップをインテグレーションに追加するときに、テンプレートの各プレースホルダーの前に
body.
を追加する必要がありました。この作業は必要ではなくなり、プレースホルダーに.
を使用することができなくなりました。プレースホルダーに.
を指定すると、エディターに構文エラーが表示されます。 -
オンプレミスにて OCP 上で Fuse Online を実行している場合、Fuse Online をインストールまたはアップグレードするスクリプトの実行に新しい要件が追加されました。https://developers.redhat.com のアカウントが必要で、
https://developers.redhat.com
のユーザー名とパスワードを覚えている必要があります。スクリプトはクレデンシャルを要求します。アカウントの作成に関する詳細は、「Red Hat レジストリーへのアクセスおよびその設定」を参照してください。
2.4. OpenShift Online で実行されている既存インテグレーションのアップグレード
Fuse 7.3 のリリース時、OpenShift Online の Fuse Online インフラストラクチャーは自動的にアップグレードされます。インフラストラクチャーのアップグレード中、OpenShift Online で実行されている既存のインテグレーションはすべてアップグレード中およびアップグレード後の実行が継続されます。しかし、既存のインテグレーションは古いバージョンの Fuse ライブラリーおよび依存関係で実行を継続します。
Fuse Online のインフラストラクチャーが新しいリリースにアップグレードされたことを知らせる電子メールのメッセージを受け取った後、既存のインテグレーションを再パブリッシュ (再起動だけではなく) してアップグレードします。これはできるだけ早期に行ってください。
Fuse Online 環境でインテグレーションを再パブリッシュするには、左側のナビゲーションパネルで Integrations をクリックします。その後、インテグレーションごとに以下を行います。
- インテグレーションエントリーの右側で をクリックし、Edit を選択します。
- Fuse Online で編集するインテグレーションが表示されたら、右上の Publish をクリックします。
パブリッシュを行うと、最新の Fuse Online 依存関係を使用して再ビルドが強制されます。
インテグテーションの要素に、更新の必要がある新しい依存関係がある場合、Fuse Online ユーザーインターフェースに警告が表示されます。
2.5. 重要事項
Fuse Online ディストリビューションの Fuse 7.3 リリースにおける重要事項
- Fuse Online アカウントは、同時に実行可能なインテグレーションの数が制限されています。詳細は、価格プランを参照してください。Fuse Online の評価版のアカウントをご使用の場合は、1 度に 1 つのインテグレーションのみを実行できます。
- Fuse Online にアップロードする OpenAPI スキーマに出入力タイプが定義されていないことがあります。Fuse Online が出入力タイプを指定しない OpenAPI からカスタム API クライアントを作成した場合、API クライアントが処理できるフィールドにインテグレーションデータをマップするインテグレーションや、API クライアントが処理したフィールドから統合データをマップするインテグレーションを作成できません。インテグレーションにカスタム API を起点または終点とするマッピングが必要な場合、OpenAPI スキーマをアップロードするときに Review/Edit をクリックして API デザインツールの Apicurio を開き、出入力タイプの仕様を追加します。
- カスタム API クライアントコネクターまたは API プロバイダーインテグレーションに使用する OpenAPI ドキュメントは、循環スキーマ参照を持つことができません。たとえば、リクエストまたは応答ボディーを指定する JSON スキーマは、そのスキーマ自体を全体的に参照することはできず、任意数の中間スキーマを介してそれ自体を部分的に参照することもできません。
2.6. テクニカルサポートの利用
テクニカルサポートを受けるには、Fuse Online の右上にある をクリックし、Support をクリックして Fuse Online サポートページを表示します。このページを使用して、すべてのインテグレーションまたは指定したインテグレーションの診断情報をダウンロードします。このページでサポートチケットの作成手順やダウンロードした診断情報の提供手順を確認できます。
2.7. テクノロジープレビューの機能
本リリースには、以下に示すテクノロジープレビュー機能が含まれています。
テクノロジープレビューの機能は、Red Hat の本番環境のサービスレベルアグリーメント (SLA) ではサポートされず、機能的に完全ではないことがあるため、Red Hat は本番環境での使用は推奨しません。テクノロジープレビューの機能は、最新の技術をいち早く提供して、開発段階で機能のテストやフィードバックの収集を可能にするために提供されます。詳細は、「テクノロジプレビュー機能のサポート範囲」を参照してください。
以下に対するコネクターです。
- Camel K は追加のランタイムとして使用できます。詳細は、『Integrating Applications with Fuse Online』の「Enabling Apache Camel K to speed up Fuse Online deployments on OCP」を参照してください。
OAuth を使用する REST API クライアントでは、API クライアントコネクターの作成時に、そのコネクターから作成するコネクションのデフォルト OAuth2 の動作を変更することができます。OpenAPI 仕様への Fuse Online ベンダーエクステンションは以下をサポートします。
- クライアントクレデンシャルをパラメーターとして提供。
- HTTP レスポンスステータスコードを基にした新しいアクセストークンの取得。
第3章 Fuse on OpenShift
Fuse on OpenShift (Fuse Integration Services 7.0 以降の新名称) は、Fuse アプリケーションを OpenShift Container Platform にデプロイすることができます。
3.1. OpenShift のサポート対象バージョン
Fuse on OpenShift と使用する OpenShift Container Platform のサポート対象バージョンについては「Red Hat Fuse でサポートされる構成 」を参照してください。
3.2. サポートされるイメージ
Fuse on OpenShift は以下の Docker 形式のイメージを提供します。
-
fuse7/fuse-java-openshift
— Spring Boot -
fuse7/fuse-karaf-openshift
— Apache Karaf -
fuse7/fuse-eap-openshift
— Red Hat JBoss Enterprise Application Platform -
fuse7/fuse-console
— Hawtio コンソール -
fuse7/fuse-apicurito
— Apicurito REST API エディター -
fuse7/fuse-apicurito-generator
— Apicurito REST アプリケーションジェネレーター
3.3. テクノロジープレビューの機能
以下の Fuse on OpenShift の機能は テクノロジープレビュー であるため、Fuse 7.3 ではサポートされません。
- Data Integration
- Red Hat Data Integration は、Teiid データ仮想化プロジェクトをベースとする、コンテナーネイティブなデータ仮想化サービスです。Red Hat Data Integration は、リレーショナルデータベース、ファイル、web サービス、SaaS リポジトリーなどの複数の異種ソースからのデータを組み合わせます。詳細は、『Data Integration』を参照してください。
- Hawtio Operator のインストール
- Kubernetes Operator は、OpenShift (または Kubernetes) アプリケーションのインストールおよび管理を簡単にするスクリプトです。Hawtio コミュニティーから、テクノロジープレビューである Fuse on OpenShift の Hawtio Operator にアクセスできます。Hawtio Operator の使用方法に関する詳細は、Hawtio コミュニティーのサイトの「README」を参照してください。
インストールする Hawtio Operator や Hawtio Console はサポートされません。これは、テクノロジープレビューの機能で、本番環境でのテストには適していません。
- Apicurito Operator のインストール
- Apicurito プロジェクトから、テクノロジープレビューである Fuse on OpenShift の Apicurito Operator にアクセスできます。Apicurito Operator は、OpenShift での Apicurito のインストール、アップグレード、およびアンインストールの手順を簡単にします。Apicurito Operator の使用方法に関する詳細は、Apicurito コミュニティーのサイトの「README」を参照してください。
インストールする Apicurito Operator や Apicurito インスタンスはサポートされません。これは、テクノロジープレビューの機能で、本番環境でのテストには適していません。
3.4. 重要事項
Fuse on OpenShift ディストリビューションの Fuse 7.3 リリースにおける重要事項
- Fuse 7.3 で推奨される Container Development Kit (CDK) 3.8 バージョン
OpenShift でアプリケーションを試す開発者は CDK 3.8 を使用することが推奨されます。「Fuse on OpenShift」 で説明したとおり、それ以前 CDK バージョンは CDK-397 の影響を受ける可能性が高くなります。
注記CDK は開発者の利便性のためにのみ提供されますが、サポートされる OpenShift ディストリビューションではありません。
- Fabric8 Maven プラグインを使用したアプリケーションの再デプロイ
Fabric8 Maven プラグインを使用して、Fuse on OpenShift アプリケーションを OpenShift Container Platform にデプロイする場合、
mvn fabric8:deploy
コマンドを使用しただけではアプリケーションを再デプロイできません。以下のコマンドシーケンスを使用してください。mvn fabric8:undeploy mvn fabric8:deploy
第4章 Fuse スタンドアロン
4.1. サポートされるコンテナー
Fuse スタンドアロン 7.3 は以下のランタイムコンテナーでサポートされます。
- Spring Boot (スタンドアロン)
- Apache Karaf
- Red Hat JBoss Enterprise Application Platform (JBoss EAP)
4.2. Fuse 7.3 の新機能
Fuse スタンドアロンのバージョン 7.3 の主な新機能は次のとおりです。
- Elytron クレデンシャルストアをサポートする新しい Karaf コンソールのコマンド
Karaf で Elytron クレデンシャルストアをサポートするために、以下の新しいコンソールコマンドが追加されました。
-
jasypt:list-algorithms
-
jasypt:digest
-
jasypt:encrypt
-
jasypt:decrypt
-
credential-store:create
-
credential-store:list
-
credential-store:store
-
credential-store:remove
-
- Fuse on JBoss EAP の追加 Camel コンポーネント
以下の追加の Camel コンポーネントが Fuse on JBoss EAP (Wildfly Camel) でサポートされるようになりました。
-
camel-cmis
-
camel-fhir
-
camel-ganglia
-
camel-ipfs
-
camel-lra
-
camel-pgevent
-
camel-solr
-
camel-tika
-
camel-wordpress
-
- Fuse on JBoss EAP での Elytron を使用した camel-undertow コンシューマーエンドポイントのセキュア化のサポート
- Fuse 7.3 では、Fuse on JBoss EAP で Elytron セキュリティーを使用して Camel Undertow コンシューマーエンドポイントをセキュア化することが可能になりました。
4.3. テクノロジープレビューの機能
以下の Fuse スタンドアロンの機能は テクノロジープレビュー であるため、Fuse 7.3 ではサポートされません。
- Saga EIP
- Saga EIP (Enterprise Integration Pattern) はテクノロジープレビューの機能で、実稼働環境に適していない インメモリー Saga サービスのみが対象になります。LRA Saga サービスはサポートされません。詳細は『Apache Camel Development Guide』の「Saga EIP」を参照してください。
4.3.1. Camel LSP の Fuse Tooling サポート
Fuse Tooling は、Camel LSP (Language Server Protocol) エクステンションや、Visual Studio Code、Eclipse IDE、および Eclipse Che のプラグインを使用して、Camel アプリケーションの開発でクロスプラットフォームおよびクロス IDE を提供します。
Visual Studio Code では、WSDL を Camel Rest DSL サポートに提供するエクステンションを追加することもできます。
注記: これらの機能は、デフォルトで Red Hat CodeReady Studio の Fuse Tooling に含まれています。
Visual Studio Code の機能
Language Support for Apache Camel エクステンションは、Camel URI の以下の機能を提供します。
XML DSL および Java DSL の場合:
- エディターは入力時に Camel コンポーネント、属性、および属性値のリストでコード補完を提供します。
- Camel コンポーネントにマウスオーバーすると、エディターにコンポーネントの簡単な説明が表示されます (Apache Camel component reference から)。
- ファイルを編集すると、エディターは Camel コードで Apache Camel 検証チェックを実行します。
XML DSL の場合のみ:
- VS Code の Outline パネルおよび Go > Go to Symbol in File ナビゲーションパネルで、Camel コンテキストおよびルートに移動できます。
-
エディターは入力時に
direct
、direct VM
、VM
、およびSEDA
コンポーネントの参照された ID に対し、コード補完を提供します。 -
開いているすべての Camel ファイルで
direct
およびdirect VM
コンポーネントの参照を見つけることができます。
WSDL 2 Camel Rest DSL エクステンション (wsdl2rest 実装) は、WSDL を Camel Rest DSL サポートに提供します。既存の WSDL ファイルを指定すると、このエクステンションを使用して REST スタイルのアクセスの Camel Rest DSL + CXF ソリューションを生成できます。WSDL ファイルは、ローカルファイルシステム上またはアクセス可能な Web URL から見つけることができます。
Language Support for Camel LSP および WSDL to Camel Rest DSL 機能にアクセスするには、以下のエクステンションを 1 つ以上追加します。
Apache Camel Extension Pack によって以下の VS Code エクステンションがインストールされます。
エクステンションを個別にインストールすることもできます。
詳細は、以下の README ファイルを参照してください。
- Apache Camel Extension Pack の README ファイル。
- Apache Camel Language Server Protocol for Visual Studio Code の README ファイル。
- WSDL to Camel Rest DSL の README ファイル。
Eclipse IDE 機能
Language Support for Apache Camel Eclipse プラグインは Camel URI に以下の機能を提供します。
XML DSL および Java DSL 両方の汎用 Eclipse テキストエディターの場合:
- エディターは入力時に Camel コンポーネント、属性、および属性値のリストでコード補完を提供します。
- Camel コンポーネントにマウスオーバーすると、エディターにコンポーネントの簡単な説明が表示されます (Apache Camel component reference から)。
Eclipse XML または Java エディターを使用する場合は、自動補完機能のみが提供されます。
Language Support for Apache Camel 機能にアクセスするには、Eclipse Marketplace から Eclipse プラグインをインストールします。詳細は、Apache Camel Language Server Protocol for Eclipse IDE の README file を参照してください。
Eclipse Che の機能
Eclipse Che 6 の Language Support for Apache Camel プラグインは、Camel URI および XML DSL のみに機能を提供します。
- エディターは入力時に Camel コンポーネント、属性、および属性値のリストでコード補完を提供します。
- Camel コンポーネントにマウスオーバーすると、エディターにコンポーネントの簡単な説明が表示されます (Apache Camel component reference から)。
- ファイルを保存すると、エディターによって Camel コードで Apache Camel 検証チェックが実行されます。
Eclipse Che 向けのこのプラグインをアクティベートするには、ワークスペースの設定を編集する必要があります。アクティベート方法の詳細は、Red Hat Developers のブログエントリー の「Use in OpenShift.io」を参照してください。
4.4. Fuse 7.3 の BOM ファイル
サポートされる Fuse 7.3 アーティファクトを使用するために Maven プロジェクトを設定するには、本セクションで説明する BOM バージョンを使用してください。
4.4.1. 旧スタイルの BOM
Fuse スタンドアロンアプリケーションをアップグレードして 7.3 の依存関係を使用するには、Maven の pom.xml
を編集し、下表にある BOM と Maven プラグインのバージョンを変更します。
表4.1 旧スタイルの BOM を使用している 7.3 の Maven BOM およびプラグインのバージョン
コンテナータイプ | Maven BOM またはプラグインアーティファクト groupId/artifactId | Fuse 7.3 向けのバージョン | Fuse 7.3.1 向けのバージョン |
---|---|---|---|
Spring Boot |
|
|
|
|
|
| |
|
|
| |
Apache Karaf |
|
|
|
|
|
| |
|
|
| |
JBoss EAP |
|
|
|
4.4.2. 新スタイルの BOM
Fuse スタンドアロンアプリケーションをアップグレードして 7.3 の依存関係を使用するには、Maven の pom.xml
を編集し、下表にある BOM と Maven プラグインのバージョンを変更します。
表4.2 新スタイルの BOM を使用している 7.3 の Maven BOM およびプラグインのバージョン
コンテナータイプ | Maven BOM またはプラグインアーティファクト groupId/artifactId | Fuse 7.3 向けのバージョン | Fuse 7.3.1 向けのバージョン |
---|---|---|---|
Spring Boot |
|
|
|
|
|
| |
|
|
| |
Apache Karaf |
|
|
|
|
|
| |
JBoss EAP |
|
|
|
新スタイルの BOM の使用に関する詳細は、『Migration Guide』の「Migrate Maven Projects」を参照してください。
4.5. 重要事項
Fuse スタンドアロンディストリビューションの Fuse 7.3 リリースにおける重要事項
- JBoss EAP 7.2 (JBoss EAP 7.1 から) を使用するようアップグレードされた Fuse on EAP
- Fuse 7.3 リリースは、JBoss Enterprise Application Platform (EAP) 7.2 コンテナーで実行されるようになりました (Fuse の前リリースの JBoss EAP 7.1 からアップグレード)。詳細は、『JBoss EAP 7.2.0 リリースノート』を参照してください。
- Apache Karaf での Servlet API 4.0 (Java EE 8 から) および Undertow 2.0 へのアップグレード
Fuse 7.3 は、Servlet API 3.1 (Java EE 7 から) ではなく Servlet API 4.0 (Java EE 8 から) を使用するようアップグレードされました。Servlet API 4.0 は Servlet API 3.1 と後方互換性があり、Karaf コンテナーに特定の変更が加えられたため、このアップグレードによるアプリケーションの移行リスクは小さくなります。以下に、Karaf ベースのアプリケーションを移行するときに注意すべき点を示します。
- Undertow 2 サーバーはより新しい Servlet API 4.0 の実装です。
-
Karaf ユーザーまたは管理者の観点からでは、
etc/undertow.xml
またはetc/org.ops4j.pax.web.cfg
設定ファイルに何も変更はありません。この設定はすべて同じです。 開発者の観点から見ると、Servlet API 4.0 によってマイナーな変更が導入されています。
-
javax.servlet.http.HttpServletRequest
また、javax.servlet.http.HttpServletResponse
インターフェースには新たなメソッドがいくつかありますが、default
としてマーク付けされています。そのため、開発者がこれらのインターフェースを実装しても問題はありません。どのような場合でも、これらのインターフェースの実装が必要になるのはまれです (サードパーティーライブラリーによって実装される可能性はあります)。 -
javax.servlet.ServletContext
インターフェースには、default
でない新しいメソッドがいくつか追加されました。このインターフェースのバージョン 3.1 を実装するアプリケーションコードがある可能性は低く、また Fuse アプリケーションで新しいメソッドの 1 つを呼び出してjava.lang.AbstractMethodError
例外がスローされる可能性も低くなります。すべての Fuse コンポーネント (Camel、CXF、pax-web を含む) には新しいメソッドが適切に実装されています (必要な場合)。
-
潜在的に最も大きな影響は OSGi 制約に関連するものです (インポートパッケージ ↔ エクスポートパッケージ)。Karaf コンテナーの Fuse ディストリビューションでは、依存関係を指定したのがバージョン 3.1 か 4.0 のどちらであっても、アプリケーションが Servlet API 4.0 JAR を使用するよう Karaf コンテナーを変更すると問題が解決します。Servlet API 4.0 は 後方互換性があり、3.1 の代わりに使用する場合のリスクはありません。技術的な詳細は以下を続けてお読みください。
Fuse 7.3 は、
mvn:javax.servlet/javax.servlet-api/4.0.1
バンドルにアタッチする Fuse 固有のフラグメントバンドル (mvn:org.jboss.fuse.modules/fuse-servlet-compatibility/7.3.0.fuse-730xxx
) である Servlet API フラグメントバンドルを提供するようになりました。karaf@root()> la|grep Servlet 42 │ Active │ 30 │ 4.0.0 │ Java Servlet API, Fragments: 191 191 │ Resolved │ 35 │ 7.3.0.fuse-730076 │ Red Hat Fuse :: Modules :: Servlet Compatibility, Hosts: 42
Red Hat Fuse :: Modules :: Servlet Compatibility
バンドルの役割は、Servlet API 4.0 バンドルのマニフェストを拡張することのみであるため、他のバンドルはすべて Servlet API のバージョンが 4.0 および 3.1 であることを認識できます。
第5章 非推奨となった機能および削除された機能
Fuse 7 の今後の変更に関するご質問やヘルプは、support@redhat.com にお問い合わせください。
5.1. 非推奨となった機能
以下の機能は Fuse 7.3 で非推奨となったため、今後のリリースで削除される可能性があります。
- 非推奨となった HP-UX OS
- HP-UX オペレーティングシステムは Fuse 7.2 より非推奨となり、このオペレーティングシステムのサポートは Fuse の今後のリリースで除外される可能性があります。JBoss EAP 7.2 コンテナーではすでに HP-UX のサポートが除外されたため、JBoss EAP 7.2 で実行される Fuse on JBoss EAP の今後のバージョンは HP-UX ではサポートされません。
- 非推奨となった Camel MQTT コンポーネント
- Camel MQTT コンポーネントは Fuse 7.0 で非推奨となり、Fuse の今後のリリースでは削除されます。このコンポーネントの代わりに、Eclipse Paho ライブラリーを使用して MQTT メッセージングプロトコルをサポートする Camel Paho コンポーネントを使用できます。
- Linux 以外のオペレーティングシステムで非推奨となった Camel LevelDB コンポーネント
-
Camel LevelDB (
camel-leveldb
) コンポーネントは、Fuse 6.3 より Red Hat Enterprise Linux 以外のすべてのオペレーティングシステムで非推奨となりました。今後、Camel LevelDB コンポーネントは Red Hat Enterprise Linux でのみサポートされます。 - 非推奨となった Camel SJMS コンポーネントからの BatchMessage クラス
- Camel SJMS コンポーネントからの BatchMessage クラスは Fuse 7 で非推奨となり (Apache Camel ではバージョン 2.17 より非推奨)、Apache Camel および Fuse の今後のバージョンで削除される可能性があります。
5.2. Fuse 7.3 で削除された機能
以下の機能は Fuse 7.3 で削除されました。
- 7.3 で削除された Camel YQL コンポーネント
- Camel YQL コンポーネントは Fuse 7.3 で削除されました。
- 7.3 でブラックリスト指定された OpenJPA および OpenJPA3 Karaf 機能
-
openjpa
機能およびopenjpa3
機能は 7.3 の Apache Karaf コンテナーからブラックリスト指定 (削除) されました。Java Persistence Architecture (JPA) 実装では、代わりにサポートされるhibernate
機能を使用してください。 - 7.3 でブラックリスト指定された camel-jetty Karaf 機能
-
camel-jetty
機能は Jetty 8 を使用するため、7.3 の Apache Karaf コンテナーからブラックリスト指定 (削除) されました。この代わりにcamel-jetty9
機能を使用してください。 - 7.3 でブラックリスト指定された pax-jms-oracleaq Karaf 機能
-
pax-jms-oracleaq
機能はサードパーティーの無償でない Oracle AQ ライブラリーを必要とするため、7.3 の Apache Karaf コンテナーからブラックリスト指定 (削除) されました。 - 7.3 の Fuse on EAP (Wildfly Camel) から削除された camel-elasticsearch コンポーネント
-
camel-elasticsearch
コンポーネントは 7.3 の Fuse on EAP (Wildfly Camel) から削除されました。この代わりに、新しいcamel-elasticsearch-rest
コンポーネントを使用してください。
5.3. Fuse 7.2 で削除された機能
以下の機能は Fuse 7.2 で削除されました。
- 7.2 で削除された Camel XMLRPC コンポーネント
- Camel XMLRPC コンポーネントは Fuse 7.2 で削除されました。
- 7.2 で削除された Camel Netty コンポーネント
- Camel Netty コンポーネントは Fuse 7.2 で削除されました。この代わりに Camel Netty4 コンポーネントを使用することが推奨されます。
5.4. Fuse 7.0 で削除された機能
以下の機能は Fuse 7.0 で削除されました。
- 7.0 でサポートが除外された Red Hat JBoss Operations Network (JON)
- Fuse 7.0 より Fuse on Karaf は JON をサポートしなくなり、JON ランタイムと統合するための JON プラグインの提供を停止しました。
- 7.0 で削除された組み込み ActiveMQ ブローカー
- Fuse 7.0 より Fuse on Karaf は組み込み ActiveMQ ブローカーの提供を停止しました。そのため、サポートされるリモートブローカーへ直接接続するようにしてください。サポートされるブローカーの詳細は「Red Hat Fuse でサポートされる構成」の「サポートされるメッセージングプロバイダー」を参照してください。
- 7.0 で削除された Fuse インテグレーションパック
- ルールやプロセスの実行に対するサポートは、Red Hat JBoss BPM Suite および Red Hat JBoss BRMS に含まれるコンポーネントによって提供されます。
- 7.0 で削除された子コンテナー管理用の Karaf コンソールコマンド
Fuse 7.0 より、子コンテナー管理用の Karaf コンソールコマンドはサポートされて いません。対象となる
instance:
(Karaf 4.x 構文) で始まるコンソールコマンドと、admin:
(Karaf 2.x 構文) で始まるコンソールコマンドはサポートされません。注記Fuse 7.0 GA リリースでは、
instance:
コマンドはブラックリストに登録されていません。これは既知の問題です。- 7.0 で削除された Switch Yard
- Switch Yard は Fuse 7.0 で削除され、代わりに Apache Camel を直接使用する必要があります。詳細は、ナレッジベースの「SwitchYard Support Plan After Releasing Fuse 7」を参照してください。
- 7.0 で除外された Fabric8 1.x のサポート
Fuse 7.0 で Fabric8 v1 は Fabric8 v2 のコンポーネントが含まれる Fuse on OpenShift (旧名称 Fuse Integration Services) に置き換えられました。Fuse on OpenShift は、OpenShift 内でインテグレーションマイクロサービスの開発、デプロイメント、および管理を可能にするツールのセットと Docker 形式のイメージを提供します。
Fuse on OpenShift のアーキテクチャーは異なりますが、Fabric 8 v1 が提供する同じプロビジョニング、自動化、中央構成、管理要件に対応します。詳細は『Fuse on OpenShift Guide』を参照してください。
- 7.0で削除された Google App Engine の Camel コンポーネント
-
Google App Engine の Camel コンポーネント (
camel-gae
) は Fuse 7.0 で削除されました。 - 7.0 で削除された Camel jBPM コンポーネント
-
Camel jBPM コンポーネント (
camel-jbpm
) は Fuse 7.0 で削除されました。 - 7.0 で削除された Fuse をサービスとしてインストールするための Tanuki ベースのラッパー
-
Fuse をサービスとしてインストールするための Tanuki ベースのラッパースクリプト (
wrapper:install
Karaf コンソールコマンドを使用して生成) は Fuse 7.0 で削除されました。Apache Karaf コンテナーをサービスとしてインストールする場合、この代わりにkaraf-service-*.sh
ディレクトリーから新しいbin/contrib
スクリプトを使用することが推奨されます。 - 7.0 で削除された Smooks
- Switch Yard の Smooks コンポーネントは Fuse 7.0 で削除されました。
- 7.0 で削除された BPEL
- Riftsaw プロジェクトをベースとする BPEL は Fuse 7.0 で削除されました。BPEL を現在使用している場合は、Red Hat JBoss BPM Suite への移行を考慮することが推奨されます。
- 7.0 で削除された Design Time Governance
- Design Time Governance コンポーネントは Fuse 7.0 で削除されました。
- 7.0 で削除された Runtime Governance
- Runtime Governance (RTGov) コンポーネントは Fuse 7.0 で削除されました。
- 7.0 で削除された S-RAMP
- S-RAMP (SOA Repository Artifact Model and Protocol) コンポーネントは Fuse 7.0 で削除されました。
- 7.0 で削除された bin/patch スクリプト
-
bin/patch
スクリプト (Windows O/S ではbin\patch.bat
) は Fuse 7.0 で削除されました。 - 7.0 でサポートされない Spring-DM (Spring Dynamic Modules)
- Spring XML を Apache Karaf の OSGi サービスレイヤーと統合する Spring-DM は Fuse 7.0 ではサポートされないため、代わりに Blueprint フレームワークを使用する必要があります。Blueprint XML を使用しても、Spring フレームワークから Java ライブラリーを使用することはできます。最新バージョンの Spring は Blueprint と互換性があります。
- 7.0 でサポートされない Apache OpenJPA
- JPA (Java Persistence API) の Apache OpenJPA 実装は Fuse 7.0 ではサポートされません。代わりに Hibernate 実装を使用することが推奨されます。
5.5. Fuse 7.0 で置き換えられた機能
以下の機能は Fuse 7.0 で置き換えられました。
第6章 Fuse 7.3 でサポートされない機能
以下の機能は、Red Hat Fuse 7.3 ではサポートされません。
- サポートされない Apache Karaf EclipseLink 機能
- Apache Karaf EclipseLink 機能は Fuse ではサポートされません。この機能は JPA 2.2 に依存しますが、Fuse 7.2 の Karaf コンテナーは JPA 2.1 と関連しているからです。
- サポートされない Apache Aries Blueprint Web モジュール
- Apache Aries Blueprint Web モジュールは Fuse ではサポートされません。Apache Camel のコミュニティー版で Blueprint Web を使用している例がありますが (個別ダウンロードとして提供)、Fuse でのサポートを意味するものではありません。
- Apache Karaf の Apache Camel でサポートされない PHP スクリプト言語
- PHP の OSGi バンドルがないため、PHP スクリプト言語は Apache Karaf コンテナー上の Camel アプリケーションでサポートされません。PHP スクリプト言語は、JBoss EAP コンテナーおよび Spring Boot コンテナー上の Camel アプリケーションでは非推奨になりました。
- Apache Karaf の Apache Camel でサポートされない Python スクリプト言語
- Python の OSGi バンドルがないため、Python スクリプト言語は Apache Karaf コンテナー上の Camel アプリケーションでサポートされません。Python スクリプト言語は、JBoss EAP コンテナーおよび Spring Boot コンテナー上の Camel アプリケーションでは非推奨になりました。
第7章 既知の問題
以下の項ではバージョン 7.3 の既知の問題について説明します。
7.1. CVE セキュリティー脆弱性
Fuse はミドルウェア統合プラットフォームであるため、多くのサードパーティーコンポーネントと統合される可能性があります。そのため、サードパーティーの依存関係の一部にセキュリティーの脆弱性がある可能性を常に排除することは困難です。ここでは、Fuse 7.3 のサードパーティーの依存関係に影響する既知のセキュリティー脆弱性について説明します。
- ENTESB-12489 CVE-2019-9827 - Fuse Console standalone on Amazon Web Services
-
セキュリティーの懸念があるため、スタンドアロンの Fuse アプリケーションを Amazon Web Services (AWS) にデプロイしないでください。この制限は、サポートされるすべてのスタンドアロン環境 (Spring Boot 1.x および 2.x、Karaf、および Red Hat JBoss Enterprise Application Platform) に適用されます。AWS に Fuse Console スタンドアロンをデプロイする場合は、Fuse 7.7 以降にアップグレードし、
hawtio.disableProxy
システムプロパティーをtrue
に設定して Fuse Console のプロキシーサーブレットを無効にすることが強く推奨されます。 - CVE-2017-12629 Solr/Lucene -security bypass to access sensitive data - CVE-2017-12629
Apache Solr は、Apache Lucene 検索エンジンを使用する一般的なオープンソースの検索プラットフォームです。アプリケーションが Apache Solar と Apache Lucene の組み合わせ (Camel Solr コンポーネントを使用している場合など) を使用する場合、このセキュリティー脆弱性の影響を受ける可能性があります。この脆弱性の詳細と軽減策について、リンク先のセキュリティーアドバイザリーを確認してください。
注記Fuse ランタイムは Apache Solr や Apache Lucene を直接使用 しません。統合アプリケーションで Apache Solr と Apache Lucene を一緒に使用する場合のみセキュリティー上のリスクが発生します (Camel Solr コンポーネントを使用する場合など)。
- 複数の CVE jackson-databind セキュリティー脆弱性に関連する複数の CVE
FasterXML
jackson-databind
ライブラリーを使用し、JSON コンテンツをデシリアライズして Java オブジェクトをインスタンス化するアプリケーションは、潜在的に リモートコード実行 攻撃に脆弱です。しかし、脆弱性は自動的に発生せず、適切な軽減策を講じれば回避することができます。最低でも以下の前提条件をすべて満たさなければ攻撃を実行することはできません。
jackson-databind
の JSON コンテンツのデシリアライズに対し、ポリモーフィックな型の処理を有効にする必要があります。Jackson JSON でポリモーフィックな型の処理を有効にする方法は 2 つあります。-
@JsonTypeInfo
および@JsonSubTypes
アノテーションの組み合わせを使用します。 -
ObjectMapper.enableDefaultTyping()
メソッドを呼び出します。この方法はポリモーフィックな型をグローバルで有効にするため、危険です。
-
-
現在のバージョンの
jackson-databind
によってブラックリストに指定されていない ガジェットクラス が 1 つ以上 Java クラスパスにあります。ガジェットクラスは、機密性の高い (潜在的に悪用可能な) 操作を、constructor または setter メソッド (デシリアライズ中に呼び出しできるメソッド) の実行による副次的な影響として定義します。Jackson JSON ライブラリーによって維持されるガジェットブラックリストは、リモートコード実行の脆弱性から守るための最後の手段になります。
jackson-databind
の脆弱性に関して多くの CVE が存在するのは、多数のガジェットクラスが存在するためです。ガジェットクラスの種類別に異なる CVE が存在します。アプリケーションで
jackson-databind
を使用する必要がある場合、Jackson JSON でポリモーフィックな型の処理を行わないようにし、ObjectMapper.enableDefaultTyping()
メソッドを絶対に呼び出さないことが、リスクを軽減する最も重要な対策になります。
7.2. Fuse Online
Fuse Online ディストリビューションの既知の問題は次のとおりです。
- ENTESB-10577 Apicurito does not support YAML Open API spec files
- Fuse 7.3.0 on OpenShift では、Apicurito はデフォルトで OpenAPI 仕様ファイルを YAML 形式で生成しますが、生成された YAML ファイルを再インポートできません。現在、JSON 形式のみを Apicurito にインポートできます。
- 667 'null' when using "ItemAt" transformation from List<> → Number
-
ItemAt
変換を使用してList
からDouble
へマップすると、データマッパーによって例外がスローされます。 - 1558 "Save as draft" and "Publish" buttons
- Save as draft ボタンと Publish ボタンのいずれかをクリックし、手順が開始されても、両方のボタンがアクティブなままになります。
- 698 DB Connector: SQL parser doesn’t recognize parameters for LIKE
-
LIKE
キーワードが含まれる SQL ステートメント (例:DELETE FROM TODO WHERE task LIKE ‘:#param’
) では、LIKE
キーワードを:#param
などのデータマッパーパラメーターとともに使用できません。
7.3. Fuse on OpenShift
このセクションでは、OpenShift 上の Fuse アプリケーションのデプロイメントに影響する問題を取り上げます。特定のコンテナーに影響する問題の詳細は、Spring Boot、Fuse on Apache Karaf、および Fuse on JBoss EAP のセクションも参照にしてください。Fuse on OpenShift ディストリビューションの既知の問題を以下に示します。
- ENTESB-10577 Apicurito does not support YAML Open API spec files
- Fuse 7.3.0 on OpenShift では、Apicurito はデフォルトで OpenAPI 仕様ファイルを YAML 形式で生成しますが、生成された YAML ファイルを再インポートできません。現在、JSON 形式のみを Apicurito にインポートできます。
- ENTESB-9420 karaf-camel-rest-sql: Build creation stuck on "Receiving source from STDIN as archive"
- 初期のマイクロバージョンの OpenShift Container Platform (OCP) 3.10 にFuse アプリケーションをビルドまたはデプロイしようとすると、エラーが発生し、ビルドがハングする可能性があります。この問題が発生した場合、この問題が修正されている OCP 3.10.34 (またはそれ以降) にアップグレードすることが推奨されます。
- CDK-397 OCP preflight check uses docker v1 API which is no longer available
一部の古い CDK バージョンを使用すると、
minishift
の起動時に以下のエラーが発生する可能性があります。minishift start -- Starting profile 'minishift' -- Check if deprecated options are used ... OK -- Checking if https://mirror.openshift.com is reachable ... OK -- Checking if requested OpenShift version 'v3.11.16' is valid ... FAIL
この問題を回避するには、Fuse 7.3 で CDK 3.8 以上を使用します。
- ENTESB-10362 multiple class javax/activation/DataHandler from different bundles
Fuse on OpenShift にデプロイされた Karaf ベースのアプリケーションがメッセージの添付を使用する場合 (暗黙的な javax.activation パッケージの依存関係)、この問題の影響を受けます。通常、以下のようなエラーメッセージが発生します。
Caused by: java.lang.LinkageError: loader constraint violation: when resolving overridden method "org.apache.cxf.jaxrs.provider.JAXBAttachmentMarshaller.addMtomAttachment(Ljavax/activation/DataHandler;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;" the class loader (instance of org/apache/felix/framework/BundleWiringImpl$BundleClassLoader) of the current class, org/apache/cxf/jaxrs/provider/JAXBAttachmentMarshaller, and its superclass loader (instance of <bootloader>), have different Class objects for the type javax/activation/DataHandler used in the signature
OpenShift にデプロイされた Karaf ベースのアプリケーションからこのようなエラーメッセージが出力された場合、アプリケーションの Maven プロジェクトを以下のように編集すると、この問題を修正できます。Maven プロジェクトで新しい
jre.properties
ファイルを以下の場所に作成します。src/main/resources/assembly/etc/jre.properties
そして、サンプルの jre.properties ファイルからコンテンツを追加します。
アプリケーションが再デプロイされたとき、このカスタム
jre.properties
ファイルは Karaf マイクロコンテナーの デフォルトの JRE プロパティーをオーバーライドします。特に、jre.properties
ファイルはデフォルトでは存在しない以下の行をjre-1.8
プロパティーに追加します。javax.activation;version="1.1", \
注記Fuse スタンドアロンの Apache Karaf はこの問題の影響を受けません。
7.4. Fuse on Spring Boot
Fuse on Spring Boot の既知の問題は次のとおりです。
- ENTESB-10486 Failing CXF tests on AIX using Karaf runtime
Fuse 7.3 GA リリースでは、IBM AIX 7.2 プラットフォーム上で Apache CXF を Spring Boot スタンドアロンコンテナーと使用するには以下の回避策が必要です。Spring Boot アプリケーションを実行するときに、Java システムプロパティー
java.version=1.8.0_131
を設定します。たとえば、Spring Boot アプリケーションを Maven プロジェクトから実行するには、以下を実行します。mvn spring-boot:run -Djava.version=1.8.0_131
7.5. Fuse on Apache Karaf
Fuse on Apache Karaf の既知の問題は次のとおりです。
- ENTESB-10487 keycloak-cxf quickstart test fails with RH-SSO 7.3.0.GA
-
Fuse 7.3 GA リリースでは、Apache Karaf のクイックスタートパッケージに
quickstarts/security/keycloak/keycloak-cxf
クイックスタートが含まれています。Red Hat Single Sign-On(RH-SSO)7.3.0.GA に対してこのクイックスタートをテストする場合は、verify-token-audience
プロパティーがetc/jaxws-keycloak.json
ファイルおよびetc/jaxrs-keycloak.json
ファイルのfalse
に設定されていることを確認する必要があります。詳細は ENTESB-10487 を参照してください。 - ENTESB-10486 Failing CXF tests on AIX using Karaf runtime
Fuse 7.3 GA リリースでは、IBM AIX 7.2 プラットフォーム上で Apache CXF を Apache Karaf コンテナーと使用するには以下の回避策が必要です。
$KARAF_HOME/etc/system.properties
ファイルを編集し、以下の行を追加します。java.version=1.8.0_131
- ENTESB-8140 Start level of hot deploy bundles is 80 by default
Fuse 7.0 GA リリースの Apache Karaf コンテナーでは、ホットデプロイバンドルの開始レベルがデフォルトで 80 になっています。これにより、同じ開始レベルを持つシステムバンドルや機能が多く存在するため、ホットデプロイバンドルに問題が発生することがあります。この問題を回避し、ホットデプロイバンドルが確実に開始するようにするには、
etc/org.apache.felix.fileinstall-deploy.cfg
ファイルを編集し、felix.fileinstall.start.level
設定を以下のように変更します。felix.fileinstall.start.level = 90
- ENTESB-7664 Installing framework-security feature kills karaf
framework-security
オプションを使用して--no-auto-refresh
OSGi 機能をインストールしないと、Apache Karaf コンテナーがシャットダウンします。以下に例を示します。feature:install -v --no-auto-refresh framework-security
7.6. Fuse on JBoss EAP
Fuse on JBoss EAP の既知の問題は次のとおりです。
- ENTESB-10400 Performance regression in camel-cbr-xpath integration example on EAP
- Fuse 7.3 on JBoss EAP での XPath と Camel の統合に影響するパフォーマンス低下がテストによって発見されました。テストケースには、指定の XPath 式に対してメッセージの内容を評価するCamel のコンテンツベースルートが関係します。
- ENTESB-10401 Performance regression in camel-cxf-proxy-xslt integration example on EAP
- Camel XSLT コンポーネントと Fuse 7.3 on JBoss EAP の統合に影響するパフォーマンス低下がテストによって発見されました。テストケースには、SOAP メッセージの CXF エンドポイントへの送信が関係し、Camel XSLT コンポーネントを介して呼び出される XSL スクリプトによってメッセージが処理されます。
- ENTESB-10402 Performance regression in Fuse Http Camel SSH integration example on EAP
- Camel SSH コンポーネントと Fuse 7.3 on JBoss EAP の統合に影響するパフォーマンス低下がテストによって発見されました。テストケースには、HTTP メッセージの Jetty HTTP エンドポイントへの 送信が関係し、SSH エンドポイントの呼び出しにメッセージが使用されます (Camel SSH コンポーネントを使用)。
7.7. Apache Camel
Apache Camel の既知の問題は次のとおりです。
- ENTESB-7469 Camel Docker component cannot use Unix socket connections on EAP
-
Fuse 7.0 より、
camel-docker
コンポーネントは UNIX ソケットではなく REST API のみを介して Docker に接続できます。 - ENTESB-5231 PHP script language does not work
- PHP の OSGi バンドルがないため、PHP スクリプト言語は Apache Karaf コンテナー上の Camel アプリケーションでサポートされません。
- ENTESB-5232 Python language does not work
- Python の OSGi バンドルがないため、Python スクリプト言語は Apache Karaf コンテナー上の Camel アプリケーションでサポートされません。
- ENTESB-2443 Google Mail API - Sending of messages and drafts is not synchronous
- メッセージまたは下書きを送信すると、応答には ID を持つ Message オブジェクトが含まれます。API への別の呼び出しを介してこのメッセージを即座に取得できない可能性があります。このような場合、待機して呼び出しを再試行する必要があります。
- ENTESB-2332 Google Drive API JSON response for changes returns bad count of items for the first page
- 変更に対する Google Drive API JSON 応答によって返される最初のページのアイテム数は適切でありません。リスト操作の maxResults を設定すると、最初のページにすべての結果が返されないことがあります。この場合、複数のページを確認して完全リストを取得する必要があります (新しいリクエストに pageToken を設定して行います)。
第8章 Fuse 7.3.1 で解決された問題
以下の表に Fuse 7.3.1 で解決された問題を示します。
表8.1 Fuse 7.3.1 で解決された問題
問題 | 説明 |
---|---|
application-templates の存在しないタグ。 | |
F-M-P が | |
Fuse Online 7.3 をインストールできない。 | |
CVE-2016-2510 camel: bsh2: デシリアライズによるリモートコードの実行 [fuse-7.2.0] | |
CVE-2017-15691 uimaj: uima: XML 外部エンティティー拡張 (XXE) により、攻撃者は任意コードを実行できる [fuse-7.2.0]。 | |
CVE-2018-11798 camel-thrift: thrift: 不適切なアクセス制御により web サーバー docroot パス外部のファイルにアクセスが付与される [fuse-7.2.0]。 | |
CVE-2018-11798 libthrift: thrift: 不適切なアクセス制御により web サーバー docroot パス外部のファイルにアクセスが付与される [fuse-7.2.0]。 | |
camel cxf によってスローされる同時変更例外 | |
EAP の camel-cxf-proxy-xslt インテグレーション例のパフォーマンス不具合 | |
EAP の camel-cbr-xpath インテグレーション例のパフォーマンス不具合 | |
Fuse Online: サードパーティー (カスタム) camel コンポーネントでコネクターエクステンションを使用した場合の Null Pointer 例外。 | |
Spring-boot-camel-xa クイックスタートが古いバージョンの bom を ( | |
[Hawtio on Karaf + RHSSO] RHSSO と Hawtio のインテグレーションで FileNotFoundException が発生。 | |
[Hawtio] 認証がなくても URL で直接 Hawtio にアクセスできる [7.3.1] | |
Fuse Online の syndesis: 組み込み Atlasmap を使用してマッピングを設定すると、ajax リクエストの無限ループが開始され、サーバーの再起動の原因となる。 |
第9章 Fuse 7.3 で修正された問題
以下のセクションには、Fuse 7.3 で修正された問題が記載されています。
9.1. Fuse 7.3 で改良された機能
以下の表に Fuse 7.3 で改良された機能を示します。
表9.1 Fuse 7.3 で改良された機能
問題 | 説明 |
---|---|
Elytron での Undertow エンドポイントセキュア化のサポート | |
[camel-slack] ハードコードされた URL のパラメーター化 | |
インストーラーは EAP のサポートされるバージョンを検証すべき | |
HTTP プロデューサー - コンテンツ長ヘッダーの無視 | |
全 Camel/Fuse SpringBoot ベースクイックスタート/テンプレート/ブースターの分類子の使用を削除 | |
データソース作成により同じ名前の DS が複数登録される | |
Fuse 7 の子コンテナーが作成可能な Karaf コマンドをブラックリスト | |
DB2 11.1 の認定を検討 | |
独自のリポジトリーから Fuse 7 クイックスタートを移動する可能性を評価 | |
Fuse Camel への Port AS2 コンポーネント | |
My SQL 8.0 の認定を検討 | |
Camel RAW() パーサーをより柔軟にする | |
カスタム PersistenceManager の Elytron クレデンシャルストアを新しい felix.configadmin 1.9.0 で使用する | |
KARAF-6167 のバックポート | |
[Hawtio] ProxyWhitelist - 自動的に収集された IP アドレスの除外/制御 | |
camel-rest-swagger の追加 | |
AMQ 7.2 ブローカーに合わせるため Fuse の AMQ 7.1.1 クライアントを AMQ 7.2 に更新 | |
Fuse ランチャーブースターの作成 - Istio - 分散トレース |
9.2. Fuse 7.3 の機能リクエスト
以下の表に Fuse 7.3 の機能リクエストを示します。
表9.2 Fuse 7.3 の機能リクエスト
問題 | 説明 |
---|---|
3scale によって検出されるされるように openapi ドキュメントを生成するクイックスタートを更新 | |
camel-ipfs のサポートを追加 | |
Hawtio Console から MDC カスタムプロパティーのロギングを認識できない | |
EAP 7.2 から Artemis/QPid/Proton ライブラリーをアップグレード |
9.3. Fuse 7.3 で解決されたバグ
以下の表に Fuse 7.3 で解決されたバグを示します。
表9.3 Fuse 7.3 で解決されたバグ
問題 | 説明 |
---|---|
camel-wildfly 例の fuse-bom の使用 | |
汎用の camel REST DSL テストのセットを作成 | |
Elytron での CXF RS エンドポイントのテスト | |
fuse-eap-bom から冗長な依存関係の再定義を削除 | |
Fuse の Grafana ダッシュボードの作成 | |
cxf-jaxws-secure サンプルから未使用の CXF インターセプターを削除 | |
https://github.com/jboss-fuse/fuse-karaf/ から quickstarts dir を削除 | |
新たに再パッケージされた BOM org.jboss.redhat-fuse を使用するよう karaf-quickstarts を更新 | |
Elytron によってセキュア化される CXF RS サンプルを追加 | |
[camel-irc] camel 修正のチェリーピック | |
テンプレート SIFT ロギング設定の提供 | |
REST DSL クイックスタート: サービス検出をサポートする製品化された FMP バージョンの更新 | |
camel-sjms テストリファクタリングのバックポート | |
javax.annotation 1.2 および 1.3 との間で決定/調整 | |
CAMEL-13066 のバックポート | |
CAMEL-13072 のバックポート | |
CAMEL-13077 のバックポート | |
EAP 7.2 から Hibernate と適合 | |
google-calendar-stream が Karaf で動作しない | |
CAMEL-12498 のバックポート | |
CAMEL-12980 を jboss-fuse/camel へバックポート | |
CAMEL-13044 のバックポート | |
CAMEL-13041 のバックポート | |
QL コンポーネントを非推奨/削除 | |
CAMEL-12932 のバックポート | |
CAMEL-12631 のバックポート | |
FUSE 7.3 CXF ブランチのシステムテストが http-undertow トランスポートに対して実行されるようにする | |
7.2 を示すよう Fuse Online のドキュメントリンクを更新 | |
Karaf/EAP の Fuse Console: PatternFly 4 への部分アップグレード | |
Salesforce Maven プラグイン改良点のバックポート | |
CAMEL-13284 のバックポート | |
Karaf の exit コマンドが無効 | |
CAMEL-12774 のバックポート | |
OpenShift Online Catalog には Fuse 7 エントリーのみが含まれるべきである | |
Camel が無効な CXF ランタイムバージョン cxf-rt-ws-policy をリークする | |
hibernate-jpa-2.1-api の依存関係を削除 | |
Spring-Boot - Narayana: 最新バージョンへのアップグレードおよび孤立検出の内部チェックの使用 | |
CAMEL-13012 のバックポート | |
CAMEL-13008 のバックポート | |
CAMEL-13005 のバックポート | |
CAMEL-13006 のバックポート | |
CAMEL-13063 のバックポート | |
CAMEL-13061 のバックポート | |
CAMEL-13059 のバックポート | |
CAMEL-13058 のバックポート | |
CAMEL-13054 のバックポート | |
Fuse console operator | |
activemq-client を 630377 に更新 (Fuse 6.3.R11) | |
エンドポイントがオフラインのときにジオコーダーが失敗する | |
CAMEL-13123 のバックポート | |
CAMEL-13042 のバックポート | |
AMQ 7.2.3 リリースへの適合 | |
Camel K Runtime によって使用されるユーティリティーメソッドのバックポート | |
Fuse 7.3 の camel-jbpm のサポートを削除 | |
CXF 3.2 と動作するよう jboss-fuse/camel/2.21.x.redhat-7-x を調整 | |
EAP 7.2 から CXF 3.2 を使用した調査 | |
EAP 7.2 から Undertow 2 を使用した調査 | |
ENTESB-8088 の変更後に camel-linkedin クイックスタートを更新 | |
example-camel-distro アーティファクトを zip に変換 | |
キット (スタンドアロン) に camel-infinispan が同梱されるかどうか確認 | |
Syndesis integration-bom が製品化された atlasmap に適合しない | |
CAMEL-13082 のバックポート | |
CAMEL-13185 のバックポート | |
CAMEL-13132 のバックポート | |
camel-servlet を OSGI サービスとして公開 | |
EndpointValidation の失敗時に ValidationException がスローされない | |
メトリクスラベルの値が 2 重引用符で 2 回囲まれる | |
Hawtio: OSGi Features タブに 「Add repository」と「Remove repository」ボタンがなくなった | |
org.osgi.service.http.port への変更が Fuse ブランディングに反映されていない | |
BusDeploymentAspect が誤ったクラスローダーを使用して CXF DefaultBus を作成する | |
karaf-camel-rest-sql で Swagger が動作しない | |
Jetty 9.4.12 へのアップグレード後に CAMEL-12911 を修正 | |
[camel-salesforce] API による InvalidFormatException のスローを制限 | |
[camel-jcache] MBean が適切にアンデプロイされない | |
Apicurito ウィザードの誤記 | |
[camel-rest, camel-swagger-java] swagger.json の誤ったプロトコル | |
Camel rest DSL が SSL 設定および spring-boot の API ドキュメントと動作しない | |
fabric8-quickstarts/karaf-cxf-rest のビルドが破損している | |
7.3 で secure-soap クイックスタートが NPE をスローする | |
2.21.xredhat-7-x ブランチの camel の CamelCxfClientImpl コンパイルエラーを修正 | |
camel ルート再起動後に ClassNotFoundException が発生 | |
外部 AMQ-7 に接続する JMS 上で CXF JAX-RS を使用すると断続的なエラーが発生 | |
「No tests found in org.apache.camel.impl.validator.ValidatorXmlSchemaTest」の修正 | |
失敗する CamelInfinispanTest のテストによって検出された問題を修正 | |
[camel-dropbox] DropboxAPIFacade.java の修正 | |
[camel-dropbox] put 操作の問題 | |
Camel-hl7 クイックスタートが新しい fuse-karaf でインストールできない | |
[Hawtio EAP] 右側のアクションが含まれるドロップダウンメニューで無効化されたボタンを使用できる | |
[karaf] karaf の展開が OSX で動作しない | |
[FUSE-KARAF] ssh 接続が切断される | |
cxf-wsn 機能をインストールできない | |
Fuse 7 Karaf コンソールに暗号化コマンドが存在しない | |
IllegalArgumentException により blueprint.xml ファイルがすべてデプロイできない。サポートされない http://javax.xml.XMLConstants/property/accessExternalDTD | |
camel-telegram が spring-boot で動作しない | |
CAMEL - 13093 を Red Hat Fuse 7.x および 6.3 にバックポート | |
CAMEL-13098 のバックポート | |
CVE-2018-1131 camel: infinispan: XML および JSON トランスコーダーのデータのデシリアライズ [fuse-6.3.0] | |
CVE-2018-1131 camel: infinispan: XML および JSON トランスコーダーのデータのデシリアライズ [fuse-7.0.0] | |
アップストリームからの IRC コネクター修正のバックポート | |
Windows 10 の初期化中に Fuse 7.x がフリーズする | |
[リグレッション] spring-boot で camel-servicenow を実行できない | |
Camel-Salesforce Karaf 機能が動作しない | |
application-templates に製品化された修正が含まれるべき | |
application-templates が古いクイックスタートを参照する | |
org.apache.camel.itest.karaf.CamelOptaplannerTest.test によって検出された問題の修正 | |
[Hawtio on Spring Boot] web ブラウザーで更新後またはクリックして戻った後に見つからないページ | |
[Fuse_on_EAP] Camel FTPS が java.lang.NoClassDefFoundError: javax/net/ssl/SSLException をスロー | |
karaf - ${karaf.home}/etc は etc 設定で ${karaf.etc} を使用すべき | |
[Hawtio Springboot] Authentication for new connection doesn’t work (新しい接続の認証が動作しない) | |
javax.ws.rs-api-version の適合 | |
spring-boot-camel-xa - 2 found in /deployments (expected 1) | |
karaf-cxf-rest クイックスタートにプローブがない | |
[Fuse Karaf] 7.3 dev ビルドにクイックスタートがない | |
spring-boot-cxf-jaxrs クイックスタートが動作しない | |
camel-linkedin: EAP で fields プロパティーの動作が異なる | |
cxf-transport-jetty で null ポインター | |
Fuse のメタスペースが ProxyClassLoader クラスで満たされる | |
EAP の camel-irc にモジュール依存関係がない | |
org.glassfish javax.el 3.x の置き換えが正しくない | |
camel-sql が入れ子の簡単な式を解決できない | |
CVE-2017-7656 jetty: range ヘッダーを使用した HTTP リクエストスマグリング [fuse-7.0.0] | |
CVE-2017-7658 jetty: 不適切なヘッダー処理 [fuse-7.0.0] | |
CVE-2017-7657 jetty: HTTP リクエストスマグリング [fuse-7.0.0] | |
OSGi での Servlet API 解決エラー | |
「Unable to initialize bean kc-cxf-endpoint-config」により Keycloak-cxf クイックスタートが失敗する | |
keycloak-httpservice クイックスタートの問題 | |
CXF 3.2.x へのアップグレード後に keycloak-cxf クイックスタートが失敗する | |
CXF JAX-RS 優先度が再び Karaf で動作しない | |
テスト MllpTcpClientProducerConnectionErrorTest.testConnectionResetAndServerShutdownBeforeSendingHL7Message の失敗によって検出された問題の修正 | |
ccxf-parent-3.1.11.fuse-720057-redhat-00001.pom と Fuse 7.2 karaf コンテナー間での commons-lang アーティファクトバージョンのミスマッチ | |
プラットフォーム間で異なるバージョンの Undertow | |
karaf-camel-log: ClassNotFoundException: javax.servlet.Servlet | |
javax.ws.rs-api は 2.1.1 であるべき | |
restlet に patch メソッドがない | |
Spring Boot BOM の適合されていないバージョンの Narayana | |
プロファイルに fuse-extras-distro 製品ライセンスの変更を反映 | |
18 個の機能をインストールできない | |
camel-linkedin - IllegalArgumentException: linkedin 認証中のアプリケーション承認エラー | |
開始レベルが 50 未満でもマネージャーロールが setStartLevel を実行できる | |
Fuse 7.2 に含まれる pax-jdbc-postgresql の誤ったアーティファクトバージョン | |
[Fuse Online] view_log_on_openshift ボタンで誤ったページにリダイレクトされる | |
| |
camel yammer コンポーネントが存在しないページにアクセスする | |
Undertow 2 へのアップグレード後に Camel Undertow テストに失敗する | |
rest-swagger のパス解決にパス全体が含まれない | |
ClassNotFoundException: com.sun.el.ExpressionFactoryImpl not found by org.hibernate.validator | |
[Hawtio Spring Boot] Debug 属性が読み取り専用状態を変更 | |
Cxf-soap、keycloak-httpservice quickstart - サーブレットエイリアスの変更中、ログに java.io.FileNotFoundException が存在 | |
oc バージョンに別の oc の発生が含まれると Fuse Online のインストールが動作しない | |
karaf 機能をインストールできない | |
プラットフォーム間で異なるバージョンの Spring | |
Karaf BOM に誤ったバージョンの javax.ws.rs-api 依存関係が含まれる | |
プラットフォーム間で異なるバージョンの Narayana | |
org.apache.servicemix.bundles.jasypt-1.9.3.redhat_3.jar を同梱または関連する修正を取得 | |
Camel-linkedin クイックスタートは jetty に依存するため、servlet-api < 4.0 に依存する | |
Maven ラッパーは Windows のブースターで動作しない | |
javassist を 3.24.0-GA にアップグレード | |
プラットフォーム間で異なるバージョンの Hibernate | |
narayana-spring-boot は Fuse バージョンの kubernetes-client と適合しない | |
Hibernate のアップグレード後に Camel BAM テストに失敗する | |
機能をインストールできない | |
FMP がイメージストリーム 1.3 を想定する | |
fuse karaf: ServletContainerInitializer の警告 | |
karaf-camel-amq、karaf-camel-rest-sql: 準備プローブが動作しない | |
ffabric8-maven-plugin - マッチする RBAC ポリシーがない | |
Spring Boot BOM が hibernate-core を定義しない | |
camel-undertow: xnio-nio がインストールされない | |
karaf イメージに誤った KARAF_FRAMEWORK_VERSION env がある | |
org.apache.kafka:kafka-clients のライセンス情報がない | |
Syndesis が Fuse ディストリビューションとは異なるバージョンの Spring boot を使用する | |
Fuse 7.3 の拒否リストに登録された機能 | |
spring-camel-dozer: javax.el missmatch | |
karaf-camel-rest-sql: タイプ org.apache.camel.spi.RestConsumerFactory のサーブレットのレジストリーに bean が見つからない | |
karaf-camel-amq: ClassNotFoundException: io.netty.handler.ssl.OpenSslX509KeyManagerFactory not found by io.netty.handler | |
CVE-2018-11788 karaf: XML 外部エンティティー処理 [fuse-7.2.0] | |
Windows Server 2016 の Karaf Console の ReadConsoleInput エラー | |
Hawtio: 汎用 Features からの機能のインストール中にエラー | |
"Hawtio + Keycloak - 「logout」ボタン/リンクがない | |
Hawtio: 一部機能のインストールによって Hawtio コンソールの接続が切断される | |
Fuse Online サポートページのバージョンに「Ignite」が含まれる | |
XA トランザクションが MSSQL データベースと動作しない | |
org.apache.kafka:kafka_2.11:jar:2.0.0.redhat-00003 は Camel 向けにビルドされていない | |
ネイティブライブラリー db2jcct2 のロードに失敗 | |
application-templates: 誤った spring-boot-camel-xa タグを示す | |
Karaf に javax.annotation 1.3 バージョンがない | |
camel-jsonpath 機能の依存関係の 1 つ json-smart-action が redhat-fuse-7.2.0-offline-manifest ファイルにリストされない | |
アップストリーム jira https://issues.apache.org/jira/browse/CAMEL-12638 を Fuse 7.3 に追加 | |
誤ったラベル - Generate Fuse 7.1 Camel Project | |
want および required 属性を両方 true に設定すると CXF http-undertow トランスポートが相互の SSL と動作しない | |
syndesis の integration-bom で Camel バージョンが製品化されたバージョンに対して置き換えされない | |
[Hawtio] 認証がなくても URL で直接 Hawtio にアクセスできる | |
blueprint.core 1.10 へのアップグレード後に CxfEndpointBeansTest テストに失敗する | |
istio ブースタードキュメントの問題 | |
Fuse 7.3 CR1 on EAP に製品化されたクイックスタートが含まれない | |
rhba-features ファイルに Jackson バンドルがない | |
クイックスタートが製品化されていない BOM を示している | |
EAP 7.2 の Fusesource コンポーネントのリストア | |
CVE-2018-11788 karaf: XML 外部エンティティー処理 [fuse-6.3.0] | |
デプロイメントの設定で NPEの により EAR デプロイメントに失敗する | |
CXF エンドポイントで WAR ごとに複数の Elytron セキュリティードメイン | |
EAP 7.2 への更新 | |
デフォルトで Fuse Karaf の etc/key.properties 管理ロールに ssh ロールがない |