Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

7.22 add tomcat 10 documentation #1647

Merged
merged 18 commits into from
Jul 4, 2024
Merged
Show file tree
Hide file tree
Changes from 9 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 5 additions & 1 deletion content/installation/full/tomcat/manual.md
Original file line number Diff line number Diff line change
Expand Up @@ -144,6 +144,7 @@ You have to add the file `bpm-platform.xml` to the folder `$TOMCAT_HOME/conf` or

Follow the Tomcat Security Howto of your Tomcat version:
[9.0](https://tomcat.apache.org/tomcat-9.0-doc/security-howto.html).
[10.1](https://tomcat.apache.org/tomcat-10.1-doc/security-howto.html).

In particular, go to `${TOMCAT_HOME}/webapps/` and remove the directories
`ROOT`, `docs`, `examples`, `manager` and `host-manager`.
Expand All @@ -160,7 +161,8 @@ The following steps are required to deploy the applications:

1. Download the Camunda 7 web application that contains both applications from our [Artifact Repository](https://artifacts.camunda.com/artifactory/camunda-bpm/org/camunda/bpm/webapp/camunda-webapp-tomcat/).
Or switch to the private repository for the enterprise version (User and password from license required).
Choose the correct version named `$PLATFORM_VERSION/camunda-webapp-tomcat-$PLATFORM_VERSION.war`.
* For [Tomcat 10](https://artifacts.camunda.com/ui/native/camunda-bpm/org/camunda/bpm/webapp/camunda-webapp-tomcat-jakarta/), the name of the artifact is `$PLATFORM_VERSION/camunda-webapp-tomcat-jakarta-$PLATFORM_VERSION.war`.
* For [Tomcat 9](https://artifacts.camunda.com/ui/native/camunda-bpm/org/camunda/bpm/webapp/camunda-webapp-tomcat/), the name of the artifact is `$PLATFORM_VERSION/camunda-webapp-tomcat-$PLATFORM_VERSION.war`.
2. Copy the war file to `$TOMCAT_HOME/webapps/camunda.war`.
Optionally you may name it differently or extract it to a folder to deploy it to a different context path.
3. Startup Tomcat.
Expand All @@ -174,6 +176,8 @@ The following steps are required to deploy the REST API:
1. Download the REST API web application archive from our [Artifact Repository](https://artifacts.camunda.com/artifactory/camunda-bpm/org/camunda/bpm/camunda-engine-rest/).
Or switch to the private repository for the enterprise version (User and password from license required).
Choose the correct version named `$PLATFORM_VERSION/camunda-engine-rest-$PLATFORM_VERSION-tomcat.war`.
* For [Tomcat 10](https://artifacts.camunda.com/artifactory/public/org/camunda/bpm/camunda-engine-rest-jakarta/), the name of the artifact is `$PLATFORM_VERSION/camunda-engine-rest-jakarta-$PLATFORM_VERSION-tomcat.war`.
* For [Tomcat 9](https://artifacts.camunda.com/artifactory/public/org/camunda/bpm/camunda-engine-rest/), the name of the artifact is `$PLATFORM_VERSION/camunda-engine-rest-$PLATFORM_VERSION-tomcat.war`.
2. Copy the war file to `$TOMCAT_HOME/webapps`.
Optionally you may rename it or extract it to a folder to deploy it to a specific context like `/engine-rest`.
3. Startup Tomcat.
Expand Down
2 changes: 1 addition & 1 deletion content/introduction/supported-environments.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ Run Camunda in every Java-runnable environment. Camunda is supported with our QA

## Container-Managed Process Engine and Camunda Cockpit, Tasklist, Admin

* Apache Tomcat 9.0
* Apache Tomcat 9.0 / 10.1
* JBoss EAP 7.4 / 8.0
* WildFly Application Server 23.0 / 26.0 / 31.0
* IBM WebSphere Liberty 22 with Java EE 8 features ([Enterprise Edition only](http://camunda.com/enterprise/),
Expand Down
44 changes: 44 additions & 0 deletions content/update/minor/721-to-722/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ This document guides you through the update from Camunda `7.21.x` to `7.22.0` an
1. For developers: [Camunda Commons](#camunda-commons)
1. For developers: [Camunda Template Engines FreeMarker](#camunda-template-engines-freemarker)
1. For developers: [Camunda Connect](#camunda-connect)
1. For developers: [Update to Tomcat 10 Server](#update-to-tomcat-10-server)

This guide covers mandatory migration steps and optional considerations for the initial configuration of new functionality included in Camunda 7.22.

Expand Down Expand Up @@ -54,3 +55,46 @@ Before starting, ensure you have downloaded the Camunda 7.22 distribution for th

# Camunda Connect
We’ve moved the `camunda-connect` project from its [previous location](https://github.com/camunda/camunda-connect) into the [mono repository](https://github.com/camunda/camunda-bpm-platform). We’re no longer versioning it independently. Instead, we’ve integrated it into the 7.X.Y versioning scheme, so you can conveniently declare Camunda `7.22.0-alpha2` to use the latest release of Camunda Connect.

# Update to Tomcat 10 Server

With this release, we support Tomcat 10, the new default pre-packaged Tomcat distro. It replaces Java EE with Jakarta EE APIs.
If you prefer to stay on Tomcat 9, you can still download the Java EE compliant [web application][tomcat9-webapp], and [REST API][tomcat9-rest-api].

To work with Tomcat 10, consider the following when migrating your process applications and replacing artifacts on the application server:

[tomcat9-webapp]: https://artifacts.camunda.com/ui/native/camunda-bpm/org/camunda/bpm/webapp/camunda-webapp-tomcat/
[tomcat9-rest-api]: https://artifacts.camunda.com/artifactory/public/org/camunda/bpm/camunda-engine-rest/

### Migrate process applications

* Replace Java EE class references (`javax.*`) with Jakarta class references (`jakarta.*`)
* You might have a look at [`org.eclipse.transformer:transformer-maven-plugin`](https://github.com/eclipse/transformer)
* Replace Camunda class references:
* `org.camunda.bpm.application.impl.EjbProcessApplication` → `org.camunda.bpm.application.impl.JakartaEjbProcessApplication`
* `org.camunda.bpm.application.impl.ServletProcessApplicationDeployer` → `org.camunda.bpm.application.impl.JakartaServletProcessApplicationDeployer`
* `org.camunda.bpm.application.impl.ServletProcessApplication` → `org.camunda.bpm.application.impl.JakartaServletProcessApplication`
* `org.camunda.bpm.engine.impl.cfg.jta.JtaTransactionContext` → `org.camunda.bpm.engine.impl.cfg.jta.JakartaTransactionContext`
* `org.camunda.bpm.engine.impl.cfg.jta.JtaTransactionContextFactory` → `org.camunda.bpm.engine.impl.cfg.jta.JakartaTransactionContextFactory`
* `org.camunda.bpm.engine.impl.cfg.JtaProcessEngineConfiguration` → `org.camunda.bpm.engine.impl.cfg.JakartaTransactionProcessEngineConfiguration`
* `org.camunda.bpm.engine.impl.interceptor.JtaTransactionInterceptor` → `org.camunda.bpm.engine.impl.interceptor.JakartaTransactionInterceptor`
* Replace Camunda Maven dependencies:
* `org.camunda.bpm.javaee:camunda-ejb-client` → `org.camunda.bpm.javaee:camunda-ejb-client-jakarta`
* `org.camunda.bpm:camunda-engine-cdi` → `org.camunda.bpm:camunda-engine-cdi-jakarta`

### Migrate Java webapp plugins

Replace Java EE class references (`javax.*`) with Jakarta class references (`jakarta.*`)

### Replace web application (Cockpit, Admin, Tasklist, Welcome) deployment

Replace the artifact `camunda-webapp-tomcat-$PLATFORM_VERSION.war` with `camunda-webapp-tomcat-jakarta-$PLATFORM_VERSION.war` under `$CATALINA_HOME/webapps`.

### Replace REST API deployment

Replace the artifact `camunda-engine-rest-$PLATFORM_VERSION-tomcat.war` with `camunda-engine-rest-jakarta-$PLATFORM_VERSION-tomcat.war` under `$CATALINA_HOME/webapps`.

### Migrating to the Tomcat 10 Docker Image

If your application uses a Docker image based on `Tomcat 9` (or prior) and wish to use the `Tomcat 10` based **Docker image**, you need perform the
the above migration steps yourself before your application is compatible with the `jakarta` namespace changes the new Tomcat version introduces.
2 changes: 1 addition & 1 deletion content/user-guide/runtime-container-integration/tomcat.md
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ If you have declared other resource link names than we proposed, you have to use

## Tomcat Default Job Executor

Camunda 7 on Apache Tomcat 9.x uses the default job executor. The default [job executor]({{< ref "/user-guide/process-engine/the-job-executor.md" >}}) uses a ThreadPoolExecutor which manages a thread
Camunda 7 on Apache Tomcat 10.x uses the default job executor. The default [job executor]({{< ref "/user-guide/process-engine/the-job-executor.md" >}}) uses a ThreadPoolExecutor which manages a thread
pool and a job queue.

The core pool size, queue size, maximum pool size and keep-alive-time can be configured in the `bpm-platform.xml`.
Expand Down