Java eSignature SDK migrates to Jakarta EE
Recently at DocuSign, we migrated our Java ESignature SDK from Java EE to Jakarta EE. This breaking change is included in version 4.0.0-RC1 of our SDK. We recommend that clients upgrade to Jakarta as well.
Why are we making this change?
Since 2017, development of Java EE has been handed over from Oracle to the Eclipse Foundation. However, since Oracle owns the trademark to Java, the API namespace had to be renamed from javax to jakarta. This causes a breaking change to anyone upgrading to Jakarta EE 9 or above. Fortunately, the upgrade process is easy for many projects.
What needs to be done?
If your project depends on the Java eSignature SDK, the recommended path forward is to upgrade to the latest version of Jakarta EE. This will allow you to reference the SDK in a standard format.
What if I can’t upgrade right away?
In order to maintain backward compatibility with clients that are not using Jakarta, we have published an Uber JAR version of the eSignature SDK. The Uber JAR not only contains the ESignature library code, but also bundles all of its dependencies into a single JAR file. Since all of its dependencies are self-contained, clients referencing the Uber JAR can use either Java EE or Jakarta.
How do I use the Uber JAR?
If you are using Maven, to reference the Uber JAR, you must include the shaded classifier with the dependency:
<dependency> <groupId>com.docusign</groupId> <artifactId>docusign-esign-java</artifactId> <version>4.0.0-RC1</version> <classifier>shaded</classifier> </dependency>
For projects that can’t upgrade to Jakarta right away, this is the easiest path forward. Once your project and its dependencies have been migrated to Jakarta, the shaded classifier can then be removed.