This is an automated email from the ASF dual-hosted git repository. rzo1 pushed a commit to branch tomee-10.x in repository https://gitbox.apache.org/repos/asf/tomee.git
commit a06afc1c047a1fe0e9e9fcb4a08f8f529fac8523 Author: Richard Zowalla <[email protected]> AuthorDate: Fri Sep 11 19:19:23 2026 +0200 Revert "Unwrap InternalApplication before passing to CXF" This reverts commit 078a4d2f120c83e7b358ce22376b7ac894a33bbb. It breaks JAX-RS deployments (404s across the jaxrs Arquillian tests, MP-JWT/Telemetry TCKs, tomee-embedded). The follow-up fix on main (f2406998e7) relies on ApplicationInfo#getApplicationPath from CXF 4.2, which is not available with CXF 4.1.x on 10.x. The change only serves UriInfo#getMatchedResourceTemplate (JAX-RS 4.0), so it is not needed here. --- .../org/apache/openejb/server/cxf/rs/CxfRsHttpListener.java | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git a/server/openejb-cxf-rs/src/main/java/org/apache/openejb/server/cxf/rs/CxfRsHttpListener.java b/server/openejb-cxf-rs/src/main/java/org/apache/openejb/server/cxf/rs/CxfRsHttpListener.java index 861f5b0f83..b0e82b19da 100644 --- a/server/openejb-cxf-rs/src/main/java/org/apache/openejb/server/cxf/rs/CxfRsHttpListener.java +++ b/server/openejb-cxf-rs/src/main/java/org/apache/openejb/server/cxf/rs/CxfRsHttpListener.java @@ -733,16 +733,8 @@ public class CxfRsHttpListener implements RsHttpListener { * * Global binding annotations are tested in: * com/sun/ts/tests/jaxrs/spec/filter/globalbinding/JAXRSClient#globalBoundResourceTest_from_standalone - * - * We unwrap any InternalApplication wrapper so CXF inspects the user's real - * Application subclass. Without this, the @ApplicationPath annotation on the - * user's class is invisible to CXF, and UriInfoImpl#getMatchedResourceTemplate - * omits the application path prefix from the returned template. */ - final Application appForFactory = application instanceof InternalApplication wrapper && wrapper.getOriginal() != null - ? wrapper.getOriginal() - : application; - factory.setApplication(appForFactory); + factory.setApplication(application); this.context = webContext; if (!webContext.startsWith("/")) {
