Upgrade to Pro — share decks privately, control downloads, hide ads and more …

JakartaOne Japan 2025

JakartaOne Japan 2025

Avatar for Kenji Kazumura

Kenji Kazumura

August 01, 2025
Tweet

More Decks by Kenji Kazumura

Other Decks in Technology

Transcript

  1. COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS LICENSED

    UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0) 1 Jakarta EE最新情報 2025年7月30日 数村憲治 @kkzr
  2. 2 COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS

    LICENSED UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0) アジェンダ Jakarta EE おさらい Jakarta EE 11 Jakarta EE 12 MicroProfileとJakarta EE
  3. 3 COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS

    LICENSED UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0) Jakarta EE 仕様策定委員 MicroProfile ステコミ委員 JCP Executive Committee メンバー Eclipse Foundation ボードディレクター 自己紹介
  4. 4 COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS

    LICENSED UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0) アジェンダ Jakarta EE おさらい Jakarta EE 11 Jakarta EE 12 MicroProfileとJakarta EE
  5. 5 COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS

    LICENSED UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0) Java EE 5 (J2SE 5.0) Java EE 8 (Java SE 8) Jakarta EE 9 (Java SE 8/11) Jakarta EE 10 (Java SE 11/17) Jakarta EE 11 (Java SE 17/21) Java EE 6 (Java SE 6) EJB 3, JPA, JAX-WS CDI, JAX-RS WebSocket, Batch, Concurrency HTTP/2, Security Eclipse Foundationからリリース 名前空間ビッグバン javax -> jakarta Core Profile Data Java EE 7 (Java SE 7) Jakarta EE 8 (Java SE 8) Java EE から Jakarta EE
  6. 6 COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS

    LICENSED UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0) Jakarta EE 仕様 EFSP(*)では、PlatformとProfileの差異について明確な記述はない コンポーネント仕様の集合 Jakarta EE Platform、Jakarta EE Web Profile コンポーネント仕様(単体仕様) 単体の仕様 Jakarta Batch、Jakarta Mail Profile/Platform仕様 Platformに含まれないコンポーネント仕様もある * EFSP: Eclipse Foundation Specification Process 例 “EE”は 付かない 例 “EE”は 付く
  7. 7 COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS

    LICENSED UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0) プロファイル ・ プラットフォーム Webアプリケーションを対象とした仕様群 Jakarta EE Platform ほぼすべての仕様を含む エンタープライズアプリケーションのすべてをカバーする Jakarta EE Web Profile クラウドネイティブアプリケーションで最低限必要な仕様群 Jakarta EE 10から Jakarta EE Core Profile
  8. 8 COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS

    LICENSED UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0) リリースとアナウンス リリース 仕様策定委員会が各仕様を承認(+α)すること コンポーネント仕様・プロファイルごとに実施される アナウンス Eclipse Foundation / Jakarta EE WGがメディアに広報すること 歴史的には、プラットフォーム・プロファイルあわせて実施される
  9. 9 COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS

    LICENSED UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0) Jakarta EE 学習資材 Jakarta EE Learn https://jakarta.ee/ja/learn/ https://www.linkedin.com/learning/jakarta-ee-overview/ 学習ポータル Jakarta EE 10ベースの学習ドキュメント (英語) LinkedInコース Jakarta EEの概要コース 音声は英語だが、日本語字幕・スクリプト付
  10. 10 COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS

    LICENSED UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0) アジェンダ Jakarta EE おさらい Jakarta EE 11 Jakarta EE 12 MicroProfileとJakarta EE
  11. 11 COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS

    LICENSED UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0) Jakarta EE 11は、〇〇した最初のリリース Jakarta EE になってから(2019年)、 新規コンポーネント仕様がリリース(Jakarta Data) J2EE 1.0(1999年)以来、まったく新しいTCKフレームワーク 開発中にマイルストーンを5回リリース
  12. 12 COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS

    LICENSED UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0) マイルストーンとリリース 2023/12/20 マイルストーン1 2024/04/16 2024/06/12 2024/06/30 マイルストーン2 マイルストーン3 マイルストーン4 2024/12/06 Core プロファイル 2025/04/04 2025/6/17 Web プロファイル プラットフォーム 2025/02/18 マイルストーン5
  13. 13 COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS

    LICENSED UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0) リリース遅延 2024年6月リリース予定が、2025年6月に 2024年2月に、Java SEのバージョンを変更 2024年6月には、すべてのコンポーネント仕様は開発完了 プラットフォーム・プロファイルの前に、TCKリファクタリングが始まる 2025年4月に、停電でEclipseのインフラがダメージ 2024年12月に、Coreプロファイルだけリリース 21のみ ➔ 17と21 かなり 難航
  14. 14 COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS

    LICENSED UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0) TCKリファクタリング Java Test Harness Jakarta EE 10までは、古いテストフレームワークを使用 Jakarta EE 11では、新しいテストフレームワークへ移行 J2EE/Java EEからの技術負債でメンテできる人が少ない JUnit や Arquillian 移行にはOpenRewriteを使うも、苦戦 OpenRewriteで変換したコードを修正する作業に膨大な時間 TCK走行時間は激減
  15. 15 COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS

    LICENSED UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0) TCK実行時間 Jakarta EE 10 8時間17分 Jakarta EE 11 2時間34分
  16. 16 COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS

    LICENSED UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0) Jakarta EE 11 テーマ 性能向上 開発生産性向上 安定性・信頼性向上 2年ごとのリリース
  17. 17 COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS

    LICENSED UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0) Jakarta EE 11 Platform 更新あり 削除 新規 Authorization 3.0 Enterprise Beans 4.0 RESTful Web Services 4.0 Annotations 3.0 Interceptors 2.2 Dependency Injection 2.0 Servlet 6.1 Server Pages 4.0 Expression Language 6.0 Debugging Support 2.0 Faces 4.1 Validation 3.1 Enterprise Beans Lite 4.0 Persistence 3.2 Transactions 2.0 CDI 4.1 Authentication 3.1 Concurrency 3.1 Security 4.0 CDI Lite 4.1 JSON Binding 3.0 JSON Processing 2.1 Standard Tag Libraries 3.0 Activation 2.1 Batch 2.1 Connectors 2.1 Mail 2.1 Messaging 3.1 Data 1.0 WebSocket 2.2 Web Profile Core Profile 更新なし SOAP with Attachements 4.0 XML Binding 4.0 Managed Beans 2.0 XML Web Services 4.0
  18. 18 COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS

    LICENSED UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0) 開発生産向上 新仕様 Jakarta Data 永続化ロジックとデータベースアクセスを疎結合に プラットフォームの合理化(Streamlining Platform) より速く / より単純に
  19. 19 COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS

    LICENSED UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0) リポジトリ (Jakarta Data) 基本的操作定義 DataRepository BasicRepository CrudRepository @Repository public interface MyRepo extends CrudRepository <MyData, Long> { Optional<MyData> findByName(String name); スーパーインターフェース CRUD操作定義
  20. 20 COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS

    LICENSED UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0) ページネーション (Jakarta Data) オフセットベースのページネーション カーソルベースのページネーション ページ番号によりデータ取得(ページサイズは固定) ユニークキー・バリューによりページを決定 ページング中にデータの挿入・削除などがある場合に有効 page = repo.findByScore(100,PageRequest.ofSize(50); page = repo.findByScore(100,page.nextPageRequests());
  21. 21 COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS

    LICENSED UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0) クエリー (Jakarta Data) @Queryに、クエリー式を記載することで、メソッド定義 クエリー式には、Jakarta Data Query Language、または、 Jakarta Persistence Query Languageが、記載可能 @Query(“where title like : title”) List<Book> booksByType(String title);
  22. 22 COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS

    LICENSED UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0) Managed Bean Managed Bean 2.0が、 プラットフォーム仕様、プロファイル仕様から削除 (コンポーネント仕様がなくなるわけではない) CDIへ移行で、開発の単純化と速度向上
  23. 23 COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS

    LICENSED UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0) Security Manager JEP 411/486により、Security Managerが、 Java SEで非推奨・廃止 Jakarta EE 11では、Security Managerの参照を削除 ドキュメント上は、Security Managerは使えないが、 APIや実装には含まれている場合があるので、 Jakarta EE 12で完全削除を目指す
  24. 24 COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS

    LICENSED UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0) Optional機能の削除 Jakarta EE 11以降、「Optional」仕様は、 プラットフォーム仕様・プロファイル仕様には含まれない Jakarta SOAP with Attachments 4.0 Jakarta XML Web Services 4.0 Jakarta XML Binding 4.0 これらのコンポーネント仕様がなくなるわけではない コンポーネント仕様で定義されているOptionalな機能が なくなるわけではない
  25. 25 COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS

    LICENSED UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0) Java Recordの対応 Validation 3.1 Persistence 3.2 Expression Language 6.0 Recordをサポートするコンポネント仕様 ボイラープレートコードの減少 ・・・ { ・・・・・・・ ・・・・・・・ } ・・・ { ・・・・・・・ ・・・・・・・ } ・・・ { ・・・・・・・ ・・・・・・・ } ・・・ { ・・・・・・・ ・・・・・・・ }
  26. 26 COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS

    LICENSED UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0) recordのCDI beanは、デフォルトではバリデーションされない プロデューサメソッドを用意する必要あり public record Monster ( @NotBlank String name, @NotNull String ability, @Min(10) @Max(100) int hp) {} Jakarta Validation 3.1 Record対応 (仕様の明確化)
  27. 27 COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS

    LICENSED UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0) recordをEmbeddableに指定可能 java.time.Instance、java.time.Yearなどをサポート QLに、union、intersect、expectなどが追加 その他多数の機能エンハンス Jakarta Persistence 3.2 エンハンス EntityResultに、lockMode追加。 デフォルトはOPTIMISTIC。
  28. 28 COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS

    LICENSED UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0) @Embeddable public record Address ( String city, String banchi, String zip){} @Entity public class Person { @Id private Long id; private String name; @Embedded private Address address); Jakarta Persistence Embeddable Record
  29. 29 COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS

    LICENSED UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0) Virtual Thread 性能向上 Java 17 / Java 21での性能エンハンスの享受 Concurrencyでバーチャルスレッドのサポート Concurrency API Java 17 Java 21 virtual = true Platform Thread
  30. 30 COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS

    LICENSED UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0) @InmemoryIdentityStoreDefinition ( { @Credentials(callerName = “Taro”, password = “secret”, groups = {“admin”, “dev”}), @Credentials(callerName = “Hanako”, password = “secret”, groups = {“admin”, “web”}) }) インメモリ アイデンティティ ストア Jakarta Security インメモリデータストア
  31. 31 COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS

    LICENSED UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0) CDI エンハンス CDI 3.0 (Jakarta EE 9) CDI 4.0 (Jakarta EE 10) (*)CDI in Jakarta EEは Platform、Profile仕様へ移動 Core CDI Core CDI CDI in Jakarta EE CDI in Java SE (*) CDI Lite CDI Full CDI 4.1 (Jakarta EE 11) CDI in Jakarta EE CDI in Java SE CDI in Java SE Core CDI CDI Lite CDI Full
  32. 32 COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS

    LICENSED UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0) Jakarta Servlet 6.1 エンハンス リダイレクト時に、ステータスコード、200を指定可能に 新しいステータスコード(308,421,422,426)のサポート RequestDispatcherにエラー用のクエリストリング属性を追加 static final String ERROR_QUERY_STRING = "jakarta.servlet.error.query_string"; sendRdirect(“what/do/you/know”, 200); public static final int SC_PERMANENT_REDIRECT = 308; その他多数の機能エンハンス
  33. 33 COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS

    LICENSED UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0) 仕様詳細の確認方法 (1) https://jakarta.ee/ja/specificationsにアクセス 「仕様」->「仕様の参照」 各仕様の「詳細を表示」
  34. 34 COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS

    LICENSED UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0) 仕様詳細の確認方法 (2) 参照したいバージョンの選択
  35. 35 COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS

    LICENSED UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0) アジェンダ Jakarta EE おさらい Jakarta EE 11 Jakarta EE 12 MicroProfileとJakarta EE
  36. 36 COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS

    LICENSED UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0) スケジュール(7月時点の案) 2025/09 マイルストーン1 2025/10 2025/11 マイルストーン2 マイルストーン3 2026/01 2026/06 リリース 2026/02 マイルストーン5 OSSRHセットアップ等 Java25でTCK走行 マイルストーン4 Coreプロファイルの準備 2026/03 マイルストーン6
  37. 37 COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS

    LICENSED UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0) 更新あり 新規かも? Activation 2.2 * RESTful Web Services 5.0 Annotations 3.1 JSON Binding 3.1 Dependency Injection 2.0 Servlet 6.2 Pages 4.1 Expression Language 6.1 Debugging Support 2.0 Faces 5.0 Validation 4.0 Persistence 4.0 Authentication 3.1 CDI 5.0 Transactions 2.1 Concurrency 3.2 Security 5.0 CDI Lite 5.0 Interceptors 2.2 Authorization 3.0 Messaging 3.1 WebSocket 2.3 更新なし NoSQL 1.1 Query 1.0 Config 1.0 / 4.0? HTTP 1.0 Data 1.1 JSON Processing 2.2 * Enterprise Beans 4.1 * Mail 2.2 * Batch 2.2 * Connectors 2.2 Enterprise Beans Lite 4.1 * Tags 3.1 Web Profile Core Profile Jakarta EE 12 Platform (案) *はクリーンアップのみ
  38. 38 COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS

    LICENSED UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0) Jakarta EE 12 概要(案) Application Client コンテナの非推奨化 JNDI 代替の検討 (非推奨化を視野に) HTTP/3 SecurityManager 参照削除 (API-jar、仕様書) 仮想スレッドのさらなる対応 非推奨機能の削除検討 CDI適用拡大 最小Java SEバージョン : Java 21 / Java 25 ⚫ REST : @Inject (@Contextの代替) ⚫ EJB 代替案
  39. 39 COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS

    LICENSED UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0) MVC 3.1 Portlet 4.0 Portlet Bridge 7.0 Config 1.0 / 4.0 HTTP 1.0 RPC 1.0 Query 1.0 NoSQL 1.1 https://jakarta.ee/specifications/mvc/ https://projects.eclipse.org/projects/ee4j.portlet https://projects.eclipse.org/projects/ee4j.portlet-bridge https://jakarta.ee/specifications/config/ https://jakarta.ee/specifications/rpc/ https://jakarta.ee/specifications/nosql/ https://jakarta.ee/ja/specifications/query/ Jakarta EE 12 新仕様候補
  40. 40 COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS

    LICENSED UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0) Jakarta NoSQL NoSQLデータベースにアクセスするための仕様 jakarta.nosql.Templateにより、NoSQLデータベースを抽象化 insert/delete アプリ ケーション Template MongoDBTemplate CouchbaseTemplate ベンダー Template MongoDB Couchbase ベンダー データベース
  41. 41 COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS

    LICENSED UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0) Jakarta NoSQL 1.0 の例 (Entityの定義) @Entity public class Car { @Id private long id; @Column private String name; @Column private Type type; }
  42. 42 COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS

    LICENSED UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0) @Inject Template template; var ferrari = Car.id(1L).name(“Ferrari”).type(Type.SPORT); template.insert(ferrari); template.delete(Car.class, 1L); var cars = template.select(Car.class) .where(“type”).eq(Type.SPORT).result(); Jakarta NoSQL 1.0 の例 (Entityの利用)
  43. 43 COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS

    LICENSED UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0) MicroProfile JWT Bridge MicroProfile JWTトークンを Jakarta EEコンテナにマッピングできるAPI JWTのプロパティを設定できるアノテーションを定義 JwtAuthenticationMechanismDefinitionインターフェース Jakarta Security経由でMicroProfile JWTを利用可能にする MicroProfile JWT MicroProfile JWT Bridge Jakarta Security
  44. 44 COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS

    LICENSED UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0) MicroProfile JWT Bridge (案) @JwtAuthenticationMechanismDefinition( publicKeyLocation = “/META-INF/publickey.pem", issuer = “https://example.com") public class JwtSecuredServlet extends HttpServlet { @Inject SecurityContext securityContext; public void doGet(HttpServletRequest request, HttpServletResponse response) { var jwtClaims = securityContext .getPrincipalsByType(JwtClaims.class);
  45. 45 COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS

    LICENSED UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0) JSONスキーマのサポート (JSON-P/JSON-B) Jakarta MailのCDI拡張 Jakarta Transactionでのresource commit optimization one-phase commit local transaction ポスト Jakarta EE 12
  46. 46 COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS

    LICENSED UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0) アジェンダ Jakarta EE おさらい Jakarta EE 11 Jakarta EE 12 MicroProfileとJakarta EE
  47. 47 COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS

    LICENSED UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0) MicroProfileの最新仕様 MicroProfile 7.1 Config 3.1 Config 3.1 Fault Tolerance 4.1 Fault Tolerance 4.1 JWT Authentication 2.1 JWT Authentication 2.1 Health 4.0 Health 4.0 Open Tracing 3.0 Open API 4.1 Open API 4.1 更新あり 7.0から変更なし Rest Client 4.0 Rest Client 4.0 スタンドアロン Context Propagation 1.3 Reactive Streams Operators 3.0 Reactive Messaging 3.0 GraphQL 2.0 LRA 2.0 Telemetry 2.1 Telemetry 2.1 Core Profile Core Profile Metrics 5.1 Jakarta EE 10
  48. 48 COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS

    LICENSED UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0) MicroProfile Telemetry 2.1 • Java 23対応 (TCK) • Thread Count メトリクスの修正 https://github.com/microprofile/microprofile-telemetry/issues/241 トレース、メトリクス、ログなど テレメトリデータの作成・管理API 2.1での変更点
  49. 49 COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS

    LICENSED UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0) MicroProfile OpenAPI 4.1 Jakarta RESTアプリケーションから、 OpenAPI v3.1ドキュメントを生成するAPI • jsonSchemaDialectのサポート • Extensibleの改良 4.1での変更点
  50. 50 COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS

    LICENSED UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0) MicroProfile AI 2024年1Qに、MicroProfile AIグループの設立 標準化は時期尚早 LLMとの接続インターフェース作成が目標 LangChain4jをベースとし、 Jakarta/MicroProfile仕様を統合 Jakarta CDI MicroProfile Fault Tolerance MicroProfile Telemtry
  51. 51 COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS

    LICENSED UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0)
  52. 52 COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS

    LICENSED UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0) MicroProfile移管背景 MicroProfile ConfigのJakarta EEへの移管要望大 歴史的にコミュニティ・ベンダーからの2グループの統合要望 プログラミングモデルが共通 (CDIベース) オーバヘッドの解消
  53. 53 COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS

    LICENSED UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0) 相関関係 (3月19日のプロポーザル) Jakarta EE Platform Jakarta MicroProfile Platform Spec Standalone Specs Core Profile Jakarta MicroProfile Config Web Profile
  54. 54 COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS

    LICENSED UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0) 議論 MicroProfile はJakartaのプロファイルになるのか GitHubリポジトリをJakarta配下に移すのか MicroProfileブランドは残すのか パッケージ名は変えるのか リリース間隔はJakarta EE プラットフォームと独立か https://github.com/microprofile -> https://github.com/jakartaee 「 Jakarta MicroProfile Health 」 ? 「 Jakarta Health 」 ? 「 org.eclipse.microprofile.xxx 」 ? 「 jakarta.xxx 」? 例 例
  55. COPYRIGHT (C) 2025, ECLIPSE FOUNDATION | THIS WORK IS LICENSED

    UNDER A CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE (CC BY 4.0) 55 Q u e s t i o n s