Lukasz Lenart created WW-5762:
---------------------------------
Summary: Bump weld.version from 6.0.4.Final to 7.0.0.Final
Key: WW-5762
URL: https://issues.apache.org/jira/browse/WW-5762
Project: Struts 2
Issue Type: Dependency
Components: Plugin - CDI
Reporter: Lukasz Lenart
Fix For: 8.0.0
Bump weld.version from 6.0.4.Final to 7.0.0.Final (Dependabot PR
https://github.com/apache/struts/pull/1998).
Weld 7 implements CDI 5.0 (Jakarta EE 12). The plugin's tests compile against
the CDI API from the Jakarta EE BOM, which is CDI 4.0 by default
({{jakarta-ee.version}} 10.0.0) and CDI 4.1 under {{-Pjakartaee11}} (11.0.0).
Weld 7 calls methods those versions don't have, so every CDI plugin test fails
in setup:
{code}CdiObjectFactoryTest.setup:45 ยป NoSuchMethod 'boolean
jakarta.enterprise.inject.spi.Bean.isEager()'
{code}
The same error hits {{CdiProxyServiceTest}} and
{{CdiSecurityMemberAccessProxyTest}} on every JDK job, including the Jakarta EE
11 + Spring 7 profile.
What the bump needs:
* A CDI 5.0 API on the plugin's classpath: either a Jakarta EE 12 baseline (no
platform BOM is on Maven Central yet; the latest is 11.0.0), or an explicit
{{jakarta.enterprise:jakarta.enterprise.cdi-api:5.0.0}} pin in {{plugins/cdi}}.
* {{weld-api.version}} in {{plugins/cdi/pom.xml}} moved from 6.0.Final to
7.0.Final.
* A decision on Jakarta EE 10 and 11 users: Weld 7 can only be the tested
container once the plugin's CDI baseline is 5.0.
Because this raises the minimum CDI version, it targets 8.0.0.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)