diff --git a/.github/blog_translation_automation/BOB_START_HERE.md b/.github/blog_translation_automation/BOB_START_HERE.md new file mode 100644 index 000000000..3bd865fbe --- /dev/null +++ b/.github/blog_translation_automation/BOB_START_HERE.md @@ -0,0 +1,365 @@ +# 🀖 IBM BOB - START HERE + +## Mission +Translate a specific English blog post from `posts/` directory to Japanese, placing the translation in `posts/ja/` directory with the SAME filename. + +## 🎯 Filename-Specific Translation Task + +### Input Parameter +You will receive a **filename** as input (e.g., `2026-01-27-26.0.0.1.adoc` or `2026-01-27-26.0.0.1`). + +### Step-by-Step Process + +#### Step 1: Find the Source File +1. Look in the `posts/` directory +2. Find the file with the **exact filename** provided (with or without `.adoc` extension) +3. This is your source file to translate + +**Example:** +- Input filename: `2026-01-27-26.0.0.1.adoc` or `2026-01-27-26.0.0.1` +- Find file: `posts/2026-01-27-26.0.0.1.adoc` ✅ + +#### Step 2: Translate the File +1. Read the source file completely +2. Apply all translation guidelines from documentation +3. Translate English content to Japanese +4. Preserve all code, markup, and formatting exactly + +#### Step 3: Save the Translation +1. Save the translated file to `posts/ja/` directory +2. Use the **EXACT SAME filename** as the source file +3. Example: `posts/2026-01-27-26.0.0.1.adoc` → `posts/ja/2026-01-27-26.0.0.1.adoc` + +### File Location Pattern + +``` +Source: posts/{FILENAME}.adoc +Translation: posts/ja/{FILENAME}.adoc + ↑ + Same filename! +``` + +**Examples:** +``` +posts/2026-01-27-26.0.0.1.adoc → posts/ja/2026-01-27-26.0.0.1.adoc +posts/2025-12-02-25.0.0.12.adoc → posts/ja/2025-12-02-25.0.0.12.adoc +posts/2025-11-04-25.0.0.11.adoc → posts/ja/2025-11-04-25.0.0.11.adoc +posts/2024-12-16-jblog-two-year-celebration.adoc → posts/ja/2024-12-16-jblog-two-year-celebration.adoc +``` + +## 📖 Required Reading Order + +### 1. FIRST: Read This File Completely +You are here! This file provides the roadmap. + +### 2. SECOND: Read TRANSLATION_RULES.md +**Location**: `blog_translation_automation/TRANSLATION_RULES.md` +- Quick-start guide with core principles +- Comprehensive translation rules +- Key translation patterns in tables +- Critical DO/DON'T rules +- Quality validation checklist + +### 3. THIRD: Study TRANSLATION_PATTERNS.md +**Location**: `blog_translation_automation/TRANSLATION_PATTERNS.md` +- Concrete before/after examples +- Front matter transformations +- Section-by-section examples +- Common patterns demonstrated + +### 4. FOURTH: Compare Example Files +**Locations**: +- English: `blog_translation_automation/translation_examples/eng/*.adoc` +- Japanese: `blog_translation_automation/translation_examples/ja/*.adoc` + +Compare these side-by-side to see real translations in context. + +## 📝 Translation Task Details + +### Input +- **Filename** (provided as environment variable or parameter, with or without `.adoc` extension) +- English blog post in `posts/` directory with exact filename +- File format: `.adoc` (AsciiDoc) + +### Output +- Japanese translation in `posts/ja/` directory +- **EXACT SAME filename** as the source file +- Maintain exact formatting and structure + +### Finding the Correct File + +**Search Pattern:** +1. Receive filename input (with or without `.adoc` extension) +2. Add `.adoc` extension if not present +3. Look for exact file in `posts/` directory +4. This is your source file + +**Command Example (for reference):** +```bash +# If filename is 2026-01-27-26.0.0.1 or 2026-01-27-26.0.0.1.adoc +# Look for: posts/2026-01-27-26.0.0.1.adoc +``` + +### Translation Requirements + +## 🚚 CRITICAL TRANSLATION GUIDELINES + +### ✅ What to Translate + +#### YAML Front Matter: +- **Title** and all descriptions (seo-title, seo-description, blog_description) +- Translate naturally while maintaining meaning + +#### Body Content: +- **All body text and headings** - Use formal technical Japanese (です・たす䜓) +- **Image alt text** - Example: "Ask a question on Stack Overflow" → "Stack Overflow で質問する" +- **Link display text** - Translate the text shown, NOT the URL + +### ❌ What NOT to Translate + +#### YAML Front Matter: +- **YAML keys** - Keep as-is: layout, categories, author_picture, author_github, etc. +- **URLs and links** - All URLs remain in English +- **GitHub usernames** - Keep original usernames + +#### Body Content: +- **Code blocks** - ALL code must remain exactly as-is +- **Technical commands** - bash, XML, properties commands unchanged +- **AsciiDoc markup syntax** - [source,xml], ----, +, *, etc. +- **Technical product names** - Open Liberty, WebSphere, Jakarta EE, Maven, Gradle, Docker +- **Version numbers** - 26.0.0.1, 25.0.0.12, etc. +- **File paths** - pom.xml, server.xml, build.gradle, etc. +- **Comments** - Especially GHA-BLOG-TOPIC blocks + +### 🔧 Special Handling Requirements + +#### 1. Language Links (CRITICAL) +Update `blog-available-in-languages` section to point to English version: + +**English version has:** +```yaml +blog-available-in-languages: +- lang: ja + path: /ja/blog/2026/01/27/26.0.0.1.html +``` + +**Japanese version MUST have:** +```yaml +blog-available-in-languages: +- lang: en + path: /blog/2026/01/27/26.0.0.1.html +``` + +#### 2. Translator Credit (REQUIRED) +Add `additional_authors` section with translator information: + +```yaml +additional_authors: +- name: 高宮 裕子 (翻蚳) + github: https://github.com/HirokoTakamiya + image: https://avatars.githubusercontent.com/HirokoTakamiya +``` + +Or use IBM BOB as translator: +```yaml +additional_authors: +- name: IBM BOB (翻蚳) + github: https://github.com/IBM + image: https://avatars.githubusercontent.com/IBM +``` + +#### 3. Image References (REQUIRED) +Change Stack Overflow button image reference: +- **English**: `blog_btn_stack.svg` +- **Japanese**: `blog_btn_stack_ja.svg` + +Example: +```asciidoc +# English +image::img/blog/blog_btn_stack.svg[Ask a question on Stack Overflow, align="center"] + +# Japanese +image::img/blog/blog_btn_stack_ja.svg[Stack Overflow で質問する, align="center"] +``` + +### ✅ Additional MUST DO Rules +1. Use **formal technical Japanese** (です・たす䜓) throughout +2. Preserve ALL code blocks exactly (no changes) +3. Preserve ALL AsciiDoc markup exactly +4. Preserve ALL comments (especially GHA-BLOG-TOPIC blocks) +5. Translate text naturally while maintaining technical accuracy +6. Follow established terminology patterns from examples + +### ❌ Additional MUST NOT DO Rules +1. Do NOT translate code blocks +2. Do NOT modify AsciiDoc syntax +3. Do NOT change URLs or file paths +4. Do NOT translate comments +5. Do NOT remove or alter markup +6. Do NOT use casual Japanese +7. Do NOT translate YAML keys +8. Do NOT translate product names or version numbers + +## 📋 Translation Workflow + +### Step 1: Preparation +``` +1. Read TRANSLATION_RULES.md for comprehensive rules +2. Study TRANSLATION_PATTERNS.md for concrete patterns +3. Review example translations in eng/ and ja/ folders +``` + +### Step 2: Find and Translate the Specific Blog Post +``` +1. Receive filename input (e.g., 2026-01-27-26.0.0.1.adoc or 2026-01-27-26.0.0.1) +2. Add .adoc extension if not present +3. Find exact file in posts/ directory +4. Read the matching English blog file +5. Identify sections to translate vs preserve +6. Apply translation patterns from documentation +7. Preserve all code and markup exactly +8. Update front matter appropriately +9. Add translator credit +10. Save to posts/ja/ with EXACT SAME filename +``` + +**Example Workflow:** +``` +Input: filename = "2026-01-27-26.0.0.1.adoc" (or "2026-01-27-26.0.0.1") + ↓ +Find: posts/2026-01-27-26.0.0.1.adoc + ↓ +Translate: Apply all guidelines + ↓ +Save: posts/ja/2026-01-27-26.0.0.1.adoc +``` + +### Step 3: Quality Check +``` +□ Front matter correctly translated +□ All code blocks unchanged +□ All AsciiDoc syntax intact +□ All comments preserved +□ Technical terms consistent +□ Japanese reads naturally +□ Image references updated +□ Translator credit added +``` + +## 🔑 Quick Reference + +### Technical Terms +- **Keep in English**: Open Liberty, Maven, Gradle, Docker, file names, commands +- **Use Katakana**: サヌバヌ (server), クラむアント (client), キヌ (key) +- **Translate**: 機胜 (feature), バグ修正 (bug fixes), 蚭定 (configuration) + +### Common Phrases +- "In this release" → "このリリヌスでは" +- "If you're using" → "もし...を䜿甚しおいるなら" +- "Check out" → "チェックしお䞋さい" +- "Get Open Liberty X.X.X now" → "今すぐ Open Liberty X.X.X を入手する" + +### Front Matter Changes +```yaml +# English version has: +blog-available-in-languages: +- lang: ja + path: /ja/blog/2026/01/27/26.0.0.1.html + +# Japanese version should have: +blog-available-in-languages: +- lang: en + path: /blog/2026/01/27/26.0.0.1.html +additional_authors: +- name: IBM BOB (翻蚳) + github: https://github.com/IBM + image: https://avatars.githubusercontent.com/IBM +``` + +### Code Block Example +```asciidoc +# This NEVER changes - preserve exactly: +[source,xml] +---- + +---- +``` + +## 🚚 Critical Reminders + +1. **Formal Japanese Only**: Always use です・たす form +2. **Code is Sacred**: Never modify code blocks +3. **Markup is Sacred**: Never modify AsciiDoc syntax +4. **Comments are Sacred**: Never translate or modify comments +5. **Natural Translation**: Don't translate word-for-word, make it natural Japanese +6. **Consistency**: Use same translations for same terms throughout + +## 📊 Success Criteria + +Your translation is successful when: +- ✅ Japanese reads naturally and professionally +- ✅ Technical accuracy is maintained +- ✅ All code and markup preserved exactly +- ✅ Follows patterns from example translations +- ✅ Front matter correctly updated +- ✅ Passes quality checklist + +## 🆘 If You're Unsure + +1. Check TRANSLATION_RULES.md for rules +2. Check TRANSLATION_PATTERNS.md for patterns +3. Compare with example files in eng/ and ja/ +4. When in doubt, preserve the original format + +## 📁 File Structure Reference + +``` +Blog_Personal/ +├── posts/ # English blogs (source) +│ ├── 2026-01-27-26.0.0.1.adoc +│ ├── 2025-12-02-25.0.0.12.adoc +│ └── ... +├── posts/ja/ # Japanese blogs (your output) +│ ├── 2026-01-27-26.0.0.1.adoc +│ ├── 2025-12-02-25.0.0.12.adoc +│ └── ... +└── blog_translation_automation/ # Translation automation system + ├── BOB_START_HERE.md # ← You are here + ├── TRANSLATION_RULES.md # Comprehensive guidelines + ├── TRANSLATION_PATTERNS.md # Translation patterns + ├── README.md # Documentation overview + └── translation_examples/ # Example translations + ├── eng/ # Example English blogs + └── ja/ # Example Japanese translations +``` + +## 🎓 Learning Path Summary + +``` +1. Read BOB_START_HERE.md (this file) + ↓ +2. Read TRANSLATION_RULES.md (comprehensive rules & quick reference) + ↓ +3. Study TRANSLATION_PATTERNS.md (concrete examples) + ↓ +4. Compare eng/ and ja/ example files + ↓ +5. Start translating posts/ to posts/ja/ + ↓ +6. Validate each translation with quality checklist +``` + +## ✹ You're Ready! + +After reading all the documentation files, you'll understand: +- Translation style and tone +- Technical term handling +- Formatting preservation +- Common patterns and phrases +- Quality standards + +Now proceed to read the documentation files in order and begin translating! + +--- + +**Remember**: Quality over speed. Each translation should be professional, accurate, and maintain the exact formatting of the original. \ No newline at end of file diff --git a/.github/blog_translation_automation/README.md b/.github/blog_translation_automation/README.md new file mode 100644 index 000000000..aafdf06b0 --- /dev/null +++ b/.github/blog_translation_automation/README.md @@ -0,0 +1,155 @@ +# Blog Translation Automation + +This folder contains all documentation, guidelines, and example blog posts for the blog translation automation system. It helps IBM BOB understand the translation style, tone, and patterns used for Open Liberty blog translations. + +## Folder Structure + +``` +blog_translation_automation/ +├── translation_examples/ # Example blog translations +│ ├── eng/ # English source blogs (examples) +│ │ ├── 2026-01-27-26.0.0.1.adoc +│ │ ├── 2025-12-02-25.0.0.12.adoc +│ │ └── 2025-11-04-25.0.0.11.adoc +│ └── ja/ # Japanese translated blogs (examples) +│ ├── 2026-01-27-26.0.0.1.adoc +│ ├── 2025-12-02-25.0.0.12.adoc +│ └── 2025-11-04-25.0.0.11.adoc +├── BOB_START_HERE.md # Start here - main guide for IBM BOB +├── TRANSLATION_RULES.md # Comprehensive translation guidelines +├── TRANSLATION_PATTERNS.md # Specific translation examples +└── README.md # This file +``` + +## Purpose + +These example files serve as reference material for IBM BOB to learn: + +1. **Translation Style and Tone**: Formal technical Japanese (です・たす䜓) +2. **Technical Term Handling**: Which terms to keep in English, translate to katakana, or translate to Japanese +3. **Formatting Preservation**: How to maintain AsciiDoc markup, code blocks, and links +4. **Common Patterns**: Standard phrases and section header translations + +## Example Blog Posts + +### 1. 2026-01-27-26.0.0.1.adoc +**Topic**: Log throttling feature and bug fixes +**Key Learning Points**: +- Feature introduction translation +- Configuration examples (XML, properties, environment variables) +- Technical explanation of throttling behavior +- Bug fix descriptions + +### 2. 2025-12-02-25.0.0.12.adoc +**Topic**: AES-256 key support and FIPS 140-3 compliance +**Key Learning Points**: +- Complex technical feature descriptions +- Security-related terminology +- Command-line examples with multiple options +- Detailed configuration instructions +- CVE table formatting + +### 3. 2025-11-04-25.0.0.11.adoc +**Topic**: Bug fixes only release +**Key Learning Points**: +- Bug description translations +- Error message handling +- Issue link formatting +- Simpler structure for bug-fix-only releases + +## How to Use These Examples + +### For IBM BOB Integration + +1. **Read BOB_START_HERE.md first** - This provides the roadmap and overview +2. **Read TRANSLATION_RULES.md** - This provides comprehensive rules and patterns +3. **Study TRANSLATION_PATTERNS.md** - This shows specific before/after examples +4. **Compare translation_examples/eng/ and translation_examples/ja/ files side-by-side** - See real translations in context +5. **Identify patterns**: + - How technical terms are handled + - How sentence structure changes + - How formatting is preserved + - How cultural adaptation is applied + +### Key Observations + +#### Translation Style +- **Formal and professional**: Uses です・たす form throughout +- **Technical precision**: Maintains exact technical meanings +- **Natural Japanese**: Not literal word-for-word translation +- **Consistent terminology**: Same terms translated the same way + +#### What Gets Preserved Exactly +- All code blocks (XML, bash, properties, etc.) +- All AsciiDoc markup syntax +- All URLs and file paths +- All comments (including GHA-BLOG-TOPIC blocks) +- Version numbers and technical identifiers + +#### What Gets Translated +- Titles and descriptions +- Explanatory text and paragraphs +- Section headers +- Link display text (but not URLs) +- Image alt text +- List items and bullet points + +#### What Gets Adapted +- Image references (e.g., `blog_btn_stack.svg` → `blog_btn_stack_ja.svg`) +- Language links (swap `en` ↔ `ja`) +- Add translator credit in `additional_authors` + +## Translation Quality Standards + +Based on these examples, translations should: + +1. ✅ Use formal technical Japanese consistently +2. ✅ Preserve all code and markup exactly +3. ✅ Maintain technical accuracy +4. ✅ Read naturally in Japanese +5. ✅ Follow established terminology patterns +6. ✅ Keep proper formatting and structure +7. ✅ Include translator attribution + +## Common Translation Patterns + +### Version Context +- "in X.X.X" → "X.X.X での" or "X.X.X における" + +### Conditional Statements +- "If you're using..." → "もし...を䜿甚しおいるなら" +- "Or for..." → "...を䜿甚しおいる堎合は" + +### Instructions +- "include the following" → "以䞋を含めたす" +- "run the command" → "コマンドを実行したす" + +### References +- "Check out" → "チェックしお䞋さい" or "ご芧ください" +- "For more information" → "詳现に぀いおは" +- "See the documentation" → "ドキュメントを参照しおください" + +## Notes for Developers + +When adding new example files: +1. Always include both English and Japanese versions +2. Ensure files have the same name in both folders +3. Choose examples that demonstrate different translation challenges +4. Update this README with new examples and their key learning points + +## Integration with Translation Pipeline + +These examples should be used by IBM BOB to: +1. Learn translation patterns before processing new blogs +2. Validate translation quality against established patterns +3. Ensure consistency across all translated content +4. Maintain the professional tone and technical accuracy expected + +## Questions or Issues? + +If you notice inconsistencies or have questions about translation patterns: +1. Review BOB_START_HERE.md for the main guide +2. Review TRANSLATION_RULES.md for comprehensive rules +3. Compare with existing examples in translation_examples/eng/ and translation_examples/ja/ folders +4. Check TRANSLATION_PATTERNS.md for specific patterns +5. Consult with the translation team for clarification \ No newline at end of file diff --git a/.github/blog_translation_automation/TRANSLATION_PATTERNS.md b/.github/blog_translation_automation/TRANSLATION_PATTERNS.md new file mode 100644 index 000000000..00a2aef62 --- /dev/null +++ b/.github/blog_translation_automation/TRANSLATION_PATTERNS.md @@ -0,0 +1,306 @@ +# Translation Examples - English to Japanese + +This document provides concrete examples of translation patterns extracted from the blog_translation_automation folder. + +## Front Matter Examples + +### Example 1: Version Release Blog + +**English:** +```yaml +--- +layout: post +title: "Log throttling and notable bug fixes in 26.0.0.1" +categories: blog +author_picture: https://avatars3.githubusercontent.com/navaneethsnair1 +author_github: https://github.com/navaneethsnair1 +seo-title: Log throttling and notable bug fixes in 26.0.0.1- OpenLiberty.io +seo-description: In this release, Open Liberty introduces log throttling to automatically suppress excessive, repeated log messages, helping developers reduce noise and manage high-volume logging more effectively. +blog_description: In this release, Open Liberty introduces log throttling to automatically suppress excessive, repeated log messages, helping developers reduce noise and manage high-volume logging more effectively. +open-graph-image: https://openliberty.io/img/twitter_card.jpg +open-graph-image-alt: Open Liberty Logo +blog-available-in-languages: +- lang: ja + path: /ja/blog/2026/01/27/26.0.0.1.html +--- +``` + +**Japanese:** +```yaml +--- +layout: post +title: "26.0.0.1 でのログ抑制ず泚目すべきバグ修正" +categories: blog +author_picture: https://avatars3.githubusercontent.com/navaneethsnair1 +author_github: https://github.com/navaneethsnair1 +seo-title: 26.0.0.1 でのログ抑制ず泚目すべきバグ修正 - OpenLiberty.io +seo-description: このリリヌスでは、Open Liberty にログ抑制機胜が導入され、過床に繰り返されるログメッセヌゞを自動的に抑制するこずで、開発者がノむズを削枛し、倧量のログをより効果的に管理できるようになりたした。 +blog_description: このリリヌスでは、Open Liberty にログ抑制機胜が導入され、過床に繰り返されるログメッセヌゞを自動的に抑制するこずで、開発者がノむズを削枛し、倧量のログをより効果的に管理できるようになりたした。 +open-graph-image: https://openliberty.io/img/twitter_card.jpg +open-graph-image-alt: Open Liberty Logo +blog-available-in-languages: +- lang: en + path: /blog/2026/01/27/26.0.0.1.html +additional_authors: +- name: 銬堎 剛 (æ ¡æ­£) + github: https://github.com/babatch + image: https://avatars.githubusercontent.com/u/29302643 +--- +``` + +## Introduction Paragraphs + +### Example 1: Feature Introduction +**English:** +"In this release, Open Liberty introduces log throttling to automatically suppress excessive, repeated log messages, helping developers reduce noise and manage high-volume logging more effectively." + +**Japanese:** +"このリリヌスでは、Open Liberty にログ抑制機胜が導入され、過床に繰り返されるログメッセヌゞを自動的に抑制するこずで、開発者がノむズを削枛し、倧量のログをより効果的に管理できるようになりたした。" + +### Example 2: Multiple Features +**English:** +"This release introduces support for supplying your own Base64-encoded AES-256 key, removing the need for Liberty to derive a key during startup and resulting in faster and more efficient password encryption. It also adds FIPS 140-3 compliance when Liberty running with supported IBM Semeru Runtime versions (11.0.29, 17.0.17, 21.0.9, 25.0.1 or later)." + +**Japanese:** +"このリリヌスでは、独自の Base64 ゚ンコヌドされた AES-256 キヌを提䟛するサポヌトが導入され、起動時に Liberty がキヌを導出する必芁がなくなり、より高速で効率的なパスワヌド暗号化が実珟されたす。たた、サポヌトされおいる IBM Semeru Runtime バヌゞョン11.0.29、17.0.17、21.0.9、25.0.1 以降で Liberty を実行する際の FIPS 140-3 準拠が远加されたす。" + +## Section Headers + +### Example 1: Development Section +**English:** +"== Develop and run your apps using 25.0.0.12" + +**Japanese:** +"== 25.0.0.12 でアプリを開発しお実行する" + +### Example 2: Feature Section +**English:** +"== Log Throttling" + +**Japanese:** +"== ログ抑制" + +### Example 3: Bug Fixes Section +**English:** +"== Notable bugs fixed in this release" + +**Japanese:** +"== このリリヌスで修正された泚目すべきバグ" + +## Installation Instructions + +### Maven Example +**English:** +```asciidoc +If you're using link:{url-prefix}/guides/maven-intro.html[Maven], include the following in your `pom.xml` file: + +[source,xml] +---- + + io.openliberty.tools + liberty-maven-plugin + 3.11.5 + +---- +``` + +**Japanese:** +```asciidoc +もし link:{url-prefix}/guides/maven-intro.html[Maven] を䜿甚しおいるなら、`pom.xml` に以䞋を含めたす。 + +[source,xml] +---- + + io.openliberty.tools + liberty-maven-plugin + 3.11.5 + +---- +``` + +### Gradle Example +**English:** +"Or for link:{url-prefix}/guides/gradle-intro.html[Gradle], include the following in your `build.gradle` file:" + +**Japanese:** +"link:{url-prefix}/guides/gradle-intro.html[Gradle] を䜿甚しおいる堎合は、`build.gradle` ファむルに以䞋を含めたす。" + +### Container Images +**English:** +"Or if you're using link:{url-prefix}/docs/latest/container-images.html[container images]:" + +**Japanese:** +"link:{url-prefix}/docs/latest/container-images.html[コンテナ・むメヌゞ] を䜿甚する堎合は以䞋です。" + +## Technical Feature Descriptions + +### Example 1: Log Throttling +**English:** +"Open Liberty Logging is introducing log throttling. Developers previously had no way to throttle or suppress high-volume messages. This new feature helps to prevent excessive log output when the same log events occur repeatedly within a short span of time." + +**Japanese:** +"Open Liberty のロギング機胜にログ抑制が導入されたした。これたで開発者には、倧量のメッセヌゞを抑制する方法がありたせんでした。この新機胜は、同じログむベントが短時間に繰り返し発生した堎合に、過床なログ出力を防ぐのに圹立ちたす。" + +### Example 2: Default Behavior +**English:** +"Throttling is enabled by default. While enabled, Liberty tracks each messageID using a sliding window. By default, any messageID that is repeated more than 1,000 times within a five-minute interval is suppressed. A throttle warning is logged when throttling begins." + +**Japanese:** +"抑制機胜はデフォルトで有効になっおいたす。有効にするず、Liberty はスラむディングりィンドりを䜿甚しお各 messageID を远跡したす。デフォルトでは、5 分間に 1,000 回以䞊繰り返される messageID は抑制されたす。抑制が開始されるず、抑制譊告がログに蚘録されたす。" + +## Configuration Examples + +### Example 1: XML Configuration +**English:** +```asciidoc +* In `server.xml`: ++ +[source,xml] +---- + +---- +``` + +**Japanese:** +```asciidoc +* `server.xml` の堎合: ++ +[source,xml] +---- + +---- +``` + +### Example 2: Properties Configuration +**English:** +```asciidoc +* In `bootstrap.properties`: ++ +[source,properties] +---- +com.ibm.ws.logging.throttle.max.messages.per.window=5000 +com.ibm.ws.logging.throttle.type=messageID +---- +``` + +**Japanese:** +```asciidoc +* `bootstrap.properties` の堎合: ++ +[source,properties] +---- +com.ibm.ws.logging.throttle.max.messages.per.window=5000 +com.ibm.ws.logging.throttle.type=messageID +---- +``` + +## Bug Descriptions + +### Example 1: Simple Bug +**English:** +"* link:https://github.com/OpenLiberty/open-liberty/issues/33098[`appsWriteJSON` not working correctly when JSON record ends with new line.]" + +**Japanese:** +"* link:https://github.com/OpenLiberty/open-liberty/issues/33098[JSON レコヌドが改行で終わる堎合に `appsWriteJSON` が正しく動䜜しない]" + +### Example 2: Bug with Detailed Description +**English:** +```asciidoc +* link:https://github.com/OpenLiberty/open-liberty/issues/32999[Fix the exception in multipart data asynchronous call] ++ +Sending multipart/form-data with MicorProfileRestClient asynchronous results in below exception. ++ +`java.util.concurrent.CompletionException: jakarta.ws.rs.ProcessingException: RESTEASY004655: Unable to invoke request: jakarta.ws.rs.WebApplicationException: Unexpected entity instance: org.jboss.resteasy.plugins.providers.multipart.ResteasyEntityPartBuilder$EntityPartImpl` +``` + +**Japanese:** +```asciidoc +* link:https://github.com/OpenLiberty/open-liberty/issues/32999[マルチパヌト・デヌタの非同期呌び出しにおける䟋倖を修正] ++ +MicroProfileRestClient の非同期で multipart/form-data を送信するず、以䞋の䟋倖が発生したす。 ++ +`java.util.concurrent.CompletionException: jakarta.ws.rs.ProcessingException: RESTEASY004655: Unable to invoke request: jakarta.ws.rs.WebApplicationException: Unexpected entity instance: org.jboss.resteasy.plugins.providers.multipart.ResteasyEntityPartBuilder$EntityPartImpl` +``` + +## Command Examples + +### Example 1: Basic Command +**English:** +"To enable across all servers, clients and tools, you can enable FIPS 140-3 at the Install level by running:" +``` +securityUtility configureFIPS +``` + +**Japanese:** +"すべおのサヌバヌ、クラむアント、およびツヌル党䜓で有効にするには、以䞋を実行しお Install レベルで FIPS 140-3 を有効にできたす" +``` +securityUtility configureFIPS +``` + +### Example 2: Command with Options +**English:** +"To generate a 256-bit AES key using `securityUtility`, run the new `securityUtility generateAESKey` task to:" +"* Generate a random AES key:" +```bash +./securityUtility generateAESKey +``` + +**Japanese:** +"`securityUtility` を䜿甚しお 256 ビット AES キヌを生成するには、新しい `securityUtility generateAESKey` タスクを実行したす" +"* ランダムな AES キヌを生成する" +```bash +./securityUtility generateAESKey +``` + +## Closing Sections + +### Example 1: Get Liberty Now +**English:** +"== Get Open Liberty 26.0.0.1 now" +"Available through <>." + +**Japanese:** +"== Open Liberty 26.0.0.1 を今すぐ入手" +"<> から入手できたす。" + +### Example 2: Alternative Format +**English:** +"== Get Open Liberty 25.0.0.11 now" +"Available through <>." + +**Japanese:** +"== 今すぐ Open Liberty 25.0.0.11 を入手する" +"<> から可胜です。" + +## Link Translations + +### Example 1: Previous Releases +**English:** +"Check out link:{url-prefix}/blog/?search=release&search!=beta[previous Open Liberty GA release blog posts]." + +**Japanese:** +"link:{url-prefix}/blog/?search=release&search!=beta[以前の Open Liberty GA リリヌスのブログ投皿] もチェックしお䞋さい。" + +### Example 2: Bug List +**English:** +"View the list of fixed bugs in link:https://github.com/OpenLiberty/open-liberty/issues?q=label%3Arelease%3A26001+label%3A%22release+bug%22[26.0.0.1]." + +**Japanese:** +"26.0.0.1 で修正されたバグのリストは link:https://github.com/OpenLiberty/open-liberty/issues?q=label%3Arelease%3A26001+label%3A%22release+bug%22[こちら] です。" + +## Image References + +### Stack Overflow Button +**English:** +```asciidoc +[link=https://stackoverflow.com/tags/open-liberty] +image::img/blog/blog_btn_stack.svg[Ask a question on Stack Overflow, align="center"] +``` + +**Japanese:** +```asciidoc +[link=https://stackoverflow.com/tags/open-liberty] +image::img/blog/blog_btn_stack_ja.svg[Stack Overflow で質問する, align="center"] +``` + +Note: The image file changes from `blog_btn_stack.svg` to `blog_btn_stack_ja.svg`. \ No newline at end of file diff --git a/.github/blog_translation_automation/TRANSLATION_RULES.md b/.github/blog_translation_automation/TRANSLATION_RULES.md new file mode 100644 index 000000000..f3c000c46 --- /dev/null +++ b/.github/blog_translation_automation/TRANSLATION_RULES.md @@ -0,0 +1,375 @@ +# IBM BOB Integration Summary - Blog Translation Learning + +## Quick Start for IBM BOB + +This document provides a concise summary of what IBM BOB needs to learn from the blog_examples folder to translate English Open Liberty blogs to Japanese. + +## 🎯 Filename-Specific Translation Task + +### Input +You will receive a **filename** (e.g., `2026-01-27-26.0.0.1.adoc` or `2026-01-27-26.0.0.1`) as input. + +### Process +1. **Find**: Locate exact file in `posts/` directory (add `.adoc` if not present) +2. **Translate**: Apply all translation guidelines +3. **Save**: Save to `posts/ja/` with the **SAME filename** + +### Example +``` +Input filename: 2026-01-27-26.0.0.1.adoc (or 2026-01-27-26.0.0.1) + ↓ +Find: posts/2026-01-27-26.0.0.1.adoc + ↓ +Translate: (apply all guidelines) + ↓ +Save: posts/ja/2026-01-27-26.0.0.1.adoc +``` + +**Critical**: The output filename MUST be exactly the same as the input filename! + +## 📚 Learning Resources + +1. **TRANSLATION_RULES.md** (this file) - Comprehensive rules and patterns +2. **TRANSLATION_PATTERNS.md** - Specific before/after examples +3. **eng/** folder - English source blogs +4. **ja/** folder - Japanese translated blogs +5. **README.md** - Overview and usage instructions + +## 🎯 Core Translation Principles + +### 1. Translation Style +- **Formal Technical Japanese** (です・たす䜓) +- Professional, clear, and precise +- Natural Japanese flow while maintaining technical accuracy + +### 2. What to Translate (CRITICAL) + +#### YAML Front Matter: +``` +✅ Title (translate naturally) +✅ seo-title (translate + add " - OpenLiberty.io") +✅ seo-description (full translation) +✅ blog_description (same as seo-description) +``` + +#### Body Content: +``` +✅ All body text and headings (formal Japanese です・たす䜓) +✅ Image alt text (e.g., "Ask a question" → "質問する") +✅ Link display text (NOT the URLs) +✅ Section headers +✅ List item descriptions +✅ Explanatory paragraphs +``` + +### 3. What NOT to Translate (CRITICAL) + +#### YAML Front Matter: +``` +❌ YAML keys (layout, categories, author_picture, etc.) +❌ URLs and links +❌ GitHub usernames +``` + +#### Body Content: +``` +❌ Code blocks (XML, bash, properties, Java, etc.) +❌ Technical commands +❌ AsciiDoc markup ([source,xml], ----, +, *, etc.) +❌ Technical product names (Open Liberty, WebSphere, Jakarta EE, Maven, Gradle, Docker) +❌ Version numbers (26.0.0.1, 25.0.0.12, etc.) +❌ File paths (pom.xml, server.xml, build.gradle, etc.) +❌ Comments (especially GHA-BLOG-TOPIC blocks) +❌ Error messages and stack traces +``` + +### 4. Special Handling (REQUIRED) + +#### A. Language Links (CRITICAL) +**English version has:** +```yaml +blog-available-in-languages: +- lang: ja + path: /ja/blog/2026/01/27/26.0.0.1.html +``` + +**Japanese version MUST have:** +```yaml +blog-available-in-languages: +- lang: en + path: /blog/2026/01/27/26.0.0.1.html +``` + +#### B. Translator Credit (REQUIRED) +Add `additional_authors` section with the translator information provided in the workflow: + +**The workflow will provide these environment variables:** +- `TRANSLATOR_NAME` - GitHub username of the person who triggered the workflow +- `TRANSLATOR_GITHUB` - GitHub profile URL of the translator + +**Use this format:** +```yaml +additional_authors: +- name: [TRANSLATOR_NAME] (翻蚳) + github: [TRANSLATOR_GITHUB] + image: [TRANSLATOR_GITHUB]/avatar +``` + +**Example (if translator is "ismathbadsha"):** +```yaml +additional_authors: +- name: ismathbadsha (翻蚳) + github: https://github.com/ismathbadsha + image: https://avatars.githubusercontent.com/ismathbadsha +``` + +**IMPORTANT:** Always use the `TRANSLATOR_NAME` and `TRANSLATOR_GITHUB` environment variables provided by the workflow. Do NOT hardcode "IBM BOB" or any other name. + +#### C. Image References (REQUIRED) +Change Stack Overflow button: +- English: `blog_btn_stack.svg` +- Japanese: `blog_btn_stack_ja.svg` + +Example: +```asciidoc +# English +image::img/blog/blog_btn_stack.svg[Ask a question on Stack Overflow, align="center"] + +# Japanese +image::img/blog/blog_btn_stack_ja.svg[Stack Overflow で質問する, align="center"] +``` + +## 🔑 Key Translation Patterns + +### Technical Terms + +| Category | Action | Examples | +|----------|--------|----------| +| **Keep in English** | Product names, features, files, commands | Open Liberty, Maven, `pom.xml`, `securityUtility` | +| **Use Katakana** | Generic tech terms | サヌバヌ (server), クラむアント (client), キヌ (key) | +| **Translate to Japanese** | Common concepts | 機胜 (feature), バグ修正 (bug fixes), 蚭定 (configuration) | + +### Common Phrases + +| English | Japanese | +|---------|----------| +| "In this release" | "このリリヌスでは" | +| "If you're using" | "もし...を䜿甚しおいるなら" | +| "Check out" | "チェックしお䞋さい" | +| "Get Open Liberty X.X.X now" | "今すぐ Open Liberty X.X.X を入手する" | +| "Available through" | "...から入手できたす" | + +### Version Context +``` +"in 26.0.0.1" → "26.0.0.1 での" +"in 26.0.0.1" → "26.0.0.1 における" +``` + +## 📋 Front Matter Checklist + +When translating front matter: + +```yaml +# English → Japanese transformations: +✅ Translate title descriptively +✅ Translate seo-title + add " - OpenLiberty.io" +✅ Translate seo-description (full translation) +✅ Translate blog_description (same as seo-description) +✅ Swap blog-available-in-languages (ja → en, update path) +✅ Add additional_authors with translator credit +✅ Keep all other fields unchanged +``` + +## 🎚 Formatting Rules + +### Code Blocks +```asciidoc +# NEVER change code content +[source,xml] +---- + +---- +``` + +### Configuration Examples +```asciidoc +# English +* In `server.xml`: + +# Japanese +* `server.xml` の堎合: +``` + +### Links +```asciidoc +# Translate display text only +link:{url-prefix}/start/[Downloads page] +→ link:{url-prefix}/start/[ダりンロヌド・ペヌゞ] +``` + +### Images +```asciidoc +# Update to Japanese image variant +image::img/blog/blog_btn_stack.svg[Ask a question, align="center"] +→ image::img/blog/blog_btn_stack_ja.svg[質問する, align="center"] +``` + +## 🔍 Example Comparison + +### Before (English) +```asciidoc +== Log Throttling + +Open Liberty Logging is introducing log throttling. This new feature helps to prevent excessive log output. + +* In `server.xml`: ++ +[source,xml] +---- + +---- +``` + +### After (Japanese) +```asciidoc +== ログ抑制 + +Open Liberty のロギング機胜にログ抑制が導入されたした。この新機胜は、過床なログ出力を防ぐのに圹立ちたす。 + +* `server.xml` の堎合: ++ +[source,xml] +---- + +---- +``` + +## ⚠ Critical Rules + +### DO NOT: +- ❌ Translate code blocks +- ❌ Modify AsciiDoc syntax +- ❌ Change URLs or file paths +- ❌ Translate comments +- ❌ Remove or alter markup + +### ALWAYS: +- ✅ Use formal Japanese (です・たす) +- ✅ Preserve all formatting +- ✅ Maintain technical accuracy +- ✅ Keep natural Japanese flow +- ✅ Add translator credit + +## 📊 Quality Validation + +Before finalizing translation, verify: + +``` +□ Front matter correctly translated +□ All code blocks unchanged +□ All links functional +□ Technical terms consistent +□ AsciiDoc syntax intact +□ Comments preserved +□ Japanese reads naturally +□ Image references updated (_ja.svg) +□ Translator credit added +``` + +## 🚀 Integration Steps for IBM BOB + +### 1. Pre-Translation Phase +``` +□ Receive filename input (e.g., 2026-01-27-26.0.0.1.adoc or 2026-01-27-26.0.0.1) +□ Read TRANSLATION_RULES.md (this file) +□ Study TRANSLATION_PATTERNS.md +□ Compare eng/ and ja/ examples side-by-side +``` + +### 2. File Location Phase +``` +□ Add .adoc extension if not present in input +□ Locate exact file in posts/ directory +□ Identify the correct source file +□ Note the exact filename for output +``` + +### 3. Translation Phase +``` +□ Read the source file completely +□ Apply formal technical Japanese style +□ Preserve all code and markup exactly +□ Translate text naturally while maintaining accuracy +□ Follow established terminology patterns +□ Update front matter (language links, translator credit, images) +``` + +### 4. Post-Translation Phase +``` +□ Validate against quality checklist +□ Ensure consistency with examples +□ Verify all formatting preserved +□ Save to posts/ja/ with EXACT SAME filename +``` + +### File Naming Examples +``` +Source Output +posts/2026-01-27-26.0.0.1.adoc → posts/ja/2026-01-27-26.0.0.1.adoc +posts/2025-12-02-25.0.0.12.adoc → posts/ja/2025-12-02-25.0.0.12.adoc +posts/2025-11-04-25.0.0.11.adoc → posts/ja/2025-11-04-25.0.0.11.adoc +posts/2024-12-16-jblog-two-year-celebration.adoc → posts/ja/2024-12-16-jblog-two-year-celebration.adoc +``` + +## 📖 Learning from Examples + +### Example Files Available + +1. **2026-01-27-26.0.0.1.adoc** + - Feature introduction (log throttling) + - Configuration examples + - Bug fixes + +2. **2025-12-02-25.0.0.12.adoc** + - Complex technical features (AES-256, FIPS) + - Security terminology + - Command-line examples + - CVE table + +3. **2025-11-04-25.0.0.11.adoc** + - Bug-fix-only release + - Error descriptions + - Simpler structure + +### How to Learn + +``` +1. Open English file (translation_examples/eng/filename.adoc) +2. Open Japanese file (translation_examples/ja/filename.adoc) +3. Compare side-by-side +4. Identify patterns: + - What changed? + - What stayed the same? + - How were technical terms handled? + - How was sentence structure adapted? +``` + +## 🎓 Key Takeaways + +1. **Style**: Formal technical Japanese throughout +2. **Preservation**: All code and markup stay exactly the same +3. **Translation**: Natural Japanese while maintaining technical precision +4. **Consistency**: Use established patterns for technical terms +5. **Quality**: Professional, accurate, and readable + +## 📞 Support + +For questions or clarifications: +- Review TRANSLATION_RULES.md for detailed rules +- Check TRANSLATION_PATTERNS.md for specific patterns +- Compare with existing translation_examples/eng/ and translation_examples/ja/ examples +- Consult translation team if needed + +--- + +**Remember**: The goal is to produce Japanese translations that are technically accurate, professionally written, and maintain the exact formatting and code of the original English blogs. \ No newline at end of file diff --git a/.github/blog_translation_automation/translation_examples/eng/2025-03-25-open-liberty-cloud-hosted-guides-multi-languages.adoc b/.github/blog_translation_automation/translation_examples/eng/2025-03-25-open-liberty-cloud-hosted-guides-multi-languages.adoc new file mode 100644 index 000000000..0a3b86896 --- /dev/null +++ b/.github/blog_translation_automation/translation_examples/eng/2025-03-25-open-liberty-cloud-hosted-guides-multi-languages.adoc @@ -0,0 +1,76 @@ +--- +layout: post +title: "Learn Open Liberty in your language - multilingual support for our cloud-hosted guides" +# Do NOT change the categories section +categories: blog +author_picture: https://avatars3.githubusercontent.com/shin19991207 +author_github: https://github.com/shin19991207 +seo-title: Learn Open Liberty in your language - multilingual support for our cloud-hosted guides - OpenLiberty.io +seo-description: Open Liberty's cloud-hosted guides on Skills Network Labs now support machine-generated translations, allowing developers to learn in their preferred language with a simple language switch. +blog_description: "Open Liberty's cloud-hosted guides on Skills Network Labs now support machine-generated translations, allowing developers to learn in their preferred language with a simple language switch." +open-graph-image: https://openliberty.io/img/twitter_card.jpg +open-graph-image-alt: Open Liberty Logo +blog-available-in-languages: +- lang: ja + path: /ja/blog/2025/03/25/open-liberty-cloud-hosted-guides-multi-languages.html +--- += Learn Open Liberty in your language: multilingual support for our cloud-hosted guides +Morgan Chang +:imagesdir: / +:url-prefix: +:url-about: / +//Blank line here is necessary before starting the body of the post. + +Open Liberty's cloud-hosted guides on Skills Network now support multiple languages! This new feature lets you explore hands-on guides and learn MicroProfile and Jakarta EE APIs on Open Liberty in your preferred language. Whether you're new to Open Liberty or expanding your skills, you can now easily access guides in the language that suits you best. + +== Try it out today! + +The new language selection feature allows you to switch between languages with just a click. + +To access a cloud-hosted guide, start by browsing link:{url-prefix}/guides/[our full collection of guides]. After selecting a guide, click the **Run in cloud** button in the guide code pane to open it, as shown in the following screenshot: + +[.img_border_light] +image::/img/blog/blog-2168-guide.png[Guide sample,width=70%,align="center"] + +Once the guide opens in the cloud-hosted environment, you can change the language using the language selection menu. Click the image:/img/blog/language-icon.svg[change language icon] *Change Language* button at the top right corner of the guide panel to open the language options: + +[.img_border_light] +image::img/blog/SNL-change-language-button.png[Skills Network Labs change language button,width=70%,align="center"] + +Choose your preferred language from the available options. The guide content will be translated automatically. + +[.img_border_light] +image::img/blog/SNL-language-menu.png[Skills Network Labs language menu,width=70%,align="center"] + +Now, enjoy the hands-on experience with the added benefit of learning in your language! + +== Supported languages + +The language selection menu currently includes the following options: + +- English +- Bahasa Indonesia (Indonesian) +- Deutsch (German) +- Español (Spanish) +- Français (French) +- Italiano (Italian) +- Magyar (Hungarian) +- Nederlands (Dutch) +- Polski (Polish) +- Português (Portuguese) +- Svenska (Swedish) +- TÃŒrkçe (Turkish) +- ΕλληΜικά (Greek) +- Қазақ тілі (Kazakh) +- РусскОй (Russian) +- УкраїМська (Ukrainian) +- العرؚية (Arabic) +- à€¹à€¿à€šà¥à€Šà¥€ (Hindi) +- à¹„àž—àž¢ (Thai) +- 한국얎 (Korean) +- äž­æ–‡ (Chinese - Simplified) +- 日本語 (Japanese) + +== We welcome your feedback + +Tell us about your experience with our guides by responding to the questions in the **Summary** section at the end of each cloud-hosted guide. We'd love to hear your feedback! diff --git a/.github/blog_translation_automation/translation_examples/eng/2025-11-04-25.0.0.11.adoc b/.github/blog_translation_automation/translation_examples/eng/2025-11-04-25.0.0.11.adoc new file mode 100644 index 000000000..91a75b18a --- /dev/null +++ b/.github/blog_translation_automation/translation_examples/eng/2025-11-04-25.0.0.11.adoc @@ -0,0 +1,162 @@ +--- +layout: post +title: "Notable bug fixes in 25.0.0.11" +# Do NOT change the categories section +categories: blog +author_picture: https://avatars3.githubusercontent.com/navaneethsnair1 +author_github: https://github.com/navaneethsnair1 +seo-title: Notable bug fixes in 25.0.0.11 - OpenLiberty.io +seo-description: This GA release includes significant bug fixes that enhance stability, improve performance, and provide a smoother user experience. +blog_description: This GA release includes significant bug fixes that enhance stability, improve performance, and provide a smoother user experience. +open-graph-image: https://openliberty.io/img/twitter_card.jpg +open-graph-image-alt: Open Liberty Logo +blog-available-in-languages: +- lang: ja + path: /ja/blog/2025/11/04/25.0.0.11.html +--- += Notable bug fixes in 25.0.0.11 +Navaneeth S Nair +:imagesdir: / +:url-prefix: +:url-about: / + +This GA release includes significant bug fixes that enhance stability, improve performance, and provide a smoother user experience. + +* <> + +Check out link:{url-prefix}/blog/?search=release&search!=beta[previous Open Liberty GA release blog posts]. + +[#run] + +== Develop and run your apps using 25.0.0.11 + +If you're using link:{url-prefix}/guides/maven-intro.html[Maven], include the following in your `pom.xml` file: + +[source,xml] +---- + + io.openliberty.tools + liberty-maven-plugin + 3.11.5 + +---- + +Or for link:{url-prefix}/guides/gradle-intro.html[Gradle], include the following in your `build.gradle` file: + +[source,gradle] +---- +buildscript { + repositories { + mavenCentral() + } + dependencies { + classpath 'io.openliberty.tools:liberty-gradle-plugin:3.9.5' + } +} +apply plugin: 'liberty' +---- + +Or if you're using link:{url-prefix}/docs/latest/container-images.html[container images]: + +[source] +---- +FROM icr.io/appcafe/open-liberty +---- + +Or take a look at our link:{url-prefix}/start/[Downloads page]. + +If you're using link:https://plugins.jetbrains.com/plugin/14856-liberty-tools[IntelliJ IDEA], link:https://marketplace.visualstudio.com/items?itemName=Open-Liberty.liberty-dev-vscode-ext[Visual Studio Code] or link:https://marketplace.eclipse.org/content/liberty-tools[Eclipse IDE], you can also take advantage of our open source link:https://openliberty.io/docs/latest/develop-liberty-tools.html[Liberty developer tools] to enable effective development, testing, debugging and application management all from within your IDE. + +[link=https://stackoverflow.com/tags/open-liberty] +image::img/blog/blog_btn_stack.svg[Ask a question on Stack Overflow, align="center"] + +// // // // // // // // +// In the preceding section: +// If there were any CVEs addressed in this release, fill out the table. For the information, reference https://github.com/OpenLiberty/docs/blob/draft/modules/ROOT/pages/security-vulnerabilities.adoc. If it has not been updated for this release, reach out to Kristen Clarke or Michal Broz. +// Note: When linking to features, use the +// `link:{url-prefix}/docs/latest/reference/feature/someFeature-1.0.html[Some Feature 1.0]` format and +// NOT what security-vulnerabilities.adoc does (feature:someFeature-1.0[]) +// +// If there are no CVEs fixed in this release, replace the table with: +// "There are no security vulnerability fixes in Open Liberty [25.0.0.11]." +// // // // // // // // + +[#bugs] +== Notable bugs fixed in this release + + +Several bugs have been fixed in this release. The following sections highlight some of the key issues that were resolved. For a complete list of fixes, see the link:https://github.com/OpenLiberty/open-liberty/issues?q=label%3Arelease%3A250011+label%3A%22release+bug%22[full list of bugs fixed in 25.0.0.11]. + +* link:https://github.com/OpenLiberty/open-liberty/issues/33098[`appsWriteJSON` not working correctly when JSON record ends with new line.] ++ +When using the Logback logging framework and the logger is configured to route the logging events to `STDOUT` with an encoder that converts the message to JSON format (e.g., `co.elastic.logging.logback.EcsEncoder`), the message overall will end with a _new line_. ++ +Combined with a OpenLiberty server where the `appsWriteJson` configuration is set to true, the expected behavior is that the emitted JSON from Logback would not be wrapped within the `message` value of the typical Open Liberty JSON log output. However, this is the case. + +* link:https://github.com/OpenLiberty/open-liberty/issues/32999[Fix the exception in multipart data asynchronous call] ++ +Sending multipart/form-data with MicorProfileRestClient asynchronous results in below exception. ++ +`java.util.concurrent.CompletionException: jakarta.ws.rs.ProcessingException: RESTEASY004655: Unable to invoke request: jakarta.ws.rs.WebApplicationException: Unexpected entity instance: org.jboss.resteasy.plugins.providers.multipart.ResteasyEntityPartBuilder$EntityPartImpl` + +* link:https://github.com/OpenLiberty/open-liberty/issues/32954[AutoDecompress is not working correctly.] ++ +POST request, with compressed body, results in: ++ +`SRVE0216E: post body contains less bytes than specified by content-length` exception. + +* link:https://github.com/OpenLiberty/open-liberty/issues/32908[Design Issue: Inconsistent behaviour for `server create` with server names containing non-alphanumeric characters] ++ +When creating a server using `./server create ...` if the server name contains non-alphanumeric characters (those not specified in documentation) the behaviour is inconsistent. ++ +For example: ++ +``` +./server create 'this£server' +``` ++ +returns: ++ +``` +CWWKE0005E: The runtime environment could not be launched. +CWWKE0012E: The specified server name contains a character that is not valid (name=this£server). Valid characters are: Unicode alphanumeric (e.g. 0-9, a-z, A-Z), underscore (_), dash (-), plus (+), and period (.). A server name cannot begin with a dash (-) or period (.). +``` ++ +but ++ +``` +./server create 'this$server' +``` ++ +returns: ++ +``` +Server this created. +``` ++ +Also, when a server name contains whitespaces, whether the server name is provided inside quotes or not a server is created using the text before the first whitespace. For example: ++ +``` +./server create 'this server' +``` ++ +returns: ++ +``` +CWWKE0027W: Only one server may be specified on the command line; subsequent names will be ignored (server=this, ignored=server). +Server this created. +``` + +* link:https://github.com/OpenLiberty/open-liberty/issues/31628[Support continued authentication when custom Subject is not in cache] ++ +In a Single Sign-On (SSO) environment, users occasionally need to temporarily elevate their privileges to administrator level within an application to perform specific administrative tasks. However, an AuthenticationException prevents this scenario from functioning properly. ++ +The issue occurs despite the LTPA (Lightweight Third-Party Authentication) token being valid- it can be successfully decrypted and parsed, with both its expiration date and signature properly verified. ++ +The authentication failure happens specifically because the WebSphere Liberty server cannot locate the elevated user's Subject in its authentication cache, resulting in authentication failure during the privilege elevation process. ++ +This limitation prevents legitimate administrative operations in scenarios where temporary privilege elevation is required within the same SSO session. + +== Get Open Liberty 25.0.0.11 now + +Available through <>. diff --git a/.github/blog_translation_automation/translation_examples/eng/2025-12-02-25.0.0.12.adoc b/.github/blog_translation_automation/translation_examples/eng/2025-12-02-25.0.0.12.adoc new file mode 100644 index 000000000..2c36b7522 --- /dev/null +++ b/.github/blog_translation_automation/translation_examples/eng/2025-12-02-25.0.0.12.adoc @@ -0,0 +1,352 @@ +--- +layout: post +title: "Bring your own AES-256 key, and support for FIPS 140-3 with IBM Semeru Runtimes in 25.0.0.12" +# Do NOT change the categories section +categories: blog +author_picture: https://avatars3.githubusercontent.com/navaneethsnair1 +author_github: https://github.com/navaneethsnair1 +seo-title: Bring your own AES-256 key, and support for FIPS 140-3 with IBM Semeru Runtimes in 25.0.0.12 - OpenLiberty.io +seo-description: This release introduces support for supplying your own Base64-encoded AES-256 key, removing the need for Liberty to derive a key during startup and resulting in faster and more efficient password encryption. It also adds FIPS 140-3 compliance when Liberty running with appropriate IBM Semeru Runtime versions. +blog_description: This release introduces support for supplying your own Base64-encoded AES-256 key, removing the need for Liberty to derive a key during startup and resulting in faster and more efficient password encryption. It also adds FIPS 140-3 compliance when Liberty running with appropriate IBM Semeru Runtime versions. +open-graph-image: https://openliberty.io/img/twitter_card.jpg +open-graph-image-alt: Open Liberty Logo +blog-available-in-languages: +- lang: ja + path: /ja/blog/2025/12/02/25.0.0.12.html +--- += Bring your own AES-256 key, and support for FIPS 140-3 with IBM Semeru Runtimes in 25.0.0.12 +Navaneeth S Nair +:imagesdir: / +:url-prefix: +:url-about: / +//Blank line here is necessary before starting the body of the post. + +This release introduces support for supplying your own Base64-encoded AES-256 key, removing the need for Liberty to derive a key during startup and resulting in faster and more efficient password encryption. It also adds FIPS 140-3 compliance when Liberty running with supported IBM Semeru Runtime versions (11.0.29, 17.0.17, 21.0.9, 25.0.1 or later). + +// // // // // // // // +// In the preceding section: +// Leave any instances of `tag::xxxx[]` or `end:xxxx[]` as they are. +// +// Replace RELEASE_SUMMARY with a short paragraph that summarises the release. Start with the lead feature but also summarise what else is new in the release. You will agree which will be the lead feature with the reviewers so you can just leave a placeholder here until after the initial review. +// // // // // // // // + +// // // // // // // // +// Replace the following throughout the document: +// Replace 25.0.0.12 with the version number of Open Liberty, eg: 22.0.0.2 +// Replace 250010 with the version number of Open Liberty wihtout the periods, eg: 22002 +// // // // // // // // + +In link:{url-about}[Open Liberty] 25.0.0.12: + +* <> +* <> +* <> + +View the list of fixed bugs in link:https://github.com/OpenLiberty/open-liberty/issues?q=label%3Arelease%3A250012+label%3A%22release+bug%22[25.0.0.12]. + +Check out link:{url-prefix}/blog/?search=release&search!=beta[previous Open Liberty GA release blog posts]. + +[#run] +== Develop and run your apps using 25.0.0.12 + +If you're using link:{url-prefix}/guides/maven-intro.html[Maven], include the following in your `pom.xml` file: + +[source,xml] +---- + + io.openliberty.tools + liberty-maven-plugin + 3.11.5 + +---- + +Or for link:{url-prefix}/guides/gradle-intro.html[Gradle], include the following in your `build.gradle` file: + +[source,gradle] +---- +buildscript { + repositories { + mavenCentral() + } + dependencies { + classpath 'io.openliberty.tools:liberty-gradle-plugin:3.9.6' + } +} +apply plugin: 'liberty' +---- + +Or if you're using link:{url-prefix}/docs/latest/container-images.html[container images]: + +[source] +---- +FROM icr.io/appcafe/open-liberty +---- + +Or take a look at our link:{url-prefix}/start/[Downloads page]. + +If you're using link:https://plugins.jetbrains.com/plugin/14856-liberty-tools[IntelliJ IDEA], link:https://marketplace.visualstudio.com/items?itemName=Open-Liberty.liberty-dev-vscode-ext[Visual Studio Code] or link:https://marketplace.eclipse.org/content/liberty-tools[Eclipse IDE], you can also take advantage of our open source link:https://openliberty.io/docs/latest/develop-liberty-tools.html[Liberty developer tools] to enable effective development, testing, debugging and application management all from within your IDE. + +[link=https://stackoverflow.com/tags/open-liberty] +image::img/blog/blog_btn_stack.svg[Ask a question on Stack Overflow, align="center"] + +// // // // DO NOT MODIFY THIS COMMENT BLOCK // // // // +// Blog issue: https://github.com/OpenLiberty/open-liberty/issues/33391 +// Contact/Reviewer: jacobwdv +// // // // // // // // +[#aes256] +== Bring Your Own AES-256 Key + +Liberty now allows you to provide a Base64-encoded 256-bit AES key for password encryption. + +=== What’s New? +Previously, Liberty supported the `wlp.password.encryption.key` property, which accepted a password and derived an AES key through a computationally intensive process. This derivation involved repeated hashing with a salt over many iterations, which added overhead during server startup. + +Now, you can now supply a pre-generated AES key directly. This eliminates the derivation step, resulting in faster startup times and improved runtime performance when encrypting and decrypting passwords. + +=== How to Enable It + +. **Obtain a 256-bit AES key** ++ +You can obtain a 256-bit AES key from your security infrastructure or generate one by using the `securityUtility generateAESKey` command. ++ +To generate a 256-bit AES key using `securityUtility`, run the new `securityUtility generateAESKey` task to: + +* Generate a random AES key: ++ +```bash +./securityUtility generateAESKey +``` +* Optionally, save a random AES key to an XML file: ++ +```bash + securityUtility generateAESKey --createConfigFile=myAesConfig.xml +``` +* Or, generate a non-random AES key from a passphrase: ++ +```bash +./securityUtility generateAESKey --key= +``` +* Optionally, generate a non-random AES key from a passphrase and save it into an XML file: ++ +```bash + securityUtility generateAESKey --key= --createConfigFile=myAesConfig.xml +``` + +. *Configure the key in Liberty* ++ +To configure the AES key directly in your `server.xml` file, add the following variable definition: ++ +[source, xml] +---- + +---- ++ +Or to load the AES key from an external configuration file (such as the one generated by `generateAESKey --createConfigFile`), include the file by using the following configuration. ++ +*Note:* The included file must contain the variable definition for `wlp.aes.encryption.key` as mentioned previously. ++ +[source, xml] +---- + +---- + +. *Encrypt your passwords* ++ +You can encrypt passwords that use the AES-256 key by running the `securityUtility encode` command: + +- Provide the key directly: ++ +```bash +securityUtility encode --encoding=aes --base64Key= +``` +- To use an XML or Java properties file that contains the AES key variable, specify the `--aesConfigFile` option: ++ +```bash +securityUtility encode --encoding=aes --aesConfigFile= +``` +. *Update configuration* ++ +Copy the resulting encrypted value into your Liberty configuration. + +--- + +*Performance Tip:* For best performance, re-encrypt all passwords by using the new AES-256 key. Open Liberty supports older password formats, but full migration provides consistent startup performance. + +Liberty commands that support AES encryption accept the following options: + +* `--base64Key` or `--passwordBase64Key`: Provide the Base64-encoded AES-256 key directly. +* `--aesConfigFile`: Provide a configuration file that defines either `wlp.aes.encryption.key` or `wlp.password.encryption.key`. + +Other command line tasks have been updated to accept Base64 keys and AES configuration files in a similar fashion: + +. `securityUtility` + * `createSSLCertificate` + * `createLTPAKeys` + * `encode` +. `configUtility` + * `install` +. `collective` + * `create` + * `join` + * `replicate` + +// DO NOT MODIFY THIS LINE. + +// // // // DO NOT MODIFY THIS COMMENT BLOCK // // // // +// Blog issue: https://github.com/OpenLiberty/open-liberty/issues/33359 +// Contact/Reviewer: abutch3r +// // // // // // // // +[#fips] +== Support for FIPS 140-3 with IBM Semeru Runtimes + +FIPS 140-3 is the latest version of the FIPS 140 standard, which provides a set of guidelines for cryptographic modules to ensure their security and integrity. Support for FIPS 140-3 was first introduced in Liberty with IBM JDK 8 in version link:https://openliberty.io/blog/2025/03/25/25.0.0.3.html[25.0.0.3]. In this release, Open Liberty supports the FIPS 140-3 standard when using link:https://developer.ibm.com/languages/semeru-runtimes[IBM Semeru Runtimes] versions 11.0.29, 17.0.17, 21.0.9, 25.0.1 or higher. + +=== Enabling FIPS 140-3 + +The `securityUtility` has a new task called configureFIPS for enabling FIPS 140-3. This new task is applicable for both IBM Semeru Runtimes and IBM SDK 8. + +The `configureFIPS` task operates at 3 levels: + +1. Install +2. Server +3. Client + +To enable across all servers, clients and tools, you can enable FIPS 140-3 at the Install level by running: +``` +securityUtility configureFIPS +``` + +To enable or configure a particular server, run: +``` +securityUtility configureFIPS --server= +``` + +To enable or configure a particular client, run: +``` +securityUtility configureFIPS --client= +``` + +For IBM Semeru Runtimes, these commands configure the FIPS enablement requirements and create a Java security properties file that can be edited to set the required constraints of the application. +For more information about setting the constraints, see the documentation on link:https://www.ibm.com/support/pages/node/7113528#creatingextensionsofprofiles[creating extensions of profiles]. + +To create a profile in a particular location or with a particular name, the `--customProfileFile=` argument can be specified and the file, or files, are created that can be edited. The name of the file is used as the name of the profile. The configuration is set to point at the supplied files. +Multiple files can be specified in the property. All the files are created and extend the one before itself, the final file that is specified being the last in the chain. + +If you do not specify the `--customProfileFile` as part of the `securityUtility configureFIPS` command, the file is created in the following locations. The location depends on whether you specified a server or a client. + +- if neither server or client is specified `/wlp/etc/FIPS140-3-Liberty-Application.properties` +- if server is specified `/resources/security/FIPS140-3-Liberty-Application.properties` +- if client is specified `/resources/security/FIPS140-3-Liberty-Application.properties` + +To disable FIPS 140-3 at the required level it is enabled at, add the following option to the command. +``` +--disable +``` + +=== LTPA + +With FIPS 140-3 enabled, the server can only load LTPA keys generated using FIPS 140-3–approved cryptographic algorithms. For LTPA Single Sign On (SSO) to work, users must configure all servers to use FIPS 140-3. For more information on configuration, see link:https://www.ibm.com/docs/en/was-liberty/base?topic=liberty-configuring-ltpa-in[documentation]. + +When the server is restarted after FIPS 140-3 is enabled, a new `ltpa.keys` file generated with FIPS-approved algorithms is created automatically. Any existing `ltpa.keys` files created before FIPS 140-3 was enabled are backed up to `ltpa.keys.nofips`. +Customers must use the securityUtility `createLTPAKeys` command to re-create any validation key files that were created before FIPS 140-3 was enabled. + +==== Creating a new FIPS approved LTPA keys using securityUtility: + +One can also create the LTPA keys by using the securityUtility command's `createLTPAKeys` option. To generate the LTPA keys with FIPS 140-3 approved algorithms, configure FIPS 140-3 at the installation level. +``` +securityUtility createLTPAKeys --password=mypassword --passwordEncoding=aes +``` + +=== SAML + +Liberty SAML Web Browser SSO encryption now supports ECDH-ES key exchange which is IBM Semeru FIPS 140-3 certified. +Liberty now supports stronger signature algorithms for SAML, including `SHA256`, `SHA384`, `SHA512`, and `ECDSAwithSHA256`, `ECDSAwith384` and `ECDSAwith512`. + +=== Supported signature method algorithm options when FIPS 140-3 mode is enabled +*Supported:* + +- SHA256 +- SHA384 (25.0.0.12 and later) +- SHA512 (25.0.0.12 and later) +- ECDSAwithSHA256 (25.0.0.12 and later) +- ECDSAwithSHA384 (25.0.0.12 and later) +- ECDSAwithSHA512 (25.0.0.12 and later) + +*Not Supported:* + +- SHA1 + +*Example Usage* +``` + +``` + +=== Supported encryption algorithms when FIPS 140-3 mode is enabled +*Supported:* + +- ECDH-ES + +*Not Supported:* + +- RSA-OAEP encryption key transport when SAML encryption is enabled. + +*Note:* The FIPS module in use by the IBM Semeru runtime is planning to certify RSA-OAEP operations in a future release. + +=== wsSecurity-1.1 + +The `wsSecurity-1.1` feature now supports the use of the Elliptic Curve keys for signing and encryption by leveraging the ECDH-ES algorithm. + +=== Defining constraints for applications + +When FIPS 140-3 is configured, the Semeru runtime enforces the use of FIPS 140-3–approved algorithms across the server when the link:https://www.ibm.com/support/pages/node/7113528#restrictedsecuritymode[FIPS140-3-Strongly-Enforced restricted security mode profile] is enabled. The Semeru FIPS 140-3 enforcement of cryptographic algorithms does not distinguish the usage of the algorithms. For example, usage of `SHA1` for a message digest hash (usually used to compare two values) is permitted by the FIPS 140-3 specification but Semeru FIPS 140-3 will still throw an exception as there is no distinction made on the usage of `SHA1`. Whenever an exception occurs, investigate the cause and update the algorithm if needed (for example, to `SHA-256` or `SHA-512` in this case). If the issue is not cryptography-related and its usage is permitted by the FIPS 140-3 specification, add it to the exception list in the custom profile as an allowed constraint. + +IBM Semeru applies constraints by using its profiles to grant access to Java security providers and algorithms to help ensure FIPS 140-3 compliance. When Strongly-enforced or Strict profiles are used as the base, algorithms like `SHA-1` are not available to any application classes until a constraint is added to allow it. + +If using a non-FIPS 140-3 Message Digest like `SHA-1`, you might see an exception like this: +``` +java.security.NoSuchAlgorithmException: SHA1 MessageDigest not available + at java.base/sun.security.jca.GetInstance.getInstance(GetInstance.java:159) + at java.base/java.security.MessageDigest.getInstance(MessageDigest.java:185) + at io.openliberty.fips.test.application.ObjectComparator.compareObjects(ObjectComparator.java:463) +``` +As the application is comparing objects, `SHA-1` can be used. + +In the properties file that was created as part of enabling FIPS you can add the constraint under the provider that supplies the algorithm. +``` +RestrictedSecurity.OpenJCEPlusFIPS.FIPS140-3-Liberty-Application.jce.provider.1 = com.ibm.crypto.plus.provider.OpenJCEPlusFIPS [+ \ + {MessageDigest, SHA-1, *, FullClassName:io.openliberty.fips.test.application.ObjectComparator}] +``` +*Note:* While the exception stated `SHA1` was missing, the name of the algorithm is `SHA-1` with `SHA1` being an alias for it. + +If your application includes a Java security provider, or if you need to add a new provider that is not already registered in the `FIPS140-3-Liberty` or `FIPS140-3-Strongly-Enforced` profiles, you must also include it in the FIPS security properties file. + +You can add your provider like this: +``` +RestrictedSecurity.OpenJCEPlusFIPS.FIPS140-3-Liberty-Application.jce.provider.51 = io.openliberty.fips.test.custom.SecurityProvider +``` +If you do not specify any constraints within a provider’s definition, all algorithms offered by that provider become available to all classes in the runtime. Additionally, any new providers that you add must be placed starting at provider position 51. + +See the documentation for more information about link:https://www.ibm.com/support/pages/fips-140-3-cryptography-ibm-semeru-runtimes[FIPS 140-3 support] and link:https://openliberty.io/docs/latest/reference/config/samlWebSso20.html[SAML Web Browser SSO]. + +Also see the link:https://www.ibm.com/docs/en/was-liberty/nd?topic=liberty-troubleshooting-fips-140-3[troubleshooting] section for some examples of constraints that might need to be added for a few different scenarios. + +// DO NOT MODIFY THIS LINE. + +[#CVEs] +== Security vulnerability (CVE) fixes in this release +[cols="5*"] +|=== +|CVE |CVSS Score |Vulnerability Assessment |Versions Affected |Notes + +|https://www.cve.org/CVERecord?id=CVE-2025-7962[CVE-2025-7962] +|7.5 +|SMTP injection +|17.0.0.3-25.0.0.11 +|Affects the `javaMail-1.5`, `javaMail-1.6`, `mail-2.0` and `mail-2.1` features +|=== + +For a list of past security vulnerability fixes, reference the link:{url-prefix}/docs/latest/security-vulnerabilities.html[Security vulnerability (CVE) list]. + +== Get Open Liberty 25.0.0.12 now + +Available through <>. diff --git a/.github/blog_translation_automation/translation_examples/eng/2026-01-27-26.0.0.1.adoc b/.github/blog_translation_automation/translation_examples/eng/2026-01-27-26.0.0.1.adoc new file mode 100644 index 000000000..eeb6e32c9 --- /dev/null +++ b/.github/blog_translation_automation/translation_examples/eng/2026-01-27-26.0.0.1.adoc @@ -0,0 +1,258 @@ +--- +layout: post +title: "Log throttling and notable bug fixes in 26.0.0.1" +# Do NOT change the categories section +categories: blog +author_picture: https://avatars3.githubusercontent.com/navaneethsnair1 +author_github: https://github.com/navaneethsnair1 +seo-title: Log throttling and notable bug fixes in 26.0.0.1- OpenLiberty.io +seo-description: In this release, Open Liberty introduces log throttling to automatically suppress excessive, repeated log messages, helping developers reduce noise and manage high-volume logging more effectively. +blog_description: In this release, Open Liberty introduces log throttling to automatically suppress excessive, repeated log messages, helping developers reduce noise and manage high-volume logging more effectively. +open-graph-image: https://openliberty.io/img/twitter_card.jpg +open-graph-image-alt: Open Liberty Logo +blog-available-in-languages: +- lang: ja + path: /ja/blog/2026/01/27/26.0.0.1.html +--- += Log throttling and notable bug fixes in 26.0.0.1 +Navaneeth S Nair +:imagesdir: / +:url-prefix: +:url-about: / +//Blank line here is necessary before starting the body of the post. + +// // // // // // // // +// In the preceding section: +// Do not insert any blank lines between any of the lines. +// Do not remove or edit the variables on the lines beneath the author name. +// +// "open-graph-image" is set to OL logo. Whenever possible update this to a more appropriate/specific image (For example if present a image that is being used in the post). However, it +// can be left empty which will set it to the default +// +// "open-graph-image-alt" is a description of what is in the image (not a caption). When changing "open-graph-image" to +// a custom picture, you must provide a custom string for "open-graph-image-alt". +// +// Replace TITLE with the blog post title eg: MicroProfile 3.3 is now available on Open Liberty 20.0.0.4 +// Replace navaneethsnair1 with your GitHub username eg: lauracowen +// Replace DESCRIPTION with a short summary (~60 words) of the release (a more succinct version of the first paragraph of the post). +// Replace Navaneeth S Nair with your name as you'd like it to be displayed, eg: Laura Cowen +// +// Example post: 2020-04-09-microprofile-3-3-open-liberty-20004.adoc +// +// If adding image into the post add : +// ------------------------- +// [.img_border_light] +// image::img/blog/FILE_NAME[IMAGE CAPTION ,width=70%,align="center"] +// ------------------------- +// "[.img_border_light]" = This adds a faint grey border around the image to make its edges sharper. Use it around screenshots but not +// around diagrams. Then double check how it looks. +// There is also a "[.img_border_dark]" class which tends to work best with screenshots that are taken on dark +// backgrounds. +// Change "FILE_NAME" to the name of the image file. Also make sure to put the image into the right folder which is: img/blog +// change the "IMAGE CAPTION" to a couple words of what the image is +// // // // // // // // + +In this release, Open Liberty introduces log throttling to automatically suppress excessive, repeated log messages, helping developers reduce noise and manage high-volume logging more effectively. +// // // // // // // // +// In the preceding section: +// Leave any instances of `tag::xxxx[]` or `end:xxxx[]` as they are. +// +// Replace RELEASE_SUMMARY with a short paragraph that summarises the release. Start with the lead feature but also summarise what else is new in the release. You will agree which will be the lead feature with the reviewers so you can just leave a placeholder here until after the initial review. +// // // // // // // // + +// // // // // // // // +// Replace the following throughout the document: +// Replace 26.0.0.1 with the version number of Open Liberty, eg: 22.0.0.2 +// Replace 26001 with the version number of Open Liberty wihtout the periods, eg: 22002 +// // // // // // // // + +In link:{url-about}[Open Liberty] 26.0.0.1: + +* <> +* <> + +// // // // // // // // +// If there were updates to guides since last release, keep the following, otherwise remove section. +// // // // // // // // +Along with the new features and functions added to the runtime, we’ve also made <>. + +// // // // // // // // +// In the preceding section: +// Replace the TAG_X with a short label for the feature in lower-case, eg: mp3 +// Replace the FEATURE_1_HEADING with heading the feature section, eg: MicroProfile 3.3 +// Where the updates are grouped as sub-headings under a single heading +// (eg all the features in a MicroProfile release), provide sub-entries in the list; +// eg replace SUB_TAG_1 with mpr, and SUB_FEATURE_1_HEADING with +// Easily determine HTTP headers on outgoing requests (MicroProfile Rest Client 1.4) +// // // // // // // // + +View the list of fixed bugs in link:https://github.com/OpenLiberty/open-liberty/issues?q=label%3Arelease%3A26001+label%3A%22release+bug%22[26.0.0.1]. + +Check out link:{url-prefix}/blog/?search=release&search!=beta[previous Open Liberty GA release blog posts]. + + +[#run] + +// // // // // // // // +// LINKS +// +// OpenLiberty.io site links: +// link:{url-prefix}/guides/maven-intro.html[Maven] +// +// Off-site links: +//link:https://openapi-generator.tech/docs/installation#jar[Download Instructions] +// +// IMAGES +// +// Place images in ./img/blog/ +// Use the syntax: +// image::/img/blog/log4j-rhocp-diagrams/current-problem.png[Logging problem diagram,width=70%,align="center"] +// // // // // // // // + +== Develop and run your apps using 26.0.0.1 + +If you're using link:{url-prefix}/guides/maven-intro.html[Maven], include the following in your `pom.xml` file: + +[source,xml] +---- + + io.openliberty.tools + liberty-maven-plugin + 3.11.5 + +---- + +Or for link:{url-prefix}/guides/gradle-intro.html[Gradle], include the following in your `build.gradle` file: + +[source,gradle] +---- +buildscript { + repositories { + mavenCentral() + } + dependencies { + classpath 'io.openliberty.tools:liberty-gradle-plugin:3.9.6' + } +} +apply plugin: 'liberty' +---- +// // // // // // // // +// In the preceding section: +// Replace the Maven `3.11.5` with the latest version of the plugin: https://search.maven.org/artifact/io.openliberty.tools/liberty-maven-plugin +// Replace the Gradle `3.9.5` with the latest version of the plugin: https://search.maven.org/artifact/io.openliberty.tools/liberty-gradle-plugin +// TODO: Update GHA to automatically do the above. If the maven.org is problematic, then could fallback to using the GH Releases for the plugins +// // // // // // // // + +Or if you're using link:{url-prefix}/docs/latest/container-images.html[container images]: + +[source] +---- +FROM icr.io/appcafe/open-liberty +---- + +Or take a look at our link:{url-prefix}/start/[Downloads page]. + +If you're using link:https://plugins.jetbrains.com/plugin/14856-liberty-tools[IntelliJ IDEA], link:https://marketplace.visualstudio.com/items?itemName=Open-Liberty.liberty-dev-vscode-ext[Visual Studio Code] or link:https://marketplace.eclipse.org/content/liberty-tools[Eclipse IDE], you can also take advantage of our open source link:https://openliberty.io/docs/latest/develop-liberty-tools.html[Liberty developer tools] to enable effective development, testing, debugging and application management all from within your IDE. + +[link=https://stackoverflow.com/tags/open-liberty] +image::img/blog/blog_btn_stack.svg[Ask a question on Stack Overflow, align="center"] + +// // // // DO NOT MODIFY THIS COMMENT BLOCK // // // // +// Blog issue: https://github.com/OpenLiberty/open-liberty/issues/31793 +// Contact/Reviewer: Channyboy,navaneethsnair1 +// // // // // // // // +[#logging] +== Log Throttling + +Open Liberty Logging is introducing log throttling. Developers previously had no way to throttle or suppress high-volume messages. This new feature helps to prevent excessive log output when the same log events occur repeatedly within a short span of time. + +Throttling is enabled by default. While enabled, Liberty tracks each messageID using a sliding window. By default, any messageID that is repeated more than 1,000 times within a five-minute interval is suppressed. A throttle warning is logged when throttling begins. + +Log throttling can be configured to throttle messages based on the message or messageID by using the `throttleType` logging attribute. The number of messages allowed before throttling begins can be configured by using the `throttleMaxMessagesPerWindow` attribute. + +Log Throttling is disabled by setting `throttleMaxMessagesPerWindow` to `0`. + +Currently, these attributes can be configured as follows: + +* In `server.xml`: ++ +[source,xml] +---- + +---- + +* In `bootstrap.properties`: ++ +[source,properties] +---- +com.ibm.ws.logging.throttle.max.messages.per.window=5000 +com.ibm.ws.logging.throttle.type=messageID +---- + +* In `server.env`: ++ +[source,env] +---- +WLP_LOGGING_THROTTLE_MAX_MESSAGES_PER_WINDOW=5000 +WLP_LOGGING_THROTTLE_TYPE=messageID +---- + +=== Difference between message and messageID: + +Consider the following example of a log event: `TEST0111I: Hello World!`. + +When `throttleType` is set to `messageID`, throttling is exclusively applied based on the number of occurrences of the messageID. In this example, `TEST0111I` is used for throttling. + +When `throttleType` is set to `message`, throttling is applied to the entire message. Any variation in the message content is tracked separately. In this example, `TEST0111I: Hello World!` is used for throttling. + +// DO NOT MODIFY THIS LINE. + + +[#bugs] +== Notable bugs fixed in this release + + +We’ve spent some time fixing bugs. The following sections describe just some of the issues resolved in this release. If you’re interested, here’s the link:https://github.com/OpenLiberty/open-liberty/issues?q=label%3Arelease%3A26001+label%3A%22release+bug%22[full list of bugs fixed in 26.0.0.1]. + +* link:https://github.com/OpenLiberty/open-liberty/issues/33686[NullPointerException occurs in SocketRWChannelSelector] +* link:https://github.com/OpenLiberty/open-liberty/issues/33617[IBM WebSphere Application Server Liberty is affected by cross-site scripting (CVE-2025-12635 CVSS 5.4)] +* link:https://github.com/OpenLiberty/open-liberty/issues/33609[wlp passwords keys may fail to decode] +* link:https://github.com/OpenLiberty/open-liberty/issues/33571[mpOpenAPI does not correctly merge x-ibm-zcon-roles-allowed] +* link:https://github.com/OpenLiberty/open-liberty/issues/33561[Server package --include=minify does not include Liberty's FIPS properties file] + +// // // // // // // // +// In the preceding section: +// For this section ask either Michal Broz or Tom Evans or the #openliberty-release-blog channel for Notable bug fixes in this release. +// Present them as a list in the order as provided, linking to the issue and providing a short description of the bug and the resolution. +// If the issue on Github is missing any information, leave a comment in the issue along the lines of: +// "@[issue_owner(s)] please update the description of this `release bug` using the [bug report template](https://github.com/OpenLiberty/open-liberty/issues/new?assignees=&labels=release+bug&template=bug_report.md&title=)" +// Feel free to message the owner(s) directly as well, especially if no action has been taken by them. +// For inspiration about how to write this section look at previous blogs e.g- 20.0.0.10 or 21.0.0.12 (https://openliberty.io/blog/2021/11/26/jakarta-ee-9.1.html#bugs) +// // // // // // // // + + +// // // // // // // // +// If there were updates to guides since last release, keep the following, otherwise remove section. +// Check with Gilbert Kwan, otherwise Michal Broz or YK Chang +// // // // // // // // +[#guides] +== New and updated guides since the previous release +As Open Liberty features and functionality continue to grow, we continue to add link:https://openliberty.io/guides/?search=new&key=tag[new guides to openliberty.io] on those topics to make their adoption as easy as possible. + +Two new guides have been published under the link:https://openliberty.io/guides/#observability[Observability] category: + +* link:https://openliberty.io/guides/microprofile-telemetry-grafana-automatic.html[Enabling observability in microservices with traces, metrics, and logs using OpenTelemetry and Grafana] +* link:https://openliberty.io/guides/microprofile-telemetry-grafana-custom.html[Adding custom tracing and metrics for microservice observability using OpenTelemetry and Grafana] + + +// // // // // // // // +// In the following section, list any new guides, or changes/updates to existing guides. +// The following is an example of how the list can be structured (similar to the bugs section): +// * link:{url-prefix}/guides/[new/updated guide].html[Guide Title] +// ** Description of the guide or the changes made to the guide. +// // // // // // // // + + +== Get Open Liberty 26.0.0.1 now + +Available through <>. diff --git a/.github/blog_translation_automation/translation_examples/ja/2024-12-16-jblog-two-year-celebration copy.adoc b/.github/blog_translation_automation/translation_examples/ja/2024-12-16-jblog-two-year-celebration copy.adoc new file mode 100755 index 000000000..1b0577578 --- /dev/null +++ b/.github/blog_translation_automation/translation_examples/ja/2024-12-16-jblog-two-year-celebration copy.adoc @@ -0,0 +1,168 @@ +--- +layout: post +title: The Open Liberty Japanese blog celebrates its second anniversary +# Do NOT change the categories section +categories: blog +author_picture: https://avatars3.githubusercontent.com/una-tapa +author_github: https://github.com/una-tapa +seo-title: The Open Liberty Japanese blog celebrates its second anniversary +seo-description: The Open Liberty Japanese blog has reached its second anniversary since its launch in 2022. We will introduce the most popular articles to date and highlight the contributors who have supported us. +blog_description: The Open Liberty Japanese blog has reached its second anniversary since its launch in 2022. We will introduce the most popular articles to date and highlight the contributors who have supported us +open-graph-image: https://openliberty.io/img/twitter_card.jpg +open-graph-image-alt: Open Liberty Logo +blog-available-in-languages: +- lang: ja + path: /ja/blog/2024/12/16/jblog-two-year-celebration.html +additional_authors: +- name: Takakiyo Tanaka + github: https://github.com/takakiyo + image: https://avatars.githubusercontent.com/takakiyo +- name: Tsuyoshi Baba + github: https://github.com/babatch + image: https://avatars.githubusercontent.com/babatch +- name: Kaori Asada + github: https://github.com/kaori-asa + image: https://avatars.githubusercontent.com/kaori-asa +- name: Atsushi Kurokawa + github: https://github.com/akurokawa + image: https://avatars.githubusercontent.com/akurokawa +- name: Miyuka Nishio + github: https://github.com/MiyukaNishio + image: https://avatars.githubusercontent.com/MiyukaNishio +--- += The Open Liberty Japanese blog celebrates its second anniversary +Hiroko Takamiya + +:imagesdir: / +:url-prefix: +:url-about: / +//Blank line here is necessary before starting the body of the post. + +Launched in 2022, the Open Liberty Japanese blog was created to meet the increasing demand for localized Open Liberty content in Japan. +As we mark its second anniversary, we reflect on the highlights and successes of our journey. This article showcases our most popular posts, which have resonated deeply with our audience. + +We also extend our heartfelt thanks to the dedicated contributors and technical experts whose tireless efforts have been pivotal in shaping this multilingual platform. +Their work not only embodies the spirit of collaboration in the open-source community but also enriches our global exchange of knowledge. + +* <<#ranking, Popular Article Rankings>> + +* <<#contributors, Introducing Our Contributors>> + +* <<#backend, Meet the Team Behind the Blog>> + +* <<#reflect, Reflecting on a successful two years>> + +[#ranking] + +== Popular Article Rankings + +The articles introducing technical details of the latest releases and new features have garnered attention from readers. Particularly popular are articles that provide detailed explanations of specific settings and new support features, such as +"link:https://openliberty.io/blog/2023/03/07/23.0.0.2.html[Test database connections and set server stop time out in Open Liberty 23.0.0.2]" and "link:https://openliberty.io/blog/2024/06/18/24.0.0.6.html[Faster startup for Spring Boot 3.x applications and more in 24.0.0.6]". + +Additionally, articles offering practical guides, such as 'Learn to Develop Cloud-Native Java Applications and Deploy to Kubernetes Environments Using Open Liberty Guides', are also attracting a lot of interest. +These articles serve as a valuable resource for developers looking to effectively utilize the latest technologies and tools. + +The link in the ranking goes to the English articles. For the translated articles, please see the `Post available in languages:` heading in each article. + +=== Popular Articles in the Past 3 Months + +No.1: link:https://openliberty.io/blog/2023/03/07/23.0.0.2.html[Test database connections and set server stop time out in Open Liberty 23.0.0.2] + +No.2: link:https://openliberty.io/blog/2023/04/04/23.0.0.3.html[Jakarta EE 10, MicroProfile 6, and Java SE 20 support in Open Liberty 23.0.0.3] + +No.3: link:https://openliberty.io/blog/2024/06/18/24.0.0.6.html[Faster startup for Spring Boot 3.x applications and more in 24.0.0.6] + +No.4: link:https://openliberty.io/blog/2023/10/17/23.0.0.10.html[Support for Java 21 in Open Liberty 23.0.0.10] + +No.5: link:https://openliberty.io/blog/2024/03/26/24.0.0.3.html[Default verbose garbage collection and OpenID Connect back-channel logout support in 24.0.0.3] + +No.6: link:https://openliberty.io/ja/blog/2022/09/01/openliberty-guides-in-japanese.html[Learn how to develop cloud-native Java applications and deploy them to Kubernetes environments using the Open Liberty Guides. (Japanese only)] + +No.7: link:https://openliberty.io/blog/2023/09/19/23.0.0.9.html[Spring Boot 3.0 support and new security capabilities in Open Liberty 23.0.0.9] + +No.8: link:https://openliberty.io/blog/2022/10/25/22.0.0.11.html[Java SE 19 and distributed security cache support in Open Liberty 22.0.0.11] + +No.9: link:https://openliberty.io/blog/2023/05/02/23.0.0.4.html[ARM64 container images in Open Liberty 23.0.0.4] + +No.10: link:https://openliberty.io/blog/2023/12/12/23.0.0.12.html[MicroProfile 6.1, Liberty Tools updates, and more in Open Liberty 23.0.0.12] + +=== Popular Articles in the Past Year + +No.1: link:https://openliberty.io/blog/2023/03/07/23.0.0.2.html[Test database connections and set server stop time out in Open Liberty 23.0.0.2] + +No.2: link:https://openliberty.io/blog/2022/10/25/22.0.0.11.html[Java SE 19 and distributed security cache support in Open Liberty 22.0.0.11] + +No.3: link:https://openliberty.io/blog/2023/09/19/23.0.0.9.html[Spring Boot 3.0 support and new security capabilities in Open Liberty 23.0.0.9] + +No.4: link:https://openliberty.io/ja/blog/2022/09/01/openliberty-guides-in-japanese.html[Learn how to develop cloud-native Java applications and deploy them to Kubernetes environments using the Open Liberty Guides. (Japanese only)] + + +No.5: link:https://openliberty.io/blog/2023/05/02/23.0.0.4.html[ARM64 container images in Open Liberty 23.0.0.4] + +No.6: link:https://openliberty.io/blog/2023/10/17/23.0.0.10.html[Support for Java 21 in Open Liberty 23.0.0.10] + +No.7: link:https://openliberty.io/blog/2022/11/22/22.0.0.12.html[CVE and many other notable bug fixes in Open Liberty 22.0.0.12] + +No.8: link:https://openliberty.io/blog/2024/03/26/24.0.0.3.html[Default verbose garbage collection and OpenID Connect back-channel logout support in 24.0.0.3] + +No.9: link:https://openliberty.io/blog/2023/04/04/23.0.0.3.html[Jakarta EE 10, MicroProfile 6, and Java SE 20 support in Open Liberty 23.0.0.3] + +No.10: link:https://openliberty.io/blog/2023/05/30/23.0.0.5.html[MicroProfile 6 and Jakarta EE 10 guide updates in Open Liberty 23.0.0.5] + + +[#contributors] +== Introducing Our Contributors + +We've received a few words from our contributors, all of whom volunteered their time beyond their day jobs. + +link:https://www.linkedin.com/in/miyuka-nishio[Miyuka Nishio] + +Hello, I’m Miyuka Nishio, and I’m currently in my second year at IBM. I serve as a technical sales specialist for WebSphere Liberty and Open Liberty, focusing on pre-sales activities and community management. My background was primarily in accounting before I joined IBM, so I had little experience with Java development. However, my manager encouraged me to get involved in translating the Open Liberty blog as part of my professional development. This opportunity has enabled me to learn about Liberty's new features and strengthen my engineering skills. There’s still much for me to learn, but I am eager to continue growing as an engineer and contributing meaningfully to the Open Liberty project. + +link:https://www.linkedin.com/in/tsuyoshi-baba-babatch[Tsuyoshi Baba] + +I joined IBM Japan in 1998 and began working with WebSphere soon after the release of WebSphere Application Server V1.1 in Japan that same year. Initially, I was involved in product marketing before transitioning to technical sales, where I supported our business partners. In 2022, I returned to IBM Japan and now focus on Application Modernization, including WebSphere, as a technical sales specialist. + +I find the top article rankings very intriguing. It seems timeless that once someone gets an application server running, the next step is always to connect it to a database and start building applications. Announcements about new versions of Java EE/Jakarta EE, Java SE, and MicroProfile are also popular. And of course, Spring continues to be a strong presence! The popularity of articles about ARM64 containers might be due to the increasing number of developers using the new Apple Silicon-equipped Macs—I'm one of them too. + +I look forward to continuing to support the evolution of Open Liberty/WebSphere Liberty! + +link:https://www.linkedin.com/in/atsushi-kurokawa/?originalSubdomain=jp[Atsushi Kurokawa] + +I joined IBM Japan in 2002 and worked extensively in technical sales for WebSphere Application Server and Rational, providing proposals, consulting, and system development in the delivery department. In 2024, I took on responsibilities for Liberty, impressed by its lightweight architecture and zero-migration capabilities, and have been recommending migration to our clients. + +My expertise is in DevOps, particularly in the development domain. I am also a registered smaller enterprise consultant in Japan. For leisure, I enjoy playing the saxophone. + +link:https://www.linkedin.com/in/kaori-asada-680355142/[Kaori Asada] + +Despite not being a member of the technical sales team, Kaori jumped in at the launch of our blog and took on numerous translations. Her contributions truly highlighted the beauty of open source, where anyone can contribute. Without Kaori's help, it would have been challenging to overcome the initial stages of our blog. Thank you, Kaori! + +link:https://www.linkedin.com/in/takakiyo[Takakiyo Tanaka] + +Mr. Tanaka, affectionately known as 'Takakiyo-san' by his colleagues and the technical community,has been a technical sales specialist at IBM Japan for over 20 years, focusing primarily on the WebSphere Application Server and Java technologies. He has delivered numerous presentations at various community events on Java and enterprise Java technologies. His first blog post "link:https://openliberty.io/ja/blog/2022/09/01/openliberty-guides-in-japanese.html[Learn how to develop cloud-native Java applications and deploy them to Kubernetes environments using the Open Liberty Guides. (Japanese only)]"" consistently ranks among the top 10 most popular articles. He has also started translating monthly blog articles, playing a pivotal role in the success of this blog. Mr. Tanaka's passion for Open Liberty is well recognized in the community and can also be seen on link:https://qiita.com/TTakakiyo[Japan's technical website.] + + +[#backend] +== Meet the team behind the blog + +link:https://openliberty.io/blog/2021/12/10/DavidMueller_MeetTheTeam.html[David Mueller] + +David is the leader of the Liberty documentation team. He's always available to consult on anything related to the Liberty blog articles. + +link:https://github.com/kinueng[Kin Ueng], link:https://github.com/steven1046[Steven Zvonek], link:https://github.com/OpenLiberty/blogs/pulls/natalie-bernhard[Natalie Bernhard] : + +Kin, Steven, and Natalie are the key figures who have set up the blog posting system and built multilingual cross-links. They have also created Japanese banners and buttons! + +link:https://github.com/yeekangc[Yee-Kang Chang], link:https://github.com/gljrobinson[Grace Robinson], link:https://github.com/Emily-Jiang[Emily Jiang] + +YK, as an Architect in Developer Advocacy, and Emily and Grace, as Java Champions, are supporting the Japanese Open Liberty blog as part of their worldwide community activities. + +[#reflect] +== Reflecting on a successful two years + +As we celebrate two years of the Open Liberty Japanese blog, it's clear that our community-driven approach has been a key factor in its success. The popularity of our technical articles demonstrates a strong appetite for localized content that addresses the specific needs and interests of Japanese developers. We're grateful for the opportunity to continue serving this community and look forward to building on the momentum we've established, with a continued focus on delivering high-quality, relevant content that supports the growth and development of Open Liberty users in Japan and beyond. + +[#feedback] +== We welcome your feedback + +Let us know what you think on link:https://groups.io/g/openliberty[our mailing list]. If you hit a problem, link:https://stackoverflow.com/questions/tagged/open-liberty[post a question on StackOverflow]. If you hit a bug, link:https://github.com/OpenLiberty/open-liberty/issues[please raise an issue]. diff --git a/.github/blog_translation_automation/translation_examples/ja/2024-12-16-jblog-two-year-celebration.adoc b/.github/blog_translation_automation/translation_examples/ja/2024-12-16-jblog-two-year-celebration.adoc new file mode 100755 index 000000000..ff3450c56 --- /dev/null +++ b/.github/blog_translation_automation/translation_examples/ja/2024-12-16-jblog-two-year-celebration.adoc @@ -0,0 +1,223 @@ +--- +layout: post +title: Open Libertyの日本語ブログが2呚幎を迎えたした +# Do NOT change the categories section +categories: blog +author_picture: https://avatars3.githubusercontent.com/una-tapa +author_github: https://github.com/una-tapa +seo-title: Open Libertyの日本語ブログが2呚幎を迎えたした +seo-description: Open Libertyの日本語ブログが2022幎にスタヌトしおから2呚幎を迎えたした。これたでの人気蚘事ランキングず、貢献しおくれたコントリビュヌタヌを玹介したす。 +blog_description: Open Libertyの日本語ブログが2022幎にスタヌトしおから2呚幎を迎えたした。これたでの人気蚘事ランキングず、貢献しおくれたコントリビュヌタヌを玹介したす。 +open-graph-image: https://openliberty.io/img/twitter_card.jpg +open-graph-image-alt: Open Liberty Logo +blog-available-in-languages: +- lang: en + path: /blog/2024/12/16/jblog-two-year-celebration.html +additional_authors: +- name: 高宮 裕子 + github: https://github.com/una-tapa + image: https://avatars.githubusercontent.com/una-tapa +- name: 田侭 孝枅 + github: https://github.com/takakiyo + image: https://avatars.githubusercontent.com/takakiyo +- name: 銬堎 剛 + github: https://github.com/babatch + image: https://avatars.githubusercontent.com/babatch +- name: 浅田 かおり + github: https://github.com/kaori-asa + image: https://avatars.githubusercontent.com/kaori-asa +- name: 黒川 敊 + github: https://github.com/akurokawa + image: https://avatars.githubusercontent.com/akurokawa +- name: 西尟実優銙 + github: https://github.com/MiyukaNishio + image: https://avatars.githubusercontent.com/MiyukaNishio +--- + += Open Libertyの日本語ブログが2呚幎を迎えたした +Hiroko Takamiya + +:imagesdir: / +:url-prefix: +:url-about: / +//Blank line here is necessary before starting the body of the post. + +2022幎にスタヌトした圓ブログは、このたび2呚幎を迎えたしたこれもひずえに、読者の皆さた、そしお玠晎らしいコントリビュヌタヌの皆さたのおかげです。本圓にありがずうございたす。 + +圓ブログでは、これたで日本語ナヌザヌにずっお興味を持っおいただけそうな有益な情報をお届けしおきたした。この節目に、今たででアクセス数が倚かった蚘事のランキングず、日本語ブログを支えおくださっおいるコントリビュヌタヌの方々をご玹介したいず思いたす。 + +* <<#ranking, 人気蚘事ランキング>> + +* <<#contributors, コントリビュヌタヌのご玹介>> + +* <<#backend, ブログを支えるチヌム>> + +* <<#runs, 知識を力にLibertyを䜓隓しよう>> + +[#ranking] + +== 人気蚘事ランキング + +Open Libertyの日本語ブログでは、最新リリヌスに関する技術的な詳现や新機胜の玹介が倚くの読者から泚目を集めおいたす。特に、**「Open Liberty 23.0.0.2でのデヌタベヌス接続のテストずサヌバヌ停止タむムアりトの蚭定」や「Open Liberty 23.0.0.9におけるSpring Boot 3.0のサポヌトず新しいセキュリティ機胜」**など、具䜓的な蚭定方法や新たなサポヌト内容を詳しく解説した蚘事が人気です。 + +たた、**「Open Libertyのガむドを䜿っおクラりドネむティブのJavaアプリケヌション開発ずKubernetes環境ぞのデプロむメントに぀いお孊がう」**のように、実践的なガむドを提䟛する蚘事も倚くの関心を集めおいたす。これらの蚘事は、開発者が最新の技術やツヌルを効果的に掻甚するための貎重な情報源ずなっおいたす。 + +党䜓ずしお、Open Libertyの日本語ブログは、リリヌス情報や技術ガむドを通じお、開発者コミュニティにずっお重芁なリ゜ヌスずなっおおり、今埌も倚くの読者からの期埅が寄せられおいたす。 + +=== 過去3か月の人気蚘事 + +第1䜍link:https://openliberty.io/ja/blog/2023/03/26/23.0.0.2.html[Open Liberty 23.0.0.2でのデヌタベヌス接続のテストずサヌバヌ停止タむムアりトの蚭定] + +第2䜍link:https://openliberty.io/ja/blog/2023/04/04/23.0.0.3.html[Open Liberty 23.0.0.3では、Jakarta EE 10, MicroProfile 6, および Java SE 20 のサポヌトが远加されたした] + +第3䜍link:https://openliberty.io/ja/blog/2024/06/18/24.0.0.6.html[24.0.0.6 での Spring Boot 3.x の起動高速化] + +第4䜍link:https://openliberty.io/ja/blog/2023/10/17/23.0.0.10.html[Open Liberty 23.0.0.10でJava 21をサポヌト] + +第5䜍link:https://openliberty.io/ja/blog/2024/03/26/24.0.0.3.html[24.0.0.3におけるデフォルトの冗長ガベヌゞコレクションずOpenID Connectのバックチャネルログアりトのサポヌト] + +第6䜍link:https://openliberty.io/ja/blog/2022/09/01/openliberty-guides-in-japanese.html[Open Libertyのガむドを䜿っおクラりドネむティブのJavaアプリケヌション開発ずKubernetes環境ぞのデプロむメントに぀いお孊がう] + +第7䜍link:https://openliberty.io/ja/blog/2023/09/19/23.0.0.9.html[Open Liberty 23.0.0.9におけるSpring Boot 3.0のサポヌトず新しいセキュリティ機胜] + +第8䜍link:https://openliberty.io/ja/blog/2023/01/30/22.0.0.11.html[Open Liberty 22.0.0.11 での Java SE 19 および分散セキュリティヌ・キャッシュのサポヌト] + +第9䜍link:https://openliberty.io/ja/blog/2023/05/02/23.0.0.4.html[Open Liberty 23.0.0.4では、ARM64アヌキテクチャのコンテナ・むメヌゞが利甚可胜になりたした] + +第10䜍link:https://openliberty.io/ja/blog/2023/12/12/23.0.0.12.html[Open Liberty 23.0.0.12におけるMicroProfile 6.1サポヌト, Liberty Toolsアップデヌト, 他] + +=== 過去1幎の人気蚘事 + +第1䜍link:https://openliberty.io/ja/blog/2023/03/26/23.0.0.2.html[Open Liberty 23.0.0.2でのデヌタベヌス接続のテストずサヌバヌ停止タむムアりトの蚭定] + +第2䜍link:https://openliberty.io/ja/blog/2023/01/30/22.0.0.11.html[Open Liberty 22.0.0.11 での Java SE 19 および分散セキュリティヌ・キャッシュのサポヌト] + +第3䜍link:https://openliberty.io/ja/blog/2023/09/19/23.0.0.9.html[Open Liberty 23.0.0.9におけるSpring Boot 3.0のサポヌトず新しいセキュリティ機胜] + +第4䜍link:https://openliberty.io/ja/blog/2022/09/01/openliberty-guides-in-japanese.html[Open Libertyのガむドを䜿っおクラりドネむティブのJavaアプリケヌション開発ずKubernetes環境ぞのデプロむメントに぀いお孊がう] + +第5䜍link:https://openliberty.io/ja/blog/2023/05/02/23.0.0.4.html[Open Liberty 23.0.0.4では、ARM64アヌキテクチャのコンテナ・むメヌゞが利甚可胜になりたした] + +第6䜍link:https://openliberty.io/ja/blog/2023/10/17/23.0.0.10.html[Open Liberty 23.0.0.10でJava 21をサポヌト] + +第7䜍link:https://openliberty.io/ja/blog/2023/01/31/22.0.0.12.html[Open Liberty 22.0.0.12における脆匱性ず䞻なバグの修正] + +第8䜍link:https://openliberty.io/ja/blog/2024/03/26/24.0.0.3.html[24.0.0.3におけるデフォルトの冗長ガベヌゞコレクションずOpenID Connectのバックチャネルログアりトのサポヌト] + +第9䜍link:https://openliberty.io/ja/blog/2023/04/04/23.0.0.3.html[Open Liberty 23.0.0.3では、Jakarta EE 10, MicroProfile 6, および Java SE 20 のサポヌトが远加されたした] + +第10䜍link:https://openliberty.io/ja/blog/2023/05/30/23.0.0.5.html[Open Liberty 23.0.0.5でMicroProfile 6ずJakarta EE 10のガむドを曎新] + + + +[#contributors] +== コントリビュヌタヌのご玹介 + +翻蚳蚘事や技術情報を提䟛しおくれおいるコントリビュヌタヌのみなさんから、䞀蚀いただいおきたした。 + +link:https://www.linkedin.com/in/miyuka-nishio[西尟実優銙さん] + +こんにちは、IBMに入瀟しお2幎目の西尟実優銙です。珟圚はWebSphere Libertyのテクニカルセヌルスずしお、プリセヌルス掻動やコミュニティ運営に携わっおいたす。 +IBMに入瀟前は䌚蚈孊を専門ずしおいたため、Java開発の経隓はほずんどありたせんでしたが、䞊叞からスキルアップの䞀環ずしおOpen Libertyのブログ翻蚳に参加する機䌚をいただきたした。 +この経隓を通じおLibertyの新機胜を孊び、たた技術者ずしおのスキルを身に぀けるこずができおいたす。 +ただただ孊ぶこずが倚いですが、今埌も技術者ずしお成長し、Open Libertyプロゞェクトに貢献できるよう努力しおいきたす。 + + +link:https://www.linkedin.com/in/tsuyoshi-baba-babatch[銬堎 剛さん] + +1998幎に日本アむ・ビヌ・゚ム株匏䌚瀟 (IBMJ) ぞ入瀟埌、同幎末の WebSphere Application Server V1.1 の日本での発衚から WebSphere に関わる。 +圓初は補品マヌケティング、その埌ビゞネスパヌトナヌ様向け技術営業に携わり、2010幎に日本アむ・ビヌ・゚ム システムズ・゚ンゞニアリング株匏䌚瀟 (ISE) ぞ出向。 +ISE では䞻にプロゞェクト・デリバリヌを経隓し、2022幎より IBMJ ぞ垰任しお App Modernization (WebSphere 含む) 技術営業。 + +䞊の人気蚘事ランキングがずおも興味深いです。 +アプリケヌション・サヌバヌを動かせるようになったら、次はたずデヌタベヌスず接続しおアプリケヌションを䜜りたいのはい぀の時代も倉わらないようですね。 +Java / Jakarta EE, Java SE, MicroProfile の新バヌゞョン察応のアナりンスも人気です。 +そしおやはり Spring 勢匷し! ですね。 +ARM64 コンテナの蚘事が人気なのは、やはり Apple Silicon 搭茉の新しい Mac で開発䜜業される方が増えおきおいるためでしょうか。私もその䞀人だったりしたす。 +これからも進化しおいく Open Liberty / WebSphere Liberty をよろしくお願いいたしたす! + +link:https://www.linkedin.com/in/atsushi-kurokawa/?originalSubdomain=jp[黒川敊さん] + +2002幎に日本IBMに入瀟し、WASやRationalの技術営業ずしお倚くのお客様ぞの提案、コンサルティング、たたデリバリヌ郚門でシステム開発に携わりたした。2024幎からLibertyを担圓するこずになり、軜量さずれロマむグレヌションに感動しお、お客様にマむグレヌションを勧めおいたす。link:https://qiita.com/blariver/items/f13e48aa91020e050631[WebSphereの歎史を振り返る (2024幎版)]の蚘事を執筆したした。 +専門領域はDevOps(特に開発領域です。䞭小䌁業蚺断士。趣味はサックスです。 + +link:https://www.linkedin.com/in/kaori-asada-680355142/[浅田かおりさん] + +浅田さんは、日本のOpen Libertyブログチヌムに所属されおないにもかかわらず、ブログ立ち䞊げ圓初に飛び入りで倚数の翻蚳を手掛けおくださいたした。 +そのおかげで、「誰でも貢献できるオヌプン゜ヌスの玠晎らしさ」を実感するこずができたした。浅田さんのご協力がなければブログの初期段階を乗り越えるこずは難しかったず思いたす。 +高宮が代筆させおいただきたした + +link:https://www.linkedin.com/in/takakiyo[田侭 孝枅さん] + +田䞭さんは、日本IBMでWebSphere Application Serverを䞭心ずしたテクニカルセヌルスを20幎以䞊担圓しおいたす。Java蚀語゚ンタヌプラむズJava技術を䞭心に各皮コミュニティなどでの講挔なども倚数行っおいたす。 + +田䞭さんの、第䞀回のブログ蚘事 link:https://openliberty.io/ja/blog/2022/09/01/openliberty-guides-in-japanese.html[Open Libertyのガむドを䜿っおクラりドネむティブのJavaアプリケヌション開発ずKubernetes環境ぞのデプロむメントに぀いお孊がう] +は、ランキングでも垞にトップの人気蚘事です。月々のブログ蚘事の翻蚳も始められお、このブログの立圹者的な存圚です。 + +田䞭さんのOpen Libertyぞの情熱は、 +link:https://qiita.com/TTakakiyo[Qiita技術蚘事執筆䞀芧]でも芋おいただけたす。高宮が代筆させおいただきたした + +[#backend] +== ブログを支えるチヌム + +この蚘事を執筆しおいる高宮です。米ノヌスカロラむナのIBMのラボで働いおいたす。日本のナヌザヌの皆さたから「Libertyに関する技術的な蚘事を日本語で読めたら嬉しい」ずいう声をいただき、月に䞀床のLibertyブログを日本語化しようずいうアむデアが生たれたした。 + +その実珟に向けお、倚蚀語察応の仕組みをコツコツず远加しおくれたり、技術や時間を割いおブログをサポヌトしおくれたり、さらに、日本のナヌザヌの重芁性を熱意を持っお䌝えおくれたメンバヌがいたす。この堎を借りお、そんなブログを支えるチヌムをご玹介させおいただきたす。 + +link:https://openliberty.io/blog/2021/12/10/DavidMueller_MeetTheTeam.html[David Mueller]: +Davidはドキュメンテヌションチヌムのリヌダヌで、蚘事に関するこずはどんな盞談にも応じおくれる頌れる存圚です。 + +link:https://github.com/kinueng[Kin Ueng], link:https://github.com/steven1046[Steven Zvonek], link:https://github.com/OpenLiberty/blogs/pulls/natalie-bernhard[Natalie Bernhard] : +Kin, Steven, Natalieは、ブログ投皿の仕組みや倚蚀語察応の盞互リンクを構築しおくれた立圹者たちです。たた、日本語のバナヌやボタンも䜜成しおくれたした。 + +link:https://github.com/yeekangc[Yee-Kang Chang], link:https://github.com/gljrobinson[Grace Robinson], link:https://github.com/Emily-Jiang[Emily Jiang] +YKはデベロッパヌ・アドボカシヌのアヌキテクトずしお、EmilyずGraceはJavaチャンピオンずしお、それぞれの圹割を通じおワヌルドワむドのコミュニティ掻動の䞀環ずしお、Open Libertyの日本語ブログを支えおくれおいたす。 + +[#run] +== 知識を力にLibertyを䜓隓しよう + +Libertyの日本語ブログ蚘事を参考に、ぜひLibertyを䜓隓しおみおください。Libertyは、さたざたな開発スタむルに柔軟に察応しおいたす。 + +たた、Open Libertyでは、読者の皆さたからのコントリビュヌションも倧歓迎です。「こんなこずを詊しおみたよ」ずシェアしたいトピックがありたしたら、ぜひブログのコントリビュヌタヌたで声をかけおください。 + +それでは匕き続きOpen Libertyをよろしくお願いいたしたす + +link:{url-prefix}/guides/maven-intro.html[Maven]での開発は、`pom.xml` ファむルに以䞋を含めたす。 + +[source,xml] +---- + + io.openliberty.tools + liberty-maven-plugin + 3.10.3 + +---- + +link:{url-prefix}/guides/gradle-intro.html[Gradle] をお䜿いの堎合は、`build.gradle` ファむルに次の内容を含めたす。 + +[source,gradle] +---- +buildscript { + repositories { + mavenCentral() + } + dependencies { + classpath 'io.openliberty.tools:liberty-gradle-plugin:3.8.3' + } +} +apply plugin: 'liberty' +---- + +たたは、link:{url-prefix}/docs/latest/container-images.html[コンテナ むメヌゞ] を䜿甚しおいる堎合は、䞋蚘のようにむメヌゞを入手できたす。 + +[source] +---- +FROM icr.io/appcafe/open-liberty +---- + +link:{url-prefix}/start/[ダりンロヌド・ペヌゞ]も䜵せおご芧ください。 + +link:https://plugins.jetbrains.com/plugin/14856-liberty-tools[IntelliJ IDEA]、link:https://marketplace.visualstudio.com/items?itemName=Open-Liberty.liberty-dev-vscode-ext[Visual Studio Code]、たたは link:https://marketplace.eclipse.org/content/liberty-tools[Eclipse IDE]で開発されおいる堎合は、オヌプン゜ヌスの link:https://openliberty.io/docs/latest/develop-liberty-tools.html[Liberty 開発者ツヌル] を掻甚しお、IDE 内から効果的な開発、テスト、デバッグ、アプリケヌション管理をお勧めしたす。 + +[link=https://stackoverflow.com/tags/open-liberty] +image::img/blog/blog_btn_stack_ja.svg[Ask a question on Stack Overflow, align="center"] diff --git a/.github/blog_translation_automation/translation_examples/ja/2025-03-25-open-liberty-cloud-hosted-guides-multi-languages.adoc b/.github/blog_translation_automation/translation_examples/ja/2025-03-25-open-liberty-cloud-hosted-guides-multi-languages.adoc new file mode 100755 index 000000000..4fd9c95cc --- /dev/null +++ b/.github/blog_translation_automation/translation_examples/ja/2025-03-25-open-liberty-cloud-hosted-guides-multi-languages.adoc @@ -0,0 +1,80 @@ +--- +layout: post +title: "あなたの蚀語で Open Liberty を孊がうクラりドホスト型ガむドの倚蚀語サポヌト" +# Do NOT change the categories section +categories: blog +author_picture: https://avatars3.githubusercontent.com/shin19991207 +author_github: https://github.com/shin19991207 +seo-title: あなたの蚀語で Open Liberty を孊がうクラりドホスト型ガむドの倚蚀語サポヌト - OpenLiberty.io +seo-description: Skills Network Labs の Open Liberty クラりドホスト型ガむドは、機械翻蚳に察応し、開発者は蚀語を簡単に切り替えお、お奜みの蚀語で孊習できるようになりたした。 +blog_description: "Skills Network Labs の Open Liberty クラりドホスト型ガむドは、機械翻蚳に察応し、開発者は蚀語を簡単に切り替えお、お奜みの蚀語で孊習できるようになりたした。" +open-graph-image: https://openliberty.io/img/twitter_card.jpg +open-graph-image-alt: Open Liberty Logo +additional_authors: +- name: 西尟 実優銙 (翻蚳) + github: https://github.com/MiyukaNishio + image: https://avatars.githubusercontent.com/MiyukaNishio +blog-available-in-languages: +- lang: en + path: /blog/2025/03/25/open-liberty-cloud-hosted-guides-multi-languages.html +--- += あなたの蚀語で Open Liberty を孊がうクラりドホスト型ガむドの倚蚀語サポヌト +Morgan Chang +:imagesdir: / +:url-prefix: +:url-about: / +//Blank line here is necessary before starting the body of the post. + +Skills Network 䞊の Open Liberty クラりドホスト型ガむドが、耇数の蚀語に察応したしたこの新機胜により、お奜みの蚀語で Open Liberty のハンズオンガむドを参照し、 MicroProfile や Jakarta EE API を孊習できるようになりたした。Open Liberty を初めおご利甚になる方でも、スキルを広げたい方でも、ご自身に最適な蚀語のガむドに簡単にアクセスできたす。 + +== 今すぐ詊しおみたしょう + +新しい蚀語遞択機胜により、ワンクリックで蚀語を切り替えるこずができたす。 + +クラりドホスト型ガむドにアクセスするには、たずlink:{url-prefix}/guides/[ガむドの党コレクション]を閲芧しおください。 ガむドを遞択したら、ガむドのコヌドのペむン内にある **Run in cloud** ボタンをクリックしお開きたす以䞋のスクリヌンショットを参照。 + +[.img_border_light] +image::/img/blog/blog-2168-guide.png[Guide sample,width=70%,align="center"] + +クラりドホスト環境でガむドが開いたら、蚀語遞択メニュヌから蚀語を倉曎できたす。ガむドパネルの右䞊にある image:/img/blog/language-icon.svg[change language icon] *Change Language* ボタンをクリックするず、蚀語オプションが衚瀺されたす。 + +[.img_border_light] +image::img/blog/SNL-change-language-button.png[Skills Network Labs change language button,width=70%,align="center"] + +利甚可胜なオプションから、ご垌望の蚀語を遞択しおください。ガむドの内容は自動的に翻蚳されたす。 + +[.img_border_light] +image::img/blog/SNL-language-menu.png[Skills Network Labs language menu,width=70%,align="center"] + +今すぐ、あなたの蚀語でハンズオン孊習をお楜しみください + +== 察応蚀語 + +珟圚、蚀語遞択メニュヌでは以䞋の蚀語がサポヌトされおいたす。 + +- English (英語) +- Bahasa Indonesia (むンドネシア語) +- Deutsch (ドむツ語) +- Español (スペむン語) +- Français (フランス語) +- Italiano (むタリア語) +- Magyar (ハンガリヌ語) +- Nederlands (オランダ語) +- Polski (ポヌランド語) +- Português (ポルトガル語) +- Svenska (スりェヌデン語) +- TÃŒrkçe (トルコ語) +- ΕλληΜικά (ギリシャ語) +- Қазақ тілі (カザフ語) +- РусскОй (ロシア語) +- УкраїМська (りクラむナ語) +- العرؚية (アラビア語) +- à€¹à€¿à€šà¥à€Šà¥€ (ヒンディヌ語) +- à¹„àž—àž¢ (タむ語) +- 한국얎 (韓囜語) +- äž­æ–‡ (䞭囜語 - 簡䜓字) +- 日本語 (Japanese) + +== フィヌドバックをお埅ちしおおりたす + +各クラりドホスト型ガむドの最埌にある **Summary** セクションから、ガむドのご利甚䜓隓に぀いおのアンケヌトにご回答いただけたす。ぜひ、あなたのフィヌドバックをお聞かせください diff --git a/.github/blog_translation_automation/translation_examples/ja/2025-11-04-25.0.0.11.adoc b/.github/blog_translation_automation/translation_examples/ja/2025-11-04-25.0.0.11.adoc new file mode 100755 index 000000000..bd320b424 --- /dev/null +++ b/.github/blog_translation_automation/translation_examples/ja/2025-11-04-25.0.0.11.adoc @@ -0,0 +1,165 @@ +--- +layout: post +title: "25.0.0.11 における泚目すべきバグ修正" +# Do NOT change the categories section +categories: blog +author_picture: https://avatars3.githubusercontent.com/navaneethsnair1 +author_github: https://github.com/navaneethsnair1 +seo-title: 25.0.0.11 における泚目すべきバグ修正 - OpenLiberty.io +seo-description: この GA リリヌスには、安定性を向䞊させ、パフォヌマンスを改善し、よりスムヌズなナヌザヌ・゚クスペリ゚ンスを提䟛する重芁なバグ修正が含たれおいたす。 +blog_description: この GA リリヌスには、安定性を向䞊させ、パフォヌマンスを改善し、よりスムヌズなナヌザヌ・゚クスペリ゚ンスを提䟛する重芁なバグ修正が含たれおいたす。 +open-graph-image: https://openliberty.io/img/twitter_card.jpg +open-graph-image-alt: Open Liberty Logo +blog-available-in-languages: +- lang: en + path: /blog/2025/11/04/25.0.0.11.html +additional_authors: +- name: 高宮 裕子 (翻蚳) + github: https://github.com/una-tapa + image: https://avatars0.githubusercontent.com/una-tapa +--- += 25.0.0.11 における泚目すべきバグ修正 +Navaneeth S Nair +:imagesdir: / +:url-prefix: +:url-about: / + +この GA リリヌスには、安定性を向䞊させ、パフォヌマンスを改善し、よりスムヌズなナヌザヌ・゚クスペリ゚ンスを提䟛する重芁なバグ修正が含たれおいたす。 + +* <> + +link:{url-prefix}/blog/?search=release&search!=beta[以前の Open Liberty GA リリヌスのブログ投皿] もチェックしお䞋さい。 + +[#run] + +== 25.0.0.11 でアプリを開発しお実行する + +もし link:{url-prefix}/guides/maven-intro.html[Maven] を䜿甚しおいるなら、`pom.xml` に以䞋を含めたす。 + +[source,xml] +---- + + io.openliberty.tools + liberty-maven-plugin + 3.11.5 + +---- + +link:{url-prefix}/guides/gradle-intro.html[Gradle] を䜿甚しおいる堎合は、`build.gradle` ファむルに以䞋を含めたす。 + +[source,gradle] +---- +buildscript { + repositories { + mavenCentral() + } + dependencies { + classpath 'io.openliberty.tools:liberty-gradle-plugin:3.9.5' + } +} +apply plugin: 'liberty' +---- + +link:{url-prefix}/docs/latest/container-images.html[コンテナ・むメヌゞ] を䜿甚する堎合は以䞋です。 + +[source] +---- +FROM icr.io/appcafe/open-liberty +---- + +もしくは link:{url-prefix}/start/[ダりンロヌド・ペヌゞ] をご芧䞋さい。 + +link:https://plugins.jetbrains.com/plugin/14856-liberty-tools[IntelliJ IDEA]、link:https://marketplace.visualstudio.com/items?itemName=Open-Liberty.liberty-dev-vscode-ext[Visual Studio Code] たたは link:https://marketplace.eclipse.org/content/liberty-tools[Eclipse IDE] を䜿甚しおいる堎合、これらの IDE で効率的な開発・テスト・デバッグずアプリケヌション管理のすべおを実行するために、オヌプン゜ヌスの link:https://openliberty.io/docs/latest/develop-liberty-tools.html[Liberty Tools] を利甚するこずができたす。 + +[link=https://stackoverflow.com/tags/open-liberty] +image::img/blog/blog_btn_stack_ja.svg[Stack Overflow で質問する, align="center"] + +// // // // // // // // +// In the preceding section: +// If there were any CVEs addressed in this release, fill out the table. For the information, reference https://github.com/OpenLiberty/docs/blob/draft/modules/ROOT/pages/security-vulnerabilities.adoc. If it has not been updated for this release, reach out to Kristen Clarke or Michal Broz. +// Note: When linking to features, use the +// `link:{url-prefix}/docs/latest/reference/feature/someFeature-1.0.html[Some Feature 1.0]` format and +// NOT what security-vulnerabilities.adoc does (feature:someFeature-1.0[]) +// +// If there are no CVEs fixed in this release, replace the table with: +// "There are no security vulnerability fixes in Open Liberty [25.0.0.11]." +// // // // // // // // + +[#bugs] +== このリリヌスで修正された泚目すべきバグ + +このリリヌスでは、いく぀かのバグが修正されたした。以䞋のセクションでは、解決された䞻芁な問題のいく぀かを玹介したす。修正の完党なリストに぀いおは、link:https://github.com/OpenLiberty/open-liberty/issues?q=label%3Arelease%3A250011+label%3A%22release+bug%22[25.0.0.11 で修正されたバグの完党なリスト] をご芧ください。 + +* link:https://github.com/OpenLiberty/open-liberty/issues/33098[JSON レコヌドが改行で終わる堎合に `appsWriteJSON` が正しく動䜜しない] ++ +Logback ロギング・フレヌムワヌクを䜿甚し、ロガヌがメッセヌゞを JSON 圢匏に倉換する゚ンコヌダヌ䟋`co.elastic.logging.logback.EcsEncoder`を䜿甚しお `STDOUT` にロギング・むベントをルヌティングするように蚭定されおいる堎合、メッセヌゞ党䜓は _改行_ で終わりたす。 ++ +`appsWriteJson` 蚭定が true に蚭定されおいる OpenLiberty サヌバヌず組み合わせた堎合、期埅される動䜜は、Logback から出力される JSON が、通垞の Open Liberty JSON ログ出力の `message` 倀内にラップされないこずです。しかし、実際にはラップされおしたいたす。 + +* link:https://github.com/OpenLiberty/open-liberty/issues/32999[マルチパヌト・デヌタの非同期呌び出しにおける䟋倖を修正] ++ +MicroProfileRestClient の非同期で multipart/form-data を送信するず、以䞋の䟋倖が発生したす。 ++ +`java.util.concurrent.CompletionException: jakarta.ws.rs.ProcessingException: RESTEASY004655: Unable to invoke request: jakarta.ws.rs.WebApplicationException: Unexpected entity instance: org.jboss.resteasy.plugins.providers.multipart.ResteasyEntityPartBuilder$EntityPartImpl` + +* link:https://github.com/OpenLiberty/open-liberty/issues/32954[AutoDecompress が正しく動䜜しない] ++ +圧瞮されたボディを持぀ POST リク゚ストで、以䞋の䟋倖が発生したす。 ++ +`SRVE0216E: post body contains less bytes than specified by content-length` + +* link:https://github.com/OpenLiberty/open-liberty/issues/32908[蚭蚈䞊の問題英数字以倖の文字を含むサヌバヌ名での `server create` の動䜜が䞀貫しおいない] ++ +`./server create ...` を䜿甚しおサヌバヌを䜜成する際、サヌバヌ名に英数字以倖の文字ドキュメントで指定されおいない文字が含たれおいる堎合、動䜜が䞀貫しおいたせん。 ++ +䟋えば ++ +``` +./server create 'this£server' +``` ++ +は以䞋を返したす ++ +``` +CWWKE0005E: The runtime environment could not be launched. +CWWKE0012E: The specified server name contains a character that is not valid (name=this£server). Valid characters are: Unicode alphanumeric (e.g. 0-9, a-z, A-Z), underscore (_), dash (-), plus (+), and period (.). A server name cannot begin with a dash (-) or period (.). +``` ++ +しかし ++ +``` +./server create 'this$server' +``` ++ +は以䞋を返したす ++ +``` +Server this created. +``` ++ +たた、サヌバヌ名に空癜が含たれおいる堎合、サヌバヌ名が匕甚笊で囲たれおいるかどうかに関わらず、最初の空癜の前のテキストを䜿甚しおサヌバヌが䜜成されたす。䟋えば ++ +``` +./server create 'this server' +``` ++ +は以䞋を返したす ++ +``` +CWWKE0027W: Only one server may be specified on the command line; subsequent names will be ignored (server=this, ignored=server). +Server this created. +``` + +* link:https://github.com/OpenLiberty/open-liberty/issues/31628[カスタム Subject がキャッシュにない堎合の継続的な認蚌をサポヌト] ++ +シングル・サむンオンSSO環境では、ナヌザヌは特定の管理タスクを実行するために、アプリケヌション内で䞀時的に暩限を管理者レベルに昇栌させる必芁がある堎合がありたす。しかし、AuthenticationException によっおこのシナリオが正垞に機胜したせん。 ++ +この問題は、LTPALightweight Third-Party Authenticationトヌクンが有効であるにもかかわらず発生したす - トヌクンは正垞に埩号化および解析でき、有効期限ず眲名の䞡方が適切に怜蚌されたす。 ++ +認蚌の倱敗は、WebSphere Liberty サヌバヌが認蚌キャッシュ内で昇栌されたナヌザヌの Subject を芋぀けるこずができないために発生し、暩限昇栌プロセス䞭に認蚌が倱敗したす。 ++ +この制限により、同じ SSO セッション内で䞀時的な暩限昇栌が必芁なシナリオでの正圓な管理操䜜が劚げられたす。 + +== 今すぐ Open Liberty 25.0.0.11 を入手する + +<> から可胜です。 \ No newline at end of file diff --git a/.github/blog_translation_automation/translation_examples/ja/2025-12-02-25.0.0.12.adoc b/.github/blog_translation_automation/translation_examples/ja/2025-12-02-25.0.0.12.adoc new file mode 100755 index 000000000..85cbbc90b --- /dev/null +++ b/.github/blog_translation_automation/translation_examples/ja/2025-12-02-25.0.0.12.adoc @@ -0,0 +1,357 @@ +--- +layout: post +title: "25.0.0.12 で独自の AES-256 キヌの持ち蟌みず、IBM Semeru Runtimes による FIPS 140-3 のサポヌト" +# Do NOT change the categories section +categories: blog +author_picture: https://avatars3.githubusercontent.com/navaneethsnair1 +author_github: https://github.com/navaneethsnair1 +seo-title: 25.0.0.12 で独自の AES-256 キヌの持ち蟌みず、IBM Semeru Runtimes による FIPS 140-3 のサポヌト - OpenLiberty.io +seo-description: このリリヌスでは、独自の Base64 ゚ンコヌドされた AES-256 キヌを提䟛するサポヌトが導入され、起動時に Liberty がキヌを導出する必芁がなくなり、より高速で効率的なパスワヌド暗号化が実珟されたす。たた、適切な IBM Semeru Runtime バヌゞョンで Liberty を実行する際の FIPS 140-3 準拠が远加されたす。 +blog_description: このリリヌスでは、独自の Base64 ゚ンコヌドされた AES-256 キヌを提䟛するサポヌトが導入され、起動時に Liberty がキヌを導出する必芁がなくなり、より高速で効率的なパスワヌド暗号化が実珟されたす。たた、適切な IBM Semeru Runtime バヌゞョンで Liberty を実行する際の FIPS 140-3 準拠が远加されたす。 +open-graph-image: https://openliberty.io/img/twitter_card.jpg +open-graph-image-alt: Open Liberty Logo +blog-available-in-languages: +- lang: en + path: /blog/2025/12/02/25.0.0.12.html +additional_authors: +- name: 高宮 裕子 (翻蚳) + github: https://github.com/una-tapa + image: https://avatars.githubusercontent.com/una-tapa +--- += 25.0.0.12 で独自の AES-256 キヌの持ち蟌みず、IBM Semeru Runtimes による FIPS 140-3 のサポヌト +Navaneeth S Nair +:imagesdir: / +:url-prefix: +:url-about: / +//Blank line here is necessary before starting the body of the post. + +このリリヌスでは、独自の Base64 ゚ンコヌドされた AES-256 キヌを提䟛するサポヌトが導入され、起動時に Liberty がキヌを導出する必芁がなくなり、より高速で効率的なパスワヌド暗号化が実珟されたす。たた、サポヌトされおいる IBM Semeru Runtime バヌゞョン11.0.29、17.0.17、21.0.9、25.0.1 以降で Liberty を実行する際の FIPS 140-3 準拠が远加されたす。 + +// // // // // // // // +// In the preceding section: +// Leave any instances of `tag::xxxx[]` or `end:xxxx[]` as they are. +// +// Replace RELEASE_SUMMARY with a short paragraph that summarises the release. Start with the lead feature but also summarise what else is new in the release. You will agree which will be the lead feature with the reviewers so you can just leave a placeholder here until after the initial review. +// // // // // // // // + +// // // // // // // // +// Replace the following throughout the document: +// Replace 25.0.0.12 with the version number of Open Liberty, eg: 22.0.0.2 +// Replace 250010 with the version number of Open Liberty wihtout the periods, eg: 22002 +// // // // // // // // + +In link:{url-about}[Open Liberty] 25.0.0.12: + +* <> +* <> +* <> + +25.0.0.12 で修正されたバグのリストは link:https://github.com/OpenLiberty/open-liberty/issues?q=label%3Arelease%3A250012+label%3A%22release+bug%22[こちら] です。 + +link:{url-prefix}/blog/?search=release&search!=beta[以前の Open Liberty GA リリヌスのブログ投皿] もチェックしお䞋さい。 + +[#run] +== 25.0.0.12 でアプリを開発しお実行する + +もし link:{url-prefix}/guides/maven-intro.html[Maven] を䜿甚しおいるなら、`pom.xml` に以䞋を含めたす。 + +[source,xml] +---- + + io.openliberty.tools + liberty-maven-plugin + 3.11.5 + +---- + +link:{url-prefix}/guides/gradle-intro.html[Gradle] を䜿甚しおいる堎合は、`build.gradle` ファむルに以䞋を含めたす。 + +[source,gradle] +---- +buildscript { + repositories { + mavenCentral() + } + dependencies { + classpath 'io.openliberty.tools:liberty-gradle-plugin:3.9.6' + } +} +apply plugin: 'liberty' +---- + +link:{url-prefix}/docs/latest/container-images.html[コンテナ・むメヌゞ] を䜿甚する堎合は以䞋です。 + +[source] +---- +FROM icr.io/appcafe/open-liberty +---- + +もしくは link:{url-prefix}/start/[ダりンロヌド・ペヌゞ] をご芧䞋さい。 + +link:https://plugins.jetbrains.com/plugin/14856-liberty-tools[IntelliJ IDEA]、link:https://marketplace.visualstudio.com/items?itemName=Open-Liberty.liberty-dev-vscode-ext[Visual Studio Code] たたは link:https://marketplace.eclipse.org/content/liberty-tools[Eclipse IDE] を䜿甚しおいる堎合、これらの IDE で効率的な開発・テスト・デバッグずアプリケヌション管理のすべおを実行するために、オヌプン゜ヌスの link:https://openliberty.io/docs/latest/develop-liberty-tools.html[Liberty Tools] を利甚するこずができたす。 + +[link=https://stackoverflow.com/tags/open-liberty] +image::img/blog/blog_btn_stack_ja.svg[Stack Overflow で質問する, align="center"] + +// // // // DO NOT MODIFY THIS COMMENT BLOCK // // // // +// Blog issue: https://github.com/OpenLiberty/open-liberty/issues/33391 +// Contact/Reviewer: jacobwdv +// // // // // // // // +[#aes256] +== 独自の AES-256 キヌの持ち蟌み + +Liberty では、パスワヌド暗号化のために Base64 ゚ンコヌドされた 256 ビット AES キヌを提䟛できるようになりたした。 + +=== 新機胜 + +以前、Liberty は `wlp.password.encryption.key` プロパティをサポヌトしおおり、パスワヌドを受け取り、蚈算集玄的なプロセスを通じお AES キヌを導出しおいたした。この導出には、゜ルトを䜿甚した繰り返しハッシュが倚数の反埩にわたっお含たれおおり、サヌバヌ起動時にオヌバヌヘッドが远加されおいたした。 + +珟圚では、事前に生成された AES キヌを盎接提䟛できるようになりたした。これにより導出ステップが䞍芁になり、起動時間が短瞮され、パスワヌドの暗号化ず埩号化時のランタむム・パフォヌマンスが向䞊したす。 + +=== 有効化の方法 + +. **256 ビット AES キヌの取埗** ++ +セキュリティ・むンフラストラクチャから 256 ビット AES キヌを取埗するか、`securityUtility generateAESKey` コマンドを䜿甚しお生成できたす。 ++ +`securityUtility` を䜿甚しお 256 ビット AES キヌを生成するには、新しい `securityUtility generateAESKey` タスクを実行したす + +* ランダムな AES キヌを生成する ++ +```bash +./securityUtility generateAESKey +``` +* オプションで、ランダムな AES キヌを XML ファむルに保存する ++ +```bash + securityUtility generateAESKey --createConfigFile=myAesConfig.xml +``` +* たたは、パスフレヌズから非ランダムな AES キヌを生成する ++ +```bash +./securityUtility generateAESKey --key= +``` +* オプションで、パスフレヌズから非ランダムな AES キヌを生成し、XML ファむルに保存する ++ +```bash + securityUtility generateAESKey --key= --createConfigFile=myAesConfig.xml +``` + +. *Liberty でキヌを蚭定する* ++ +`server.xml` ファむルで AES キヌを盎接蚭定するには、以䞋の倉数定矩を远加したす ++ +[source, xml] +---- + +---- ++ +たたは、倖郚蚭定ファむル`generateAESKey --createConfigFile` で生成されたファむルなどから AES キヌをロヌドするには、以䞋の蚭定を䜿甚しおファむルをむンクルヌドしたす。 ++ +*泚意* むンクルヌドされるファむルには、前述のように `wlp.aes.encryption.key` の倉数定矩が含たれおいる必芁がありたす。 ++ +[source, xml] +---- + +---- + +. *パスワヌドを暗号化する* ++ +`securityUtility encode` コマンドを実行しお、AES-256 キヌを䜿甚するパスワヌドを暗号化できたす + +- キヌを盎接提䟛する ++ +```bash +securityUtility encode --encoding=aes --base64Key= +``` +- AES キヌ倉数を含む XML たたは Java プロパティ・ファむルを䜿甚するには、`--aesConfigFile` オプションを指定したす ++ +```bash +securityUtility encode --encoding=aes --aesConfigFile= +``` +. *蚭定を曎新する* ++ +結果ずしお埗られた暗号化された倀を Liberty 蚭定にコピヌしたす。 + +--- + +*パフォヌマンスのヒント* 最高のパフォヌマンスを埗るには、新しい AES-256 キヌを䜿甚しおすべおのパスワヌドを再暗号化しおください。Open Liberty は叀いパスワヌド圢匏をサポヌトしおいたすが、完党な移行により䞀貫した起動パフォヌマンスが提䟛されたす。 + +AES 暗号化をサポヌトする Liberty コマンドは、以䞋のオプションを受け入れたす + +* `--base64Key` たたは `--passwordBase64Key`Base64 ゚ンコヌドされた AES-256 キヌを盎接提䟛したす。 +* `--aesConfigFile``wlp.aes.encryption.key` たたは `wlp.password.encryption.key` を定矩する蚭定ファむルを提䟛したす。 + +その他のコマンドラむン・タスクも、同様の方法で Base64 キヌず AES 蚭定ファむルを受け入れるように曎新されおいたす + +. `securityUtility` + * `createSSLCertificate` + * `createLTPAKeys` + * `encode` +. `configUtility` + * `install` +. `collective` + * `create` + * `join` + * `replicate` + +// DO NOT MODIFY THIS LINE. + +// // // // DO NOT MODIFY THIS COMMENT BLOCK // // // // +// Blog issue: https://github.com/OpenLiberty/open-liberty/issues/33359 +// Contact/Reviewer: abutch3r +// // // // // // // // +[#fips] +== IBM Semeru Runtimes による FIPS 140-3 のサポヌト + +FIPS 140-3 は FIPS 140 暙準の最新バヌゞョンであり、暗号化モゞュヌルのセキュリティず敎合性を確保するための䞀連のガむドラむンを提䟛したす。FIPS 140-3 のサポヌトは、バヌゞョン link:https://openliberty.io/blog/2025/03/25/25.0.0.3.html[25.0.0.3] で IBM JDK 8 を䜿甚した Liberty で初めお導入されたした。このリリヌスでは、Open Liberty は link:https://developer.ibm.com/languages/semeru-runtimes[IBM Semeru Runtimes] バヌゞョン 11.0.29、17.0.17、21.0.9、25.0.1 以降を䜿甚する際に FIPS 140-3 暙準をサポヌトしたす。 + +=== FIPS 140-3 の有効化 + +`securityUtility` には、FIPS 140-3 を有効にするための configureFIPS ずいう新しいタスクがありたす。この新しいタスクは、IBM Semeru Runtimes ず IBM SDK 8 の䞡方に適甚されたす。 + +`configureFIPS` タスクは 3 ぀のレベルで動䜜したす + +1. Install +2. Server +3. Client + +すべおのサヌバヌ、クラむアント、およびツヌル党䜓で有効にするには、以䞋を実行しお Install レベルで FIPS 140-3 を有効にできたす +``` +securityUtility configureFIPS +``` + +特定のサヌバヌを有効化たたは蚭定するには、以䞋を実行したす +``` +securityUtility configureFIPS --server= +``` + +特定のクラむアントを有効化たたは蚭定するには、以䞋を実行したす +``` +securityUtility configureFIPS --client= +``` + +IBM Semeru Runtimes の堎合、これらのコマンドは FIPS 有効化芁件を蚭定し、アプリケヌションの必芁な制玄を蚭定するために線集できる Java セキュリティ・プロパティ・ファむルを䜜成したす。 +制玄の蚭定の詳现に぀いおは、link:https://www.ibm.com/support/pages/node/7113528#creatingextensionsofprofiles[プロファむルの拡匵の䜜成] に関するドキュメントを参照しおください。 + +特定の堎所たたは特定の名前でプロファむルを䜜成するには、`--customProfileFile=` 匕数を指定でき、線集可胜なファむルが䜜成されたす。ファむルの名前がプロファむルの名前ずしお䜿甚されたす。蚭定は、提䟛されたファむルを指すように蚭定されたす。 +プロパティには耇数のファむルを指定できたす。すべおのファむルが䜜成され、前のファむルを拡匵し、指定された最埌のファむルがチェヌンの最埌になりたす。 + +`securityUtility configureFIPS` コマンドの䞀郚ずしお `--customProfileFile` を指定しない堎合、ファむルは以䞋の堎所に䜜成されたす。堎所は、サヌバヌたたはクラむアントを指定したかどうかによっお異なりたす。 + +- サヌバヌもクラむアントも指定されおいない堎合 `/wlp/etc/FIPS140-3-Liberty-Application.properties` +- サヌバヌが指定されおいる堎合 `/resources/security/FIPS140-3-Liberty-Application.properties` +- クラむアントが指定されおいる堎合 `/resources/security/FIPS140-3-Liberty-Application.properties` + +有効化されおいる必芁なレベルで FIPS 140-3 を無効にするには、コマンドに以䞋のオプションを远加したす。 +``` +--disable +``` + +=== LTPA + +FIPS 140-3 が有効になっおいる堎合、サヌバヌは FIPS 140-3 承認の暗号化アルゎリズムを䜿甚しお生成された LTPA キヌのみをロヌドできたす。LTPA シングル・サむンオンSSOを機胜させるには、ナヌザヌはすべおのサヌバヌで FIPS 140-3 を䜿甚するように蚭定する必芁がありたす。蚭定の詳现に぀いおは、link:https://www.ibm.com/docs/en/was-liberty/base?topic=liberty-configuring-ltpa-in[ドキュメント] を参照しおください。 + +FIPS 140-3 が有効化された埌にサヌバヌが再起動されるず、FIPS 承認アルゎリズムで生成された新しい `ltpa.keys` ファむルが自動的に䜜成されたす。FIPS 140-3 が有効化される前に䜜成された既存の `ltpa.keys` ファむルは、`ltpa.keys.nofips` にバックアップされたす。 +お客様は、FIPS 140-3 が有効化される前に䜜成された怜蚌キヌ・ファむルを再䜜成するために、securityUtility `createLTPAKeys` コマンドを䜿甚する必芁がありたす。 + +==== securityUtility を䜿甚した新しい FIPS 承認 LTPA キヌの䜜成 + +securityUtility コマンドの `createLTPAKeys` オプションを䜿甚しお LTPA キヌを䜜成するこずもできたす。FIPS 140-3 承認アルゎリズムで LTPA キヌを生成するには、むンストヌル・レベルで FIPS 140-3 を蚭定したす。 +``` +securityUtility createLTPAKeys --password=mypassword --passwordEncoding=aes +``` + +=== SAML + +Liberty SAML Web Browser SSO 暗号化は、IBM Semeru FIPS 140-3 認定の ECDH-ES キヌ亀換をサポヌトするようになりたした。 +Liberty は、`SHA256`、`SHA384`、`SHA512`、および `ECDSAwithSHA256`、`ECDSAwith384`、`ECDSAwith512` を含む、SAML のより匷力な眲名アルゎリズムをサポヌトするようになりたした。 + +=== FIPS 140-3 モヌドが有効な堎合にサポヌトされる眲名メ゜ッド・アルゎリズム・オプション +*サポヌト察象* + +- SHA256 +- SHA38425.0.0.12 以降 +- SHA51225.0.0.12 以降 +- ECDSAwithSHA25625.0.0.12 以降 +- ECDSAwithSHA38425.0.0.12 以降 +- ECDSAwithSHA51225.0.0.12 以降 + +*サポヌト察象倖* + +- SHA1 + +*䜿甚䟋* +``` + +``` + +=== FIPS 140-3 モヌドが有効な堎合にサポヌトされる暗号化アルゎリズム +*サポヌト察象* + +- ECDH-ES + +*サポヌト察象倖* + +- SAML 暗号化が有効な堎合の RSA-OAEP 暗号化キヌ転送。 + +*泚意* IBM Semeru ランタむムで䜿甚されおいる FIPS モゞュヌルは、将来のリリヌスで RSA-OAEP 操䜜を認定する予定です。 + +=== wsSecurity-1.1 + +`wsSecurity-1.1` フィヌチャヌは、ECDH-ES アルゎリズムを掻甚しお、眲名ず暗号化のための楕円曲線キヌの䜿甚をサポヌトするようになりたした。 + +=== アプリケヌションの制玄の定矩 + +FIPS 140-3 が蚭定されおいる堎合、Semeru ランタむムは、link:https://www.ibm.com/support/pages/node/7113528#restrictedsecuritymode[FIPS140-3-Strongly-Enforced 制限付きセキュリティ・モヌド・プロファむル] が有効になっおいるずきに、サヌバヌ党䜓で FIPS 140-3 承認アルゎリズムの䜿甚を匷制したす。Semeru FIPS 140-3 の暗号化アルゎリズムの匷制は、アルゎリズムの䜿甚を区別したせん。たずえば、メッセヌゞ・ダむゞェスト・ハッシュ通垞は 2 ぀の倀を比范するために䜿甚されるでの `SHA1` の䜿甚は FIPS 140-3 仕様で蚱可されおいたすが、`SHA1` の䜿甚に区別がないため、Semeru FIPS 140-3 は䟝然ずしお䟋倖をスロヌしたす。䟋倖が発生した堎合は垞に、原因を調査し、必芁に応じおアルゎリズムを曎新しおくださいこの堎合、たずえば `SHA-256` たたは `SHA-512` に。問題が暗号化に関連しおおらず、その䜿甚が FIPS 140-3 仕様で蚱可されおいる堎合は、蚱可された制玄ずしおカスタム・プロファむルの䟋倖リストに远加しおください。 + +IBM Semeru は、プロファむルを䜿甚しお制玄を適甚し、Java セキュリティ・プロバむダヌずアルゎリズムぞのアクセスを蚱可しお、FIPS 140-3 準拠を確保したす。Strongly-enforced たたは Strict プロファむルがベヌスずしお䜿甚される堎合、`SHA-1` などのアルゎリズムは、制玄が远加されお蚱可されるたで、どのアプリケヌション・クラスでも䜿甚できたせん。 + +`SHA-1` などの非 FIPS 140-3 メッセヌゞ・ダむゞェストを䜿甚しおいる堎合、次のような䟋倖が衚瀺される堎合がありたす +``` +java.security.NoSuchAlgorithmException: SHA1 MessageDigest not available + at java.base/sun.security.jca.GetInstance.getInstance(GetInstance.java:159) + at java.base/java.security.MessageDigest.getInstance(MessageDigest.java:185) + at io.openliberty.fips.test.application.ObjectComparator.compareObjects(ObjectComparator.java:463) +``` +アプリケヌションがオブゞェクトを比范しおいるため、`SHA-1` を䜿甚できたす。 + +FIPS を有効にする䞀環ずしお䜜成されたプロパティ・ファむルで、アルゎリズムを提䟛するプロバむダヌの䞋に制玄を远加できたす。 +``` +RestrictedSecurity.OpenJCEPlusFIPS.FIPS140-3-Liberty-Application.jce.provider.1 = com.ibm.crypto.plus.provider.OpenJCEPlusFIPS [+ \ + {MessageDigest, SHA-1, *, FullClassName:io.openliberty.fips.test.application.ObjectComparator}] +``` +*泚意* 䟋倖では `SHA1` が欠萜しおいるず述べられおいたすが、アルゎリズムの名前は `SHA-1` であり、`SHA1` はその゚むリアスです。 + +アプリケヌションに Java セキュリティ・プロバむダヌが含たれおいる堎合、たたは `FIPS140-3-Liberty` たたは `FIPS140-3-Strongly-Enforced` プロファむルにただ登録されおいない新しいプロバむダヌを远加する必芁がある堎合は、FIPS セキュリティ・プロパティ・ファむルにも含める必芁がありたす。 + +次のようにプロバむダヌを远加できたす +``` +RestrictedSecurity.OpenJCEPlusFIPS.FIPS140-3-Liberty-Application.jce.provider.51 = io.openliberty.fips.test.custom.SecurityProvider +``` +プロバむダヌの定矩内に制玄を指定しない堎合、そのプロバむダヌが提䟛するすべおのアルゎリズムがランタむム内のすべおのクラスで䜿甚可胜になりたす。さらに、远加する新しいプロバむダヌは、プロバむダヌ䜍眮 51 から配眮する必芁がありたす。 + +link:https://www.ibm.com/support/pages/fips-140-3-cryptography-ibm-semeru-runtimes[FIPS 140-3 サポヌト] および link:https://openliberty.io/docs/latest/reference/config/samlWebSso20.html[SAML Web Browser SSO] の詳现に぀いおは、ドキュメントを参照しおください。 + +たた、いく぀かの異なるシナリオで远加する必芁がある制玄の䟋に぀いおは、link:https://www.ibm.com/docs/en/was-liberty/nd?topic=liberty-troubleshooting-fips-140-3[トラブルシュヌティング] セクションを参照しおください。 + +// DO NOT MODIFY THIS LINE. + +[#CVEs] +== このリリヌスでのセキュリティ脆匱性CVEの修正 +[cols="5*"] +|=== +|CVE |CVSS スコア |脆匱性評䟡 |圱響を受けるバヌゞョン |備考 + +|https://www.cve.org/CVERecord?id=CVE-2025-7962[CVE-2025-7962] +|7.5 +|SMTP むンゞェクション +|17.0.0.3-25.0.0.11 +|`javaMail-1.5`、`javaMail-1.6`、`mail-2.0`、`mail-2.1` フィヌチャヌに圱響 +|=== + +過去のセキュリティ脆匱性修正のリストに぀いおは、link:{url-prefix}/docs/latest/security-vulnerabilities.html[セキュリティ脆匱性CVEリスト] を参照しおください。 + +== 今すぐ Open Liberty 25.0.0.12 を入手する + +<> から可胜です。 \ No newline at end of file diff --git a/.github/blog_translation_automation/translation_examples/ja/2026-01-27-26.0.0.1.adoc b/.github/blog_translation_automation/translation_examples/ja/2026-01-27-26.0.0.1.adoc new file mode 100755 index 000000000..a9b293734 --- /dev/null +++ b/.github/blog_translation_automation/translation_examples/ja/2026-01-27-26.0.0.1.adoc @@ -0,0 +1,262 @@ +--- +layout: post +title: "26.0.0.1 でのログ抑制ず泚目すべきバグ修正" +# Do NOT change the categories section +categories: blog +author_picture: https://avatars3.githubusercontent.com/navaneethsnair1 +author_github: https://github.com/navaneethsnair1 +seo-title: 26.0.0.1 でのログ抑制ず泚目すべきバグ修正 - OpenLiberty.io +seo-description: このリリヌスでは、Open Liberty にログ抑制機胜が導入され、過床に繰り返されるログメッセヌゞを自動的に抑制するこずで、開発者がノむズを削枛し、倧量のログをより効果的に管理できるようになりたした。 +blog_description: このリリヌスでは、Open Liberty にログ抑制機胜が導入され、過床に繰り返されるログメッセヌゞを自動的に抑制するこずで、開発者がノむズを削枛し、倧量のログをより効果的に管理できるようになりたした。 +open-graph-image: https://openliberty.io/img/twitter_card.jpg +open-graph-image-alt: Open Liberty Logo +blog-available-in-languages: +- lang: en + path: /blog/2026/01/27/26.0.0.1.html +additional_authors: +- name: 銬堎 剛 (æ ¡æ­£) + github: https://github.com/babatch + image: https://avatars.githubusercontent.com/u/29302643 +--- += 26.0.0.1 でのログ抑制ず泚目すべきバグ修正 +Navaneeth S Nair +:imagesdir: / +:url-prefix: +:url-about: / +//Blank line here is necessary before starting the body of the post. + +// // // // // // // // +// In the preceding section: +// Do not insert any blank lines between any of the lines. +// Do not remove or edit the variables on the lines beneath the author name. +// +// "open-graph-image" is set to OL logo. Whenever possible update this to a more appropriate/specific image (For example if present a image that is being used in the post). However, it +// can be left empty which will set it to the default +// +// "open-graph-image-alt" is a description of what is in the image (not a caption). When changing "open-graph-image" to +// a custom picture, you must provide a custom string for "open-graph-image-alt". +// +// Replace TITLE with the blog post title eg: MicroProfile 3.3 is now available on Open Liberty 20.0.0.4 +// Replace navaneethsnair1 with your GitHub username eg: lauracowen +// Replace DESCRIPTION with a short summary (~60 words) of the release (a more succinct version of the first paragraph of the post). +// Replace Navaneeth S Nair with your name as you'd like it to be displayed, eg: Laura Cowen +// +// Example post: 2020-04-09-microprofile-3-3-open-liberty-20004.adoc +// +// If adding image into the post add : +// ------------------------- +// [.img_border_light] +// image::img/blog/FILE_NAME[IMAGE CAPTION ,width=70%,align="center"] +// ------------------------- +// "[.img_border_light]" = This adds a faint grey border around the image to make its edges sharper. Use it around screenshots but not +// around diagrams. Then double check how it looks. +// There is also a "[.img_border_dark]" class which tends to work best with screenshots that are taken on dark +// backgrounds. +// Change "FILE_NAME" to the name of the image file. Also make sure to put the image into the right folder which is: img/blog +// change the "IMAGE CAPTION" to a couple words of what the image is +// // // // // // // // + +このリリヌスでは、Open Liberty にログ抑制機胜が導入され、過床に繰り返されるログメッセヌゞを自動的に抑制するこずで、開発者がノむズを削枛し、倧量のログをより効果的に管理できるようになりたした。 +// // // // // // // // +// In the preceding section: +// Leave any instances of `tag::xxxx[]` or `end:xxxx[]` as they are. +// +// Replace RELEASE_SUMMARY with a short paragraph that summarises the release. Start with the lead feature but also summarise what else is new in the release. You will agree which will be the lead feature with the reviewers so you can just leave a placeholder here until after the initial review. +// // // // // // // // + +// // // // // // // // +// Replace the following throughout the document: +// Replace 26.0.0.1 with the version number of Open Liberty, eg: 22.0.0.2 +// Replace 26001 with the version number of Open Liberty wihtout the periods, eg: 22002 +// // // // // // // // + +link:{url-about}[Open Liberty] 26.0.0.1 の内容: + +* <> +* <> + +// // // // // // // // +// If there were updates to guides since last release, keep the following, otherwise remove section. +// // // // // // // // +ランタむムに远加された新機胜に加えお、<> も行いたした。 + +// // // // // // // // +// In the preceding section: +// Replace the TAG_X with a short label for the feature in lower-case, eg: mp3 +// Replace the FEATURE_1_HEADING with heading the feature section, eg: MicroProfile 3.3 +// Where the updates are grouped as sub-headings under a single heading +// (eg all the features in a MicroProfile release), provide sub-entries in the list; +// eg replace SUB_TAG_1 with mpr, and SUB_FEATURE_1_HEADING with +// Easily determine HTTP headers on outgoing requests (MicroProfile Rest Client 1.4) +// // // // // // // // + +26.0.0.1 で修正されたバグのリストは link:https://github.com/OpenLiberty/open-liberty/issues?q=label%3Arelease%3A26001+label%3A%22release+bug%22[こちら] です。 + +link:{url-prefix}/blog/?search=release&search!=beta[以前の Open Liberty GA リリヌスのブログ投皿] もチェックしお䞋さい。 + + +[#run] + +// // // // // // // // +// LINKS +// +// OpenLiberty.io site links: +// link:{url-prefix}/guides/maven-intro.html[Maven] +// +// Off-site links: +//link:https://openapi-generator.tech/docs/installation#jar[Download Instructions] +// +// IMAGES +// +// Place images in ./img/blog/ +// Use the syntax: +// image::/img/blog/log4j-rhocp-diagrams/current-problem.png[Logging problem diagram,width=70%,align="center"] +// // // // // // // // + +== 26.0.0.1 でアプリを開発しお実行する + +もし link:{url-prefix}/guides/maven-intro.html[Maven] を䜿甚しおいるなら、`pom.xml` に以䞋を含めたす。 + +[source,xml] +---- + + io.openliberty.tools + liberty-maven-plugin + 3.11.5 + +---- + +link:{url-prefix}/guides/gradle-intro.html[Gradle] を䜿甚しおいる堎合は、`build.gradle` ファむルに以䞋を含めたす。 + +[source,gradle] +---- +buildscript { + repositories { + mavenCentral() + } + dependencies { + classpath 'io.openliberty.tools:liberty-gradle-plugin:3.9.6' + } +} +apply plugin: 'liberty' +---- +// // // // // // // // +// In the preceding section: +// Replace the Maven `3.11.5` with the latest version of the plugin: https://search.maven.org/artifact/io.openliberty.tools/liberty-maven-plugin +// Replace the Gradle `3.9.5` with the latest version of the plugin: https://search.maven.org/artifact/io.openliberty.tools/liberty-gradle-plugin +// TODO: Update GHA to automatically do the above. If the maven.org is problematic, then could fallback to using the GH Releases for the plugins +// // // // // // // // + +link:{url-prefix}/docs/latest/container-images.html[コンテナ・むメヌゞ] を䜿甚しおいる堎合は、以䞋のようにしたす。 + +[source] +---- +FROM icr.io/appcafe/open-liberty +---- + +たたは、link:{url-prefix}/start/[ダりンロヌド・ペヌゞ] をご芧ください。 + +link:https://plugins.jetbrains.com/plugin/14856-liberty-tools[IntelliJ IDEA]、link:https://marketplace.visualstudio.com/items?itemName=Open-Liberty.liberty-dev-vscode-ext[Visual Studio Code]、たたは link:https://marketplace.eclipse.org/content/liberty-tools[Eclipse IDE] を䜿甚しおいる堎合は、オヌプン゜ヌスの link:https://openliberty.io/docs/latest/develop-liberty-tools.html[Liberty 開発者ツヌル] を利甚しお、IDE 内から効果的な開発、テスト、デバッグ、アプリケヌション管理を行うこずもできたす。 + +[link=https://stackoverflow.com/tags/open-liberty] +image::img/blog/blog_btn_stack_ja.svg[Stack Overflow で質問する, align="center"] + +// // // // DO NOT MODIFY THIS COMMENT BLOCK // // // // +// Blog issue: https://github.com/OpenLiberty/open-liberty/issues/31793 +// Contact/Reviewer: Channyboy,navaneethsnair1 +// // // // // // // // +[#logging] +== ログ抑制 + +Open Liberty のロギング機胜にログ抑制が導入されたした。これたで開発者には、倧量のメッセヌゞを抑制する方法がありたせんでした。この新機胜は、同じログむベントが短時間に繰り返し発生した堎合に、過床なログ出力を防ぐのに圹立ちたす。 + +抑制機胜はデフォルトで有効になっおいたす。有効にするず、Liberty はスラむディングりィンドりを䜿甚しお各 messageID を远跡したす。デフォルトでは、5 分間に 1,000 回以䞊繰り返される messageID は抑制されたす。抑制が開始されるず、抑制譊告がログに蚘録されたす。 + +ログ抑制は、`throttleType` ロギング属性を䜿甚しお、メッセヌゞたたは messageID に基づいおメッセヌゞを抑制するように構成できたす。抑制が開始される前に蚱可されるメッセヌゞの数は、`throttleMaxMessagesPerWindow` 属性を䜿甚しお構成できたす。 + +ログ抑制は、`throttleMaxMessagesPerWindow` を `0` に蚭定するこずで無効にできたす。 + +珟圚、これらの属性は次のように構成できたす。 + +* `server.xml` の堎合: ++ +[source,xml] +---- + +---- + +* `bootstrap.properties` の堎合: ++ +[source,properties] +---- +com.ibm.ws.logging.throttle.max.messages.per.window=5000 +com.ibm.ws.logging.throttle.type=messageID +---- + +* `server.env` の堎合: ++ +[source,env] +---- +WLP_LOGGING_THROTTLE_MAX_MESSAGES_PER_WINDOW=5000 +WLP_LOGGING_THROTTLE_TYPE=messageID +---- + +=== message ず messageID の違い: + +次のログむベントの䟋を考えおみたしょう: `TEST0111I: Hello World!` + +`throttleType` が `messageID` に蚭定されおいる堎合、抑制は messageID の発生回数のみに基づいお適甚されたす。この䟋では、`TEST0111I` が抑制に䜿甚されたす。 + +`throttleType` が `message` に蚭定されおいる堎合、抑制はメッセヌゞ党䜓に適甚されたす。メッセヌゞ内容のバリ゚ヌションは個別に远跡されたす。この䟋では、`TEST0111I: Hello World!` が抑制に䜿甚されたす。 + +// DO NOT MODIFY THIS LINE. + + +[#bugs] +== このリリヌスで修正された泚目すべきバグ + + +バグ修正に時間を費やしたした。以䞋のセクションでは、このリリヌスで解決された問題の䞀郚に぀いお説明したす。興味がある堎合は、link:https://github.com/OpenLiberty/open-liberty/issues?q=label%3Arelease%3A26001+label%3A%22release+bug%22[26.0.0.1 で修正されたバグの完党なリスト] をご芧ください。 + +* link:https://github.com/OpenLiberty/open-liberty/issues/33686[SocketRWChannelSelector で NullPointerException が発生する] +* link:https://github.com/OpenLiberty/open-liberty/issues/33617[IBM WebSphere Application Server Liberty がクロスサむトスクリプティングの圱響を受ける (CVE-2025-12635 CVSS 5.4)] +* link:https://github.com/OpenLiberty/open-liberty/issues/33609[wlp パスワヌドキヌのデコヌドに倱敗する可胜性がある] +* link:https://github.com/OpenLiberty/open-liberty/issues/33571[mpOpenAPI が x-ibm-zcon-roles-allowed を正しくマヌゞしない] +* link:https://github.com/OpenLiberty/open-liberty/issues/33561[Server package --include=minify が Liberty の FIPS プロパティファむルを含たない] + +// // // // // // // // +// In the preceding section: +// For this section ask either Michal Broz or Tom Evans or the #openliberty-release-blog channel for Notable bug fixes in this release. +// Present them as a list in the order as provided, linking to the issue and providing a short description of the bug and the resolution. +// If the issue on Github is missing any information, leave a comment in the issue along the lines of: +// "@[issue_owner(s)] please update the description of this `release bug` using the [bug report template](https://github.com/OpenLiberty/open-liberty/issues/new?assignees=&labels=release+bug&template=bug_report.md&title=)" +// Feel free to message the owner(s) directly as well, especially if no action has been taken by them. +// For inspiration about how to write this section look at previous blogs e.g- 20.0.0.10 or 21.0.0.12 (https://openliberty.io/blog/2021/11/26/jakarta-ee-9.1.html#bugs) +// // // // // // // // + + +// // // // // // // // +// If there were updates to guides since last release, keep the following, otherwise remove section. +// Check with Gilbert Kwan, otherwise Michal Broz or YK Chang +// // // // // // // // +[#guides] +== 前回のリリヌス以降の新芏および曎新されたガむド +Open Liberty の機胜が成長し続けるに぀れお、それらのトピックに関する link:https://openliberty.io/guides/?search=new&key=tag[新しいガむドを openliberty.io に] 远加し続けおおり、採甚を可胜な限り簡単にしおいたす。 + +link:https://openliberty.io/guides/#observability[Observability] カテゎリヌの䞋に 2 ぀の新しいガむドが公開されたした。 + +* link:https://openliberty.io/guides/microprofile-telemetry-grafana-automatic.html[OpenTelemetry ず Grafana を䜿甚したトレヌス、メトリクス、ログによるマむクロサヌビスの可芳枬性の有効化] +* link:https://openliberty.io/guides/microprofile-telemetry-grafana-custom.html[OpenTelemetry ず Grafana を䜿甚したマむクロサヌビスの可芳枬性のためのカスタムトレヌスずメトリクスの远加] + + +// // // // // // // // +// In the following section, list any new guides, or changes/updates to existing guides. +// The following is an example of how the list can be structured (similar to the bugs section): +// * link:{url-prefix}/guides/[new/updated guide].html[Guide Title] +// ** Description of the guide or the changes made to the guide. +// // // // // // // // + + +== Open Liberty 26.0.0.1 を今すぐ入手 + +<> から入手できたす。 \ No newline at end of file diff --git a/.github/workflows/blog_translation_automation.yml b/.github/workflows/blog_translation_automation.yml new file mode 100644 index 000000000..6d1b03bc9 --- /dev/null +++ b/.github/workflows/blog_translation_automation.yml @@ -0,0 +1,148 @@ +name: Create Blog Translation Automation + +on: + workflow_dispatch: + inputs: + filename: + description: 'Blog filename to translate (e.g., 2024-12-03-24.0.0.12.adoc or 2024-12-03-24.0.0.12)' + required: true + type: string + +env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + BOBSHELL_API_KEY: ${{ secrets.BOBSHELL_API_KEY }} + TRANSLATOR_NAME: ${{ github.actor }} + TRANSLATOR_GITHUB: https://github.com/${{ github.actor }} + +jobs: + create_translation_branch: + name: Create blog_translation_automation branch from prod + runs-on: ubuntu-latest + steps: + - name: Checkout prod branch + uses: actions/checkout@v3 + with: + ref: prod + fetch-depth: 0 + + - name: Configure Git + run: | + git config user.name "${{ github.actor }}" + git config user.email "${{ github.actor }}@users.noreply.github.com" + - name: Prepare translation branch + run: | + if git ls-remote --heads origin blog_translation_automation | grep blog_translation_automation; then + echo "Preparing new translation branch..." + git push origin --delete blog_translation_automation + fi + git checkout -b blog_translation_automation + git push origin blog_translation_automation + echo "✅ Translation branch ready" + - name: Setup Node.js + uses: actions/setup-node@v4 + with: + node-version: '22' + + - name: Install IBM BOB + timeout-minutes: 10 + run: | + echo "Installing IBM BOB..." + curl -s https://s3.us-south.cloud-object-storage.appdomain.cloud/bobshell/install-bobshell.sh | bash -s -- --pm npm + + # Configure environment + if [ -f ~/.bashrc ]; then source ~/.bashrc; fi + if [ -f ~/.bash_profile ]; then source ~/.bash_profile; fi + if [ -f ~/.profile ]; then source ~/.profile; fi + + echo "✅ IBM BOB installed successfully" + - name: Generate translation + env: + BOBSHELL_API_KEY: ${{ secrets.BOBSHELL_API_KEY }} + BLOG_FILENAME: ${{ inputs.filename }} + TRANSLATOR_NAME: ${{ github.actor }} + TRANSLATOR_GITHUB: https://github.com/${{ github.actor }} + run: | + export PATH="$HOME/.local/bin:$HOME/.npm-global/bin:$PATH" + + echo "Starting translation process..." + echo "Blog: $BLOG_FILENAME" + echo "Translator: $TRANSLATOR_NAME" + + BASE_FILENAME="${BLOG_FILENAME%.adoc}" + + if ! which bob > /dev/null 2>&1; then + echo "ERROR: IBM BOB not available" + exit 1 + fi + + # Execute translation (suppress verbose output) + echo "Processing translation..." + bob -p "IMPORTANT: First read @blog_translation_automation/BOB_START_HERE.md completely, then follow the instructions to read all documentation files in the specified order (@blog_translation_automation/TRANSLATION_RULES.md, @blog_translation_automation/TRANSLATION_PATTERNS.md). After understanding the translation patterns, translate the blog post with filename '$BASE_FILENAME.adoc'. Find this exact file in the posts/ directory. Translate this file to Japanese and save it in posts/ja/ directory with the SAME filename. Follow the translation style, tone, and formatting patterns documented in blog_translation_automation/ folder. IMPORTANT: For the translator credit in the front matter, use this information: Translator Name: '$TRANSLATOR_NAME', Translator GitHub Profile: '$TRANSLATOR_GITHUB'. Do NOT use 'IBM BOB' as the translator." --yolo > /tmp/translation.log 2>&1 + + TRANSLATION_EXIT_CODE=$? + if [ $TRANSLATION_EXIT_CODE -ne 0 ]; then + echo "❌ Translation process encountered an error" + echo "Last 20 lines of output:" + tail -20 /tmp/translation.log + exit 1 + fi + + # Verify translation output + TRANSLATED_FILE="posts/ja/${BASE_FILENAME}.adoc" + if [ -f "$TRANSLATED_FILE" ]; then + echo "✅ Translation completed successfully" + echo "Output: $TRANSLATED_FILE ($(stat -f%z "$TRANSLATED_FILE" 2>/dev/null || stat -c%s "$TRANSLATED_FILE") bytes)" + else + echo "❌ Translation failed: Output file not found" + exit 1 + fi + - name: Commit and push translation + id: commit-changes + run: | + git checkout blog_translation_automation + git add posts/ja/*.adoc + + if git diff --staged --quiet; then + echo "No changes detected" + echo "has_changes=false" >> $GITHUB_OUTPUT + else + git commit -m "Add Japanese translation for blog ${{ inputs.filename }}" --author "${{ github.actor }} <${{ github.actor }}@users.noreply.github.com>" + git push origin blog_translation_automation + echo "✅ Translation committed successfully" + echo "has_changes=true" >> $GITHUB_OUTPUT + fi + - name: Create pull request + if: always() && steps.commit-changes.outputs.has_changes == 'true' + env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: | + echo "Creating pull request..." + gh pr create \ + --base prod \ + --head blog_translation_automation \ + --draft \ + --title "Add Japanese translation for blog ${{ inputs.filename }}" \ + --body "## Automated Blog Translation + + This PR contains the Japanese translation for blog **${{ inputs.filename }}**. + + ### Translation Details + - **Filename**: ${{ inputs.filename }} + - **Translator**: [${{ github.actor }}](https://github.com/${{ github.actor }}) + - **Source**: English blog in \`posts/\` directory + - **Target**: Japanese blog in \`posts/ja/\` directory + + ### Review Checklist + - [ ] Translation uses formal Japanese (です・たす䜓) + - [ ] All code blocks preserved exactly + - [ ] Front matter correctly updated + - [ ] Language links swapped (ja ↔ en) + - [ ] Translator credit added + - [ ] Image references updated (_ja.svg) + - [ ] Technical terms handled correctly + + --- + *Automated translation workflow triggered by @${{ github.actor }}*" + echo "✅ Pull request created successfully" + +# Made with Bob diff --git a/posts/2026-02-04-take-the-jakarta-ee-survey.adoc b/posts/2026-02-04-take-the-jakarta-ee-survey.adoc new file mode 100644 index 000000000..3a9186d59 --- /dev/null +++ b/posts/2026-02-04-take-the-jakarta-ee-survey.adoc @@ -0,0 +1,69 @@ +--- +layout: post +title: "Take the Jakarta EE survey" +# Do NOT change the categories section +categories: blog +author_picture: https://avatars3.githubusercontent.com/ayoho +author_github: https://github.com/ayoho +seo-title: Take the Jakarta EE survey - OpenLiberty.io +seo-description: Take a quick 5-minute survey to help us learn about the enterprise Java and Jakarata EE technologies you use +blog_description: "Take a quick 5-minute survey to help us learn about the enterprise Java and Jakarata EE technologies you use" +open-graph-image: https://openliberty.io/img/twitter_card.jpg +open-graph-image-alt: Open Liberty Logo +--- += Take the Jakarta EE survey +Adam Yoho +:imagesdir: / +:url-prefix: +:url-about: / +//Blank line here is necessary before starting the body of the post. + +// // // // // // // // +// In the preceding section: +// Do not insert any blank lines between any of the lines. +// +// "open-graph-image" is set to OL logo. Whenever possible update this to a more appropriate/specific image (For example if present a image that is being used in the post). However, it +// can be left empty which will set it to the default +// +// "open-graph-image-alt" is a description of what is in the image (not a caption). When changing "open-graph-image" to +// a custom picture, you must provide a custom string for "open-graph-image-alt". +// +// Replace TITLE with the blog post title. +// Replace AUTHOR_NAME with your name as first author. +// Replace GITHUB_USERNAME with your GitHub username eg: lauracowen +// Replace DESCRIPTION with a short summary (~60 words) of the release (a more succinct version of the first paragraph of the post). +// +// Replace AUTHOR_NAME with your name as you'd like it to be displayed, eg: Laura Cowen +// +// Example post: 2020-04-02-generate-microprofile-rest-client-code.adoc +// +// If adding image into the post add : +// ------------------------- +// [.img_border_light] +// image::img/blog/FILE_NAME[IMAGE CAPTION ,width=70%,align="center"] +// ------------------------- +// "[.img_border_light]" = This adds a faint grey border around the image to make its edges sharper. Use it around screenshots but not +// around diagrams. Then double check how it looks. +// There is also a "[.img_border_dark]" class which tends to work best with screenshots that are taken on dark backgrounds. +// Change "FILE_NAME" to the name of the image file. Also make sure to put the image into the right folder which is: img/blog +// change the "IMAGE CAPTION" to a couple words of what the image is +// // // // // // // // + +== Calling Java Developers. Your input matters! + +The IBM Application Development User Research team is running a quick 5-minute survey to learn about the enterprise Java and Jakarta EE specifications/frameworks/models you use. This will help us understand your needs and build better products. + +Take the survey -> https://ibm.co/60418Ym81 + +link:https://www.linkedin.com/feed/update/urn:li:activity:7417951765720944640/?actorCompanyId=42933556[Open Liberty's post on Linkedin] + +// // // // // // // // +// LINKS +// +// OpenLiberty.io site links: +// link:/guides/microprofile-rest-client.html[Consuming RESTful Java microservices] +// +// Off-site links: +// link:https://openapi-generator.tech/docs/installation#jar[Download Instructions] +// +// // // // // // // //