# ルートをSpring Bootマイクロサービスにビルド(非推奨)

Availability-note[非推奨](https://help.talend.com/r/en-US/Cloud/labels-on-talend-help-center/availability-deprecated)

このコンテンツは非推奨になりました。

利用対象...

* Cloud API Services Platform
* Cloud Data Fabric
* Data Fabric
* Data Services Platform
* ESB
* MDM Platform
* Real-Time Big Data Platform

## このタスクについて

8.0 R2024-02以降、このビルドタイプは非推奨となっており、R2024-09に削除されます。新しいマイクロサービスビルドタイプでルートをビルドする場合は、次の操作が必要です:

* マイクロサービスの設定をチェックする
* ルートのビルドタイプをマイクロサービスに変更し、リビルド/テスト/再デプロイする

詳細は、[ルートをマイクロサービスにビルド](https://help.qlik.com/talend/ja-JP/studio-user-guide/8.0-R2024-06/building-a-route-to-a-microservice)をご覧ください。

情報メモ注: cConfigコンポーネントやcProcessorコンポーネントで使われるcontextオブジェクトのJavaメソッド( keySet()、entrySet()、values()、size()など)は、Microserviceビルドタイプではサポートされていません。これらのメソッドはOSGiビルドタイプでのみサポートされています。Spring-bootではContextPropertiesはPOJOクラスでなければならず、java.util.Properties.ContextPropertiesを拡張できないためです。

Spring BootベースのESB Microserviceへのルートをビルドするには、以下のようにします:

## 手順

1. Talend Studioのツールバーで![\[Project properties\] (プロジェクトプロパティ)](https://help.qlik.com/talend/ja-JP/studio-user-guide/Resources/images/projectsettings.svg)をクリックするか、メニューバーから[File] (ファイル) &gt; [Edit Project Properties] (プロジェクトプロパティを編集)を選択して、[Project Settings] (プロジェクト設定)ダイアログボックスを開きます。

   ![Spring Bootマイクロサービスのデフォルト設定](https://help.qlik.com/talend/ja-JP/studio-user-guide/Resources/images/esb-spring-boot-microservice-default-configuratoin.png)
2. ダイアログボックスの左側にあるツリー図で、[Build] (ビルド) &gt; [Spring Boot microservices] (Spring Bootマイクロサービス) &gt; [Default configuration] (デフォルト設定)と選択して対応するビューを表示させ、必要に応じてSpring Bootマイクロサービスの設定をカスタマイズします。
3. ダイアログボックスの左にあるツリーダイアグラムで[Log4j]を選択し、該当するビューを表示します。

   ![Log4jの設定](https://help.qlik.com/talend/ja-JP/studio-user-guide/Resources/images/esb-microservice-log4j_config.png)
4. 必要に応じてLog4j設定をカスタマイズします。デフォルトのLog4j XML命令は、WARNログのみをコンソールに出力します。log4jパラメーターの詳細は、 [Log4jXmlFormat](http://wiki.apache.org/logging-log4j/Log4jXmlFormat) (英語のみ)をご覧ください。

   Log4j設定の一例は次のとおりです。これもESB Microserviceの開始時にtesb.logファイルを提供します。Log4j設定は、Talend StudioでもESB Microserviceでも同じです。ただし、log4j.xmlファイルは実行時にMicroserviceの外部設定フォルダーに置けば、本番デプロイ用の特定のLog4j設定を提供することも可能です。
   ```
   <?xml version="1.0" encoding="UTF-8" ?>
   <!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
   <log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
       <appender name="stdout" class="org.apache.log4j.ConsoleAppender">
           <layout class="org.apache.log4j.PatternLayout">
               <param name="ConversionPattern" value="%d | %-5.5p | %-16.16t | %-32.32C %4L | %m%n"/>
           </layout>
       </appender>
       <appender name="rollingFile" class="org.apache.log4j.RollingFileAppender">
           <param name="file" value="tesb.log"/>
           <param name="MaxFileSize" value="1024KB"/>
           <param name="MaxBackupIndex" value="10"/>
           <layout class="org.apache.log4j.PatternLayout">
               <param name="ConversionPattern" value="%d | %-5.5p | %-16.16t | %-32.32C %4L | %m%n"/>
           </layout>
       </appender>
       <root>
           <priority value="info"/>
           <appender-ref ref="stdout"/>
           <appender-ref ref="rollingFile"/>
       </root>
   </log4j:configuration>
   ```
5. ルートにcSOAPまたはcRESTコンポーネントが含まれている場合は、絶対URLの代わりに相対エンドポイントURLを使用する必要があります。Microserviceが実行されている場合、デフォルトの8065ポートを持つ埋め込みTomcatコンテナーは、スプリングブートによって開始されます。RESTとSoapサービスもこのポートで実行されます。デフォルトのポートをオーバーライドする場合は、コマンドで--server.portオプションを使用するか、Microservice jarで/configフォルダーのapplication.propertiesファイルで設定します。

   ルートにcSOAPまたはcRESTコンポーネントが含まれていて、ESBインフラストラクチャーサービスが1つ以上使用されている場合は、ルートをビルドする前に、以下の手順に従う必要があります:
   * サービスアクティビティモニターが有効の場合は、必要に応じて&lt;Studio\_Home&gt;/esb/agent.propertiesファイルを編集し、サービスアクティビティモニタリングエージェントを設定します。agent.propetiesのプロパティについては、Talend ESBインフラストラクチャーサービス設定ガイドでサービスアクティビティモニタリングエージェントの設定に関するセクションをご覧ください。

   * Service Locatorが有効の場合は、必要に応じて&lt;Studio\_Home&gt;/esb/locator.propertiesファイルを編集し、Service Locatorを設定します。locator.propertiesのプロパティについては、Talend ESBインフラストラクチャーサービス設定ガイドでService Locatorの設定に関するセクションをご覧ください。

   * ルートがサービスプロバイダーで、ユーザー名トークン認証が有効な場合は、Studio\_Home/esb/microservice/users.propertiesファイルを編集し、形式&lt;USERNAME&gt;=&lt;PASSWORD&gt;に従って、認証されたユーザー認証情報を指定します。たとえば、次の設定では2人のユーザーが定義されます。

     ```
     tadmin=tadmin
     tesb=tesb
     ```

   * SAMLトークン認証で、認証サービスが有効、またはService Registryが使用されている場合は、コンソールウィンドウから次のコマンドを使用して、ESBエンタープライズアーティファクトをローカルMavenリポジトリーにインストールする必要があります。

     ```
     cd <TalendRuntimePath>/add-ons/maven-repo
     mvn clean package -s <Studio_Home>/configuration/maven_user_settings.xml
     ```
6. デザインワークスペースにルートを開きます。[Route] (ルート)タブの[Deployment] (デプロイメント)ビューで、[Build Type] (ビルドタイプ)リストから[Microservice (Spring Boot)] (マイクロサービス(Spring Boot))を選択します。ルートを保存します。

   ![マイクロサービス(Spring Boot)ビルドタイプを選択。](https://help.qlik.com/talend/ja-JP/studio-user-guide/Resources/images/route-build-type-sping-boot-microservice.png)
7. [Repository] (リポジトリー)ツリービューでビルドするルートを右クリックし、[Build Route] (ルートをビルド)を選択して[Build Route] (ルートをビルド)ダイアログボックスを開きます。

   ![\[Build Route\] (ルートをビルド)ダイアログボックス。](https://help.qlik.com/talend/ja-JP/studio-user-guide/Resources/images/build_route_esb_microservice.png)
8. [To archive file] (ファイルのアーカイブ先)フィールドで、ビルドしたルートを保存するディレクトリーまで移動します。
9. 複数バージョンのルートが作成されている場合、[Route Version] (ルートバージョン)エリアでビルドするルートのバージョン番号を選択します。
10. [Build Type] (ビルドタイプ)エリアでMicroservice Spring Bootを選択します。
11. オプションエリアで次の項目を選択します。
    * [Export as ZIP] (ZIPとしてエクスポート)オプション: ルートを.zipファイルにエクスポートします。このファイルには外部設定フォルダーと開始スクリプト含まれており、Linux (.sh)用とWindows (.bat)用の外部設定フォルダーでMicroserviceを開始できます。このオプションを選択していないと、ルートはデフォルトで.jarファイルとしてエクスポートされます。

    * [Enable Prometheus metrics endpoint] (Prometheusメトリクスエンドポイントを有効化)チェックボックス: Prometheusメトリクスエンドポイントをマイクロサービスに構築し、ルートの実行、JVMメモリ、CPU消費量などを監視します。デフォルトでは、この機能はすべてのJMX属性と値をPrometheusにブリッジします。Prometheusの詳細は、[Prometheusのドキュメンテーション](https://prometheus.io/docs/introduction/overview/) (英語のみ)をご覧ください。
12. [Finish] (終了)をクリックして変更を確定し、エクスポート操作を完了してダイアログボックスを閉じます。ESB MicroserviceをビルドするにはMavenをオンラインに設定する必要があることを知らせるポップアップウィンドウが表示されます。一部のライブラリーはリモートMavenリポジトリーからダウンロードする必要があるためです。ESB Microservice機能を使用する際には、Talend Studioにはインターネットアクセスが必要です。Talend Studioには、ESB Microserviceのビルド操作用に純粋なオフラインモードは提供されていません。[Yes] (はい)をクリックしてMavenをオンラインモードに変更します。

    ![Maven Onlineを設定。](https://help.qlik.com/talend/ja-JP/studio-user-guide/Resources/images/build_route-microservice-finish.png)

    [Finish] (終了)操作がエラーになる場合は、Talend Studioのログファイル&lt;Studio\_Home&gt;\workspace\.metadata\.logで詳しい情報を参照できます。

## タスクの結果

定義された場所にルート用の.jarまたは.zipファイルが作成されます。スタンドアロンモードでTalend Studioとは独立に実行できます。