Skip to content

Commit 81f08ad

Browse files
Update target JDK to 11 and move to JakartaEE 9 (#889)
Co-authored-by: Valery Kharseko <[email protected]>
1 parent 9d99e38 commit 81f08ad

File tree

1,630 files changed

+44860
-3783
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,630 files changed

+44860
-3783
lines changed

.github/workflows/build.yml

Lines changed: 9 additions & 77 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ jobs:
1010
runs-on: ${{ matrix.os }}
1111
strategy:
1212
matrix:
13-
java: [ '8', '11', '17', '21', '25' ]
13+
java: [ '11', '17', '21', '25' ]
1414
os: [ 'ubuntu-latest', 'macos-latest', 'windows-latest' ]
1515
fail-fast: false
1616
steps:
@@ -55,17 +55,18 @@ jobs:
5555
openam-server-only/target/*.war
5656
openam-distribution/openam-distribution-docker/Dockerfile*
5757
build-docker:
58+
needs: build-maven
5859
runs-on: 'ubuntu-latest'
5960
services:
6061
registry:
6162
image: registry:2
6263
ports:
6364
- 5000:5000
6465
steps:
65-
- uses: actions/checkout@v4
66+
- name: Download artifacts
67+
uses: actions/download-artifact@v4
6668
with:
67-
fetch-depth: 0
68-
submodules: recursive
69+
name: ubuntu-latest-11
6970
- name: Get latest release version
7071
shell: bash
7172
run: |
@@ -86,11 +87,14 @@ jobs:
8687
uses: docker/setup-buildx-action@v3
8788
with:
8889
driver-opts: network=host
90+
- name: Prepare Dockerfile
91+
shell: bash
92+
run: sed -i -E '/^#COPY openam-(server|distribution)\//s/^#//' ./openam-distribution/openam-distribution-docker/Dockerfile
8993
- name: Build image
9094
uses: docker/build-push-action@v5
9195
continue-on-error: true
9296
with:
93-
context: ./openam-distribution/openam-distribution-docker
97+
context: .
9498
file: ./openam-distribution/openam-distribution-docker/Dockerfile
9599
build-args: |
96100
VERSION=${{ env.release_version }}
@@ -149,75 +153,3 @@ jobs:
149153
http://openam.example.org:8080/openam/json/authenticate | grep tokenId'
150154
151155
docker inspect --format="{{json .State.Health.Status}}" test-openam | grep -q \"healthy\"
152-
build-docker-alpine:
153-
runs-on: 'ubuntu-latest'
154-
services:
155-
registry:
156-
image: registry:2
157-
ports:
158-
- 5000:5000
159-
steps:
160-
- uses: actions/checkout@v4
161-
with:
162-
fetch-depth: 0
163-
submodules: recursive
164-
- name: Get latest release version
165-
shell: bash
166-
run: |
167-
export git_version_last="$(curl -i -o - --silent https://api.github.com/repos/OpenIdentityPlatform/OpenAM/releases/latest | grep -m1 "\"name\"" | cut -d\" -f4)" ; echo "last release: $git_version_last"
168-
echo "release_version=$git_version_last" >> $GITHUB_ENV
169-
- name: Docker meta
170-
id: meta
171-
uses: docker/metadata-action@v5
172-
with:
173-
images: |
174-
localhost:5000/${{ github.repository }}
175-
tags: |
176-
type=raw,value=alpine
177-
type=raw,value=${{ env.release_version }}-alpine
178-
- name: Set up QEMU
179-
uses: docker/setup-qemu-action@v3
180-
- name: Set up Docker Buildx
181-
uses: docker/setup-buildx-action@v3
182-
with:
183-
driver-opts: network=host
184-
- name: Build image
185-
uses: docker/build-push-action@v5
186-
continue-on-error: true
187-
with:
188-
context: ./openam-distribution/openam-distribution-docker
189-
file: ./openam-distribution/openam-distribution-docker/Dockerfile-alpine
190-
build-args: |
191-
VERSION=${{ env.release_version }}
192-
platforms: linux/amd64,linux/arm64/8, linux/s390x, linux/386, linux/arm/v7, linux/arm/v6, linux/ppc64le
193-
push: true
194-
tags: ${{ steps.meta.outputs.tags }}
195-
labels: ${{ steps.meta.outputs.labels }}
196-
- name: Docker test
197-
shell: bash
198-
run: |
199-
docker run --rm -it -d --memory="2g" -h openam.example.org --name=test localhost:5000/${GITHUB_REPOSITORY,,}:${{ env.release_version }}-alpine
200-
timeout 3m bash -c 'until docker inspect --format="{{json .State.Health.Status}}" test | grep -q \"healthy\"; do sleep 10; done'
201-
docker exec -w '/usr/openam/ssoconfiguratortools' test bash -c \
202-
'echo "ACCEPT_LICENSES=true
203-
SERVER_URL=http://openam.example.org:8080
204-
DEPLOYMENT_URI=/$OPENAM_PATH
205-
BASE_DIR=$OPENAM_DATA_DIR
206-
locale=en_US
207-
PLATFORM_LOCALE=en_US
208-
AM_ENC_KEY=
209-
ADMIN_PWD=passw0rd
210-
AMLDAPUSERPASSWD=p@passw0rd
211-
COOKIE_DOMAIN=example.org
212-
ACCEPT_LICENSES=true
213-
DATA_STORE=embedded
214-
DIRECTORY_SSL=SIMPLE
215-
DIRECTORY_SERVER=openam.example.org
216-
DIRECTORY_PORT=50389
217-
DIRECTORY_ADMIN_PORT=4444
218-
DIRECTORY_JMX_PORT=1689
219-
ROOT_SUFFIX=dc=openam,dc=example,dc=org
220-
DS_DIRMGRDN=cn=Directory Manager
221-
DS_DIRMGRPASSWD=passw0rd" > conf.file && java -jar openam-configurator-tool*.jar --file conf.file'
222-
sleep 35
223-
docker inspect --format="{{json .State.Health.Status}}" test | grep -q \"healthy\"

.github/workflows/deploy.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ jobs:
2323
- name: Set up Java for publishing to Maven Central Repository OSS
2424
uses: actions/setup-java@v4
2525
with:
26-
java-version: ${{ github.event.workflow_run.head_branch == 'release/16.0.0-SNAPSHOT' && '11' || '8'}}
26+
java-version: ${{ github.event.workflow_run.head_branch == 'sustaining/15.2.x' && '8' || '11'}}
2727
distribution: 'zulu'
2828
server-id: ossrh
2929
server-username: MAVEN_USERNAME

.github/workflows/release.yml

Lines changed: 1 addition & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ jobs:
2626
- name: Set up Java for publishing to Maven Central Repository OSS
2727
uses: actions/setup-java@v4
2828
with:
29-
java-version: '8'
29+
java-version: '11'
3030
distribution: 'zulu'
3131
server-id: ossrh
3232
server-username: MAVEN_USERNAME
@@ -163,50 +163,3 @@ jobs:
163163
push: true
164164
tags: ${{ steps.meta.outputs.tags }}
165165
labels: ${{ steps.meta.outputs.labels }}
166-
release-docker-alpine:
167-
runs-on: 'ubuntu-latest'
168-
needs:
169-
- release-maven
170-
steps:
171-
- uses: actions/checkout@v4
172-
with:
173-
ref: ${{ github.event.inputs.releaseVersion }}
174-
fetch-depth: 1
175-
submodules: recursive
176-
- name: Docker meta (alpine)
177-
id: meta
178-
uses: docker/metadata-action@v5
179-
with:
180-
images: |
181-
${{ github.repository }}
182-
ghcr.io/${{ github.repository }}/${{ github.event.repository.name }}
183-
tags: |
184-
type=raw,value=alpine
185-
type=raw,value=${{ github.event.inputs.releaseVersion }}-alpine
186-
- name: Set up QEMU
187-
uses: docker/setup-qemu-action@v3
188-
- name: Set up Docker Buildx
189-
uses: docker/setup-buildx-action@v3
190-
- name: Login to DockerHub
191-
uses: docker/login-action@v3
192-
with:
193-
username: ${{ secrets.DOCKER_USERNAME }}
194-
password: ${{ secrets.DOCKER_PASSWORD }}
195-
- name: Login to GHCR
196-
uses: docker/login-action@v3
197-
with:
198-
registry: ghcr.io
199-
username: ${{ github.repository_owner }}
200-
password: ${{ secrets.GITHUB_TOKEN }}
201-
- name: Build and push image
202-
continue-on-error: true
203-
uses: docker/build-push-action@v5
204-
with:
205-
context: ./openam-distribution/openam-distribution-docker
206-
file: ./openam-distribution/openam-distribution-docker/Dockerfile-alpine
207-
build-args: |
208-
VERSION=${{ github.event.inputs.releaseVersion }}
209-
platforms: linux/amd64,linux/arm64/8, linux/s390x, linux/386, linux/arm/v7, linux/arm/v6, linux/ppc64le
210-
push: true
211-
tags: ${{ steps.meta.outputs.tags }}
212-
labels: ${{ steps.meta.outputs.labels }}

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ This project is licensed under the [Common Development and Distribution License
4848
* [IIS Windows x32/x64](https://github.com/OpenIdentityPlatform/OpenAM-Web-Agents/releases)
4949

5050
## How-to Build OpenAM from Source
51-
To build OpenAM from source you should use JDK 8 or higher
51+
To build OpenAM from source you should use JDK 11 or higher
5252

5353
For Windows users before clone and build run the following command:
5454
```bash

SECURITY.md

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,15 @@
22

33
## Supported Versions
44

5-
| Version | Supported |
6-
| -------------------------------------- | -------------------------------------------- |
7-
| Open Identity Platform OpenAM 14.x.x | :white_check_mark: |
8-
| Forgerock OpenAM 13.х.x | :x: upgrade to Open Identity Platform OpenAM |
9-
| Forgerock OpenAM 12.х.x | :x: upgrade to Open Identity Platform OpenAM |
10-
| Forgerock OpenAM 11.х.x | :x: upgrade to Open Identity Platform OpenAM |
11-
| Sun/Oracle OpenSSO 10.х.x | :x: upgrade to Open Identity Platform OpenAM |
5+
| Version | Java Versions Support | EE | Supported |
6+
|--------------------------------------|-----------------------|------------|---------------------------------------------------------------------------------------------------------------------------------------------|
7+
| Open Identity Platform OpenAM 16.x.x | 11 and later | Jakarta EE | :white_check_mark: Community support, [approved vendor support](https://github.com/OpenIdentityPlatform/.github/wiki/Approved-Vendor-List) |
8+
| Open Identity Platform OpenAM 15.x.x | 8 and later | Java EE | :white_check_mark: [Approved vendor support](https://github.com/OpenIdentityPlatform/.github/wiki/Approved-Vendor-List) |
9+
| Open Identity Platform OpenAM 14.x.x | 8 and later | Java EE | :white_check_mark: [Approved vendor support](https://github.com/OpenIdentityPlatform/.github/wiki/Approved-Vendor-List) |
10+
| Forgerock OpenAM 13.х.x | 1.7, 8 and later | Java EE | :x: upgrade to Open Identity Platform OpenAM |
11+
| Forgerock OpenAM 12.х.x | 1.7, 8 and later | Java EE | :x: upgrade to Open Identity Platform OpenAM |
12+
| Forgerock OpenAM 11.х.x | 1.6, 1.7 | Java EE | :x: upgrade to Open Identity Platform OpenAM |
13+
| Sun/Oracle OpenSSO 10.х.x | 1.5, 1.6 | Java EE | :x: upgrade to Open Identity Platform OpenAM |
1214

1315
## Reporting a Vulnerability
1416

jato-shaded/pom.xml

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
* information: "Portions copyright [year] [name of copyright owner]".
1414
*
1515
* Copyright 2011-2016 ForgeRock AS.
16+
* Portions Copyrighted 2025 3A Systems LLC.
1617
-->
1718
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
1819
<modelVersion>4.0.0</modelVersion>
@@ -21,15 +22,16 @@
2122
<parent>
2223
<groupId>org.openidentityplatform.openam</groupId>
2324
<artifactId>openam</artifactId>
24-
<version>15.2.3-SNAPSHOT</version>
25+
<version>16.0.0-SNAPSHOT</version>
2526
</parent>
2627

2728
<!-- Component Definition -->
2829
<name>OpenAM Jato Shaded</name>
2930
<description>OpenAM Jato Shaded Library</description>
30-
<groupId>org.openidentityplatform.openam.shaded</groupId>
31+
<groupId>org.openidentityplatform.external.com.iplanet.jato</groupId>
3132
<artifactId>jato-shaded</artifactId>
3233
<packaging>jar</packaging>
34+
<version>2005-05-04</version>
3335

3436
<!-- Build -->
3537

@@ -38,6 +40,7 @@
3840
<dependency>
3941
<groupId>org.openidentityplatform.external.com.iplanet.jato</groupId>
4042
<artifactId>jato</artifactId>
43+
<version>2005-05-04</version>
4144
</dependency>
4245
</dependencies>
4346
<build>

jato-shaded/src/main/java/com/iplanet/jato/util/Encoder.java

Lines changed: 7 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,8 @@
1313
import java.util.zip.Inflater;
1414
import java.util.zip.InflaterInputStream;
1515

16-
1716
public class Encoder {
17+
1818
private Encoder() {
1919
}
2020

@@ -35,20 +35,11 @@ public static byte[] decodeBase64(String s) {
3535
}
3636

3737
public static String encodeHttp64(byte[] bytes, int compressThreshold) {
38-
byte[] result;
39-
if (bytes.length > compressThreshold) {
40-
result = compress(bytes);
41-
} else {
42-
result = new byte[bytes.length + 1];
43-
result[0] = 0;
44-
System.arraycopy(bytes, 0, result, 1, bytes.length);
45-
}
46-
return Base64.getUrlEncoder().encodeToString(result);
38+
return Base64.getUrlEncoder().encodeToString(bytes);
4739
}
4840

4941
public static byte[] decodeHttp64(String s) {
50-
byte[] result = Base64.getUrlDecoder().decode(s);
51-
return decompress(result);
42+
return Base64.getUrlDecoder().decode(s);
5243
}
5344

5445
public static byte[] compress(byte[] in) {
@@ -104,7 +95,7 @@ private static byte[] subBuffer(byte[] in, int idx, int len) {
10495
public static byte[] serialize(Serializable o, boolean compress) throws IOException {
10596
ByteArrayOutputStream baos = new ByteArrayOutputStream(512);
10697
DeflaterOutputStream dos = null;
107-
ObjectOutputStream oos;
98+
ObjectOutputStream oos = null;
10899
if (compress) {
109100
dos = new DeflaterOutputStream(baos, new Deflater(9));
110101
oos = new ObjectOutputStream(dos);
@@ -125,8 +116,8 @@ public static byte[] serialize(Serializable o, boolean compress) throws IOExcept
125116

126117
public static Object deserialize(byte[] b, boolean compressed) throws IOException, ClassNotFoundException {
127118
ByteArrayInputStream bais = new ByteArrayInputStream(b);
128-
InflaterInputStream iis;
129-
ObjectInputStream ois;
119+
InflaterInputStream iis = null;
120+
ObjectInputStream ois = null;
130121
if (compressed) {
131122
iis = new InflaterInputStream(bais);
132123
ois = new ApplicationObjectInputStream(iis);
@@ -138,3 +129,4 @@ public static Object deserialize(byte[] b, boolean compressed) throws IOExceptio
138129
return result;
139130
}
140131
}
132+

openam-annotations/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
<parent>
2222
<groupId>org.openidentityplatform.openam</groupId>
2323
<artifactId>openam</artifactId>
24-
<version>15.2.3-SNAPSHOT</version>
24+
<version>16.0.0-SNAPSHOT</version>
2525
</parent>
2626

2727
<!-- Component Definition -->

openam-audit/openam-audit-configuration/pom.xml

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,13 +13,13 @@
1313
* information: "Portions copyright [year] [name of copyright owner]".
1414
*
1515
* Copyright 2014-2016 ForgeRock AS.
16-
* Portions copyright 2023 3A Systems LLC
16+
* Portions copyright 2023-2025 3A Systems LLC
1717
-->
1818
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
1919
<parent>
2020
<artifactId>openam-audit</artifactId>
2121
<groupId>org.openidentityplatform.openam</groupId>
22-
<version>15.2.3-SNAPSHOT</version>
22+
<version>16.0.0-SNAPSHOT</version>
2323
</parent>
2424
<modelVersion>4.0.0</modelVersion>
2525

@@ -80,10 +80,17 @@
8080
<scope>test</scope>
8181
</dependency>
8282
<dependency>
83-
<groupId>org.apache.activemq</groupId>
83+
<groupId>org.openidentityplatform.openam.jakarta</groupId>
8484
<artifactId>activemq-client</artifactId>
8585
<scope>test</scope>
8686
</dependency>
87+
<!--activemq dependencies-->
88+
<dependency>
89+
<groupId>org.apache.geronimo.specs</groupId>
90+
<artifactId>geronimo-j2ee-management_1.1_spec</artifactId>
91+
<version>1.0.1</version>
92+
<scope>test</scope>
93+
</dependency>
8794
<dependency>
8895
<groupId>org.testng</groupId>
8996
<artifactId>testng</artifactId>

openam-audit/openam-audit-configuration/src/main/java/org/forgerock/openam/audit/configuration/AuditServiceConfigurationProviderImpl.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
* information: "Portions copyright [year] [name of copyright owner]".
1313
*
1414
* Copyright 2015-2016 ForgeRock AS.
15+
* Portions Copyrighted 2025 3A Systems LLC.
1516
*/
1617
package org.forgerock.openam.audit.configuration;
1718

@@ -43,7 +44,7 @@
4344
import org.forgerock.openam.utils.JsonValueBuilder;
4445
import org.forgerock.openam.utils.RealmUtils;
4546

46-
import javax.inject.Singleton;
47+
import jakarta.inject.Singleton;
4748
import java.io.IOException;
4849
import java.io.InputStream;
4950
import java.security.AccessController;

0 commit comments

Comments
 (0)