You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by "rzo1 (via GitHub)" <gi...@apache.org> on 2026/09/20 19:23:27 UTC

[PR] TOMEE-4707 drop the standalone HTTP server from openejb-http (tomee)

rzo1 opened a new pull request, #2945:
URL: https://github.com/apache/tomee/pull/2945

   TomEE serves requests through Tomcat's connectors, so the hand written HTTP server in `openejb-http` is unused attack surface. This removes it along with the unreachable Jetty backend, the `httpejbd` service and `OpenEJBHttpRegistry`, keeping everything Tomcat needs: the listeners and registry, the request/response/session types, the servlet and filter adapters, `ServerServlet` and the CDI listeners.
   
   `RsRegistryImpl` and `OpenEJBHttpWsRegistry` extended `OpenEJBHttpRegistry` and were the non-Tomcat fallbacks in `RESTService`/`WsService`, so they go too — `openejb-standalone` and `arquillian-openejb-embedded` lose their embedded REST/WS wiring, which is accepted for a major release.
   
   The tests that drove the removed transport over a socket are removed with it; the remaining 14 pass, and all dependent modules still build.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@tomee.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] TOMEE-4707 drop the standalone HTTP server from openejb-http (tomee)

Posted by "jungm (via GitHub)" <gi...@apache.org>.
jungm commented on PR #2945:
URL: https://github.com/apache/tomee/pull/2945#issuecomment-5783714388

   Pushed follow-ups for the review above:
   
   - The HTTP-dependent tests keep their coverage: they moved to `arquillian-tomee-jaxrs-tests` / `arquillian-tomee-jaxws-tests` and run on tomee-embedded (73 JAX-RS, 13 JAX-WS test classes). 20 examples run on Arquillian tomee-embedded; `rest-applicationcomposer`, `rest-applicationcomposer-mockito` and `applicationcomposer-jaxws-cdi` are removed.
   - The rest of the unreachable transport is gone (`HttpListenerRegistry`, `HttpRequestImpl`/`HttpResponseImpl`, `SessionManager`, `HttpUtil` servlet/filter registration and `reformat`, ...).
   - `RESTService`/`WsService` log a warning instead of an NPE when no registry exists. Stale `httpejbd` references, docs and the openejb-standalone deps are cleaned up; cdi-embedded excludes the CDI TCK tests that need HTTP.
   
   The ported tests surfaced pre-existing bugs:
   - Fixed in f8934e281d: `PortAddressRegistryImpl.removePort` never removed a port (inverted null check).
   - `@Ignore`d: EJB endpoints configured through `<ejb-deployment>` `cxf.jaxrs.*` properties answer 404 (`CheckedExceptionMapperTest`, `CxfRsHttpListener#isCXFResource`).
   - `@Ignore`d: a POJO web service servlet without a mapping never gets its default address mapped in Tomcat (`WsJMXTest`, `TomcatWsRegistry#setWsContainer`).
   
   Side note: CI doesn't run the CDI TCK (`-Ptck-cdi` isn't in master-build-full-tck), and it's currently broken (missing `xalan:serializer`, CDI TCK API mismatch).
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@tomee.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] TOMEE-4707 drop the standalone HTTP server from openejb-http (tomee)

Posted by "jungm (via GitHub)" <gi...@apache.org>.
jungm commented on PR #2945:
URL: https://github.com/apache/tomee/pull/2945#issuecomment-5847257644

   Finished the removal, `openejb-http` is gone now:
   
   - Merged `main` (conflicts in the example poms from TOMEE-3234).
   - `openejb-http` deleted: the servlet bridge moved to `openejb-server`, the Tomcat-only classes to `tomee-catalina`; `HttpSession`, `ServletSessionAdapter` and `BasicAuthHttpListenerWrapper` were dead and are removed.
   - `WsService` registers `PortAddressRegistry` before checking for a `WsRegistry`, so `@WebServiceRef` clients work outside TomEE again. Both services check their registry once in `start()`, the other null checks are gone.
   - ApplicationComposer: `@EnableServices(jaxrs/jaxws)`, the jaxrs/jaxws service aliases and `@JaxrsProviders` handling removed, `@RandomPort("http")` fails fast. `applicationcomposer-maven-plugin` ships `openejb-ejbd` instead of `openejb-cxf-rs`.
   - Leftovers removed: `SWClassLoader.getWebResource`, the itests `http` mode, CXF deps of the cdi-embedded TCK, stale docs; the JAX-RS tests use `ArquillianUtil` for the embedded check.
   - Jetty dependency management dropped, it only existed for the `openejb-http` Jetty backend.
   
   Verified: `clean install -DskipTests -Pstyle,rat`; tests of openejb-core (4118), openejb-junit5, the server modules, tomee-catalina/jaxrs/webservices/embedded, the OpenEJB Arquillian adapter; Arquillian on TomEE embedded: JAX-RS 169, JAX-WS 32, web profile 159, all green. tomee-remote suites not run.
   
   Not covered: the cdi-embedded TCK doesn't start on this branch with or without these changes (HtmlUnit's xalan misses its serializer, then a cdi-tck api/impl mismatch). The standalone assembly's NOTICE still lists libraries it no longer bundles (CXF and older ones), separate cleanup.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@tomee.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] TOMEE-4707 drop the standalone HTTP server from openejb-http (tomee)

Posted by "jungm (via GitHub)" <gi...@apache.org>.
jungm commented on PR #2945:
URL: https://github.com/apache/tomee/pull/2945#issuecomment-5853836018

   https://ci-builds.apache.org/job/Tomee/view/tomee-11.x/job/pull-request-manual-with-tck/63/


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@tomee.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] TOMEE-4707 drop the standalone HTTP server from openejb-http (tomee)

Posted by "jungm (via GitHub)" <gi...@apache.org>.
jungm commented on PR #2945:
URL: https://github.com/apache/tomee/pull/2945#issuecomment-5847287505

   https://ci-builds.apache.org/job/Tomee/view/tomee-11.x/job/pull-request-manual-with-tck/62/


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@tomee.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] TOMEE-4707 drop the standalone HTTP server from openejb-http (tomee)

Posted by "jungm (via GitHub)" <gi...@apache.org>.
jungm commented on PR #2945:
URL: https://github.com/apache/tomee/pull/2945#issuecomment-5853818114

   Review pass pushed as 7 commits (b962f93d09..d8ed75bc22):
   
   - `@RandomPort("http")` is an ordinary name; the message of e5b087a230 still says it fails.
   - Code only the embedded transport used is gone: `Proxys`, `AppFinder.AppOrWebContextTransformer`, `LogCategory.HTTPSERVER`, `LightServletContext`/`EmbeddedServletContextCreated`, the parser-only `HttpRequest`/`HttpResponse` members, `CxfRsHttpListener`'s static resource handling, the cxf-rs `auth`/`realm` settings, `@JaxrsProviders.applicationName` and the regex REST wildcard. A missing Rs/WsRegistry logs at INFO, the webprofile warned on every boot.
   - Tests: `WsJMXTest` runs again, new `ServerDestroyedTest`, `SuspendedTest`/`CdiHandlersTest` wait with a bound instead of racing the server, `RsInterceptorInjectionTest` checks `isUserInRole` again, httpejbd/EJBContainer leftovers removed.
   - cdi-embedded TCK: `TckTlds` and `tomee-catalina` removed, the builtin servlet decorator tests excluded, excludes already covered by `javaee-full` dropped.
   - Docs, examples (unused `ziplock`), openejb-standalone NOTICE/LICENSE (CXF, XmlSchema, libre-wsdl4j) and the dependabot Jetty rule.
   
   Found with 9 rounds of multi-agent review (runtime, tests, examples/docs and build lanes, every finding challenged by a skeptic) until no finding survived.
   
   Verified against branch-built jars: arquillian JAX-RS tests 169 run / 10 skipped, JAX-WS 33 run / 2 skipped, migrated examples pass. cdi-embedded is only compile-checked, its harness is broken on main too.
   
   Out of scope: `CheckedExceptionMapperTest` stays `@Ignore`d, deployment by endpoint 404s on TomEE on main as well.
   
   Ready for review.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@tomee.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] TOMEE-4707 drop the standalone HTTP server from openejb-http (tomee)

Posted by "jungm (via GitHub)" <gi...@apache.org>.
jungm merged PR #2945:
URL: https://github.com/apache/tomee/pull/2945


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@tomee.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org