From c02045c28e9c8cc9b787f6f41a80e0c847e6c1bd Mon Sep 17 00:00:00 2001 From: Zac Spitzer Date: Mon, 29 Dec 2025 02:16:13 +0100 Subject: [PATCH 1/2] LDEV-6044 temp remove hibernate ext from tests --- ant/build-core.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ant/build-core.xml b/ant/build-core.xml index 879c43f598..a9cf35f0be 100644 --- a/ant/build-core.xml +++ b/ant/build-core.xml @@ -756,7 +756,7 @@ - + From 7a9c8a515e3309d93249065e58a027c5dd8206e8 Mon Sep 17 00:00:00 2001 From: Zac Spitzer Date: Mon, 29 Dec 2025 02:17:38 +0100 Subject: [PATCH 2/2] LDEV-6044 use Felix JPMS auto-detection for JDK packages, remove xml-apis bundle --- core/pom.xml | 12 ---- core/src/main/java/META-INF/MANIFEST.MF | 2 - core/src/main/java/default.properties | 82 ++++++++++++++----------- loader/pom.xml | 12 ---- 4 files changed, 47 insertions(+), 61 deletions(-) diff --git a/core/pom.xml b/core/pom.xml index 805630e982..4b33a8a743 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -205,12 +205,6 @@ 1.0.0 provided - - org.lucee - xml-apis - 1.4.1 - provided - org.lucee jta @@ -326,12 +320,6 @@ 1.2.1.0002L provided - - w3c - dom - 1.1.0 - provided - net.java.dev.jna jna diff --git a/core/src/main/java/META-INF/MANIFEST.MF b/core/src/main/java/META-INF/MANIFEST.MF index a1a29707a6..a5a8936104 100644 --- a/core/src/main/java/META-INF/MANIFEST.MF +++ b/core/src/main/java/META-INF/MANIFEST.MF @@ -331,7 +331,6 @@ Require-Bundle: org.apache.commons.commons-codec;bundle-version=1.15.0, org.lucee.log4j-core;bundle-version=2.25.1, org.lucee.log4j-api;bundle-version=2.25.1, org.lucee.portlet;bundle-version=1.0.0, - org.lucee.xml.apis;bundle-version=1.4.1, org.lucee.jta;bundle-version=1.1.0, fusiondebug.api.server;bundle-version=1.0.20, org.lucee.httpcomponents.httpclient;bundle-version=4.5.13, @@ -351,7 +350,6 @@ Require-Bundle: org.apache.commons.commons-codec;bundle-version=1.15.0, slf4j.api;bundle-version=1.7.36, org.lucee.commons-email-all;bundle-version=1.6.0, tagsoup;bundle-version=1.2.1.0002L, - w3c.dom;bundle-version=1.1.0, org.lucee.jzlib;bundle-version=1.1.3, com.sun.jna;bundle-version=5.13.0, org.lucee.commonmark;bundle-version=0.22.0, diff --git a/core/src/main/java/default.properties b/core/src/main/java/default.properties index f18bdc6336..0c0b7420ee 100755 --- a/core/src/main/java/default.properties +++ b/core/src/main/java/default.properties @@ -1,10 +1,36 @@ -# OSGi settings +# ============================================================================== +# Lucee OSGi Framework Configuration (Apache Felix) +# ============================================================================== +# +# Boot Delegation: Packages delegated directly to the parent classloader, +# bypassing OSGi resolution. Required for JDK internals and Lucee core. +# +# System Packages: Felix 7.x auto-detects java.*/javax.* packages via JPMS +# for packages that are part of the JDK. We use system.packages.extra for: +# - Lucee-specific packages (coldfusion.*, com.allaire.*) +# - Java EE/Jakarta EE packages not in the JDK (servlet, ejb, jms, etc.) +# - JDK internal packages that may be needed (com.sun.*, sun.*) +# +# ============================================================================== + +# Felix runtime settings felix.log.level=error felix.cache.locking=false felix.cache.bufsize=65536 org.osgi.framework.storage.clean=none org.osgi.framework.bundle.parent=framework +# ============================================================================== +# Boot Delegation +# ============================================================================== +# Classes in these packages load directly from the parent classloader. +# This is necessary for: +# - JDK internal classes (java.*, sun.*, com.sun.*, jdk.*) +# - Servlet container classes (javax.servlet.*, jakarta.servlet.*) +# - Lucee core classes needed before OSGi initializes +# - Felix framework itself +# ============================================================================== + org.osgi.framework.bootdelegation= \ coldfusion.xml.rpc,\ \ @@ -71,8 +97,24 @@ org.osgi.framework.bootdelegation= \ \ sun.*,sun.misc -# necessary only for the maven build, no clue why atm -org.osgi.framework.system.packages= \ +# ============================================================================== +# System Packages Extra +# ============================================================================== +# Additional packages exported by the system bundle. +# +# NOTE: Felix 7.x auto-detects all java.*/javax.* packages that are part of +# the JDK via JPMS reflection at runtime. We do NOT override +# org.osgi.framework.system.packages - this allows Felix to automatically +# include all JDK packages for the running JVM. +# +# This section includes: +# - Lucee-specific packages (coldfusion.*, com.allaire.*) +# - Java EE/Jakarta EE packages removed from JDK in Java 11 +# - JDK internal packages (com.sun.*, sun.*) that bundles may import +# - OSGi framework packages +# ============================================================================== + +org.osgi.framework.system.packages.extra= \ coldfusion.xml.rpc,\ com.allaire.cfx,\ \ @@ -85,8 +127,8 @@ org.osgi.framework.system.packages= \ com.sun.msv.datatype,com.sun.msv.datatype.xsd,\ com.sun.net.ssl,com.sun.net.ssl.internal.ssl,\ \ - jakarta.el,\ jakarta.ejb,\ + jakarta.el,\ jakarta.enterprise.context,jakarta.enterprise.inject,\ jakarta.inject,\ jakarta.script,\ @@ -98,52 +140,22 @@ org.osgi.framework.system.packages= \ jakarta.validation,\ jakarta.xml.bind,jakarta.xml.bind.annotation,jakarta.xml.bind.annotation.adapters,jakarta.xml.bind.helpers,\ \ - java.io,\ - java.lang,\ - java.lang.invoke,\ - java.nio.charset,\ - java.nio.file,\ - java.text,\ - java.util,\ - java.util.concurrent.atomic,\ - java.util.function,\ - java.util.regex,\ - \ - javax.accessibility,\ - javax.annotation,javax.annotation.processing,\ - javax.crypto,javax.crypto.interfaces,javax.crypto.spec,\ javax.ejb,\ javax.el,\ javax.enterprise.context,javax.enterprise.inject,\ - javax.imageio,javax.imageio.event,javax.imageio.metadata,javax.imageio.plugins.bmp,javax.imageio.plugins.jpeg,javax.imageio.plugins.tiff,javax.imageio.spi,javax.imageio.stream,\ javax.inject,\ javax.jmdns,\ javax.jms,\ - javax.lang.model,javax.lang.model.element,javax.lang.model.type,javax.lang.model.util,\ - javax.management,javax.management.loading,javax.management.openmbean,javax.management.timer,\ - javax.naming,javax.naming.directory,javax.naming.event,javax.naming.ldap,javax.naming.spi,\ - javax.net,javax.net.ssl,\ - javax.print,javax.print.attribute,\ javax.resource,javax.resource.spi,javax.resource.spi.endpoint,javax.resource.spi.security,\ - javax.script,\ - javax.security.auth,javax.security.auth.callback,javax.security.auth.kerberos,javax.security.auth.login,javax.security.auth.x500,\ - javax.security.cert,\ - javax.security.sasl,\ javax.servlet,javax.servlet.http,javax.servlet.jsp,javax.servlet.jsp.el,javax.servlet.jsp.tagext,\ - javax.sql,javax.sql.rowset,javax.sql.rowset.spi,\ - javax.swing,javax.swing.border,javax.swing.event,javax.swing.filechooser,javax.swing.plaf,javax.swing.plaf.basic,javax.swing.plaf.metal,javax.swing.table,javax.swing.text,javax.swing.text.html,javax.swing.tree,\ - javax.tools,\ - javax.transaction,\ javax.validation,\ javax.xml.bind,javax.xml.bind.annotation,javax.xml.bind.annotation.adapters,javax.xml.bind.helpers,\ - javax.xml.crypto,javax.xml.crypto.dom,javax.xml.crypto.dsig,javax.xml.crypto.dsig.dom,javax.xml.crypto.dsig.keyinfo,javax.xml.crypto.dsig.spec,\ \ org.apache.felix,org.apache.felix.framework,\ - org.ietf.jgss,\ org.osgi.framework,\ \ sun.awt.image.codec,\ sun.io,\ sun.misc,\ sun.nio.cs,\ - sun.security.x509 \ No newline at end of file + sun.security.x509 diff --git a/loader/pom.xml b/loader/pom.xml index c9fd49412a..82e91bf0b1 100644 --- a/loader/pom.xml +++ b/loader/pom.xml @@ -502,12 +502,6 @@ portlet 1.0.0 provided - - - org.lucee - xml-apis - 1.4.1 - provided org.lucee @@ -617,12 +611,6 @@ 1.2.1.0002L provided - - w3c - dom - 1.1.0 - provided - javax.websocket javax.websocket-api