This document summarizes the changes made to migrate from javax.* dependencies to jakarta.* dependencies for full Spring 6 and Jakarta EE compatibility.
File: pom.xml
Changes:
- Updated
javax.mail.versionproperty from1.4.7tojakarta.mail.version2.0.1 - Replaced
javax.mail:mailwith:jakarta.mail:jakarta.mail-api(API)org.eclipse.angus:jakarta.mail(Implementation)
Changes:
- Replaced
javax.activation:activationwithjakarta.activation:jakarta.activation-api - Replaced
javax.mail:mailwithjakarta.mail:jakarta.mail-api
Changes:
- Replaced
javax.mail:mailwithjakarta.mail:jakarta.mail-api
Changes:
- Replaced
javax.mail:mailwithjakarta.mail:jakarta.mail-api
Changes:
- Updated import from
javax.ws.rs.client.ClientBuildertojakarta.ws.rs.client.ClientBuilder
Changes:
- Updated all JAX-RS Application parameter names from
javax.ws.rs.Applicationtojakarta.ws.rs.Application - Affected servlets: Cockpit Api, Admin Api, Tasklist Api, Engine Api, Welcome Api
Changes:
- Updated JAX-RS Application parameter name from
javax.ws.rs.Applicationtojakarta.ws.rs.Application
| Old Dependency | New Dependency | Version |
|---|---|---|
javax.mail:mail |
jakarta.mail:jakarta.mail-api |
2.0.1 |
javax.mail:mail |
org.eclipse.angus:jakarta.mail |
2.0.1 |
javax.activation:activation |
jakarta.activation:jakarta.activation-api |
2.1.0 |
javax.ws.rs.* |
jakarta.ws.rs.* |
N/A |
- Spring 6 Compatibility: Full compatibility with Spring Framework 6
- Jakarta EE Standards: Uses modern Jakarta EE specifications
- Future-Proof: Jakarta EE is the future standard for enterprise Java
- Better Integration: Improved integration with modern application servers
- Security Updates: Access to latest security patches and features
The following javax dependencies are still present but are acceptable to keep:
javax.management.*- JMX APIs (part of Java SE)javax.naming.*- JNDI APIs (part of Java SE)javax.tools.*- Java Compiler API (part of Java SE)javax.net.ssl.*- SSL/TLS APIs (part of Java SE)javax.xml.*- XML APIs (part of Java SE)
javax.net.ssl.trustStoresystem properties (standard Java property)
- Email Functionality: Test all email sending functionality with the new Jakarta Mail API
- JAX-RS Services: Verify all REST services work correctly with Jakarta JAX-RS
- Activation: Test any file attachment or MIME type handling
- Integration Tests: Run full integration tests to ensure compatibility
- The migration maintains backward compatibility for all functionality
- All existing email, REST, and activation features continue to work
- The Jakarta Mail implementation (Eclipse Angus) provides the same functionality as the old javax.mail
- Core Java APIs like JMX, JNDI, and SSL remain unchanged as they are part of the Java SE specification
- Test all email functionality thoroughly
- Verify REST API endpoints work correctly
- Update any custom code that might be using deprecated javax APIs
- Consider updating to use Jakarta EE 9+ features for enhanced functionality