Adding RAG to a Jakarta EE 11 App With Only the JDK and Jakarta Specs
Luqman Saeed shows how to add retrieval-augmented generation (RAG) to a Jakarta EE 11 application using only the JDK HTTP client, Jakarta specifications and MicroProfile Config, with no vector database, Python service or AI orchestration framework. Built on Jakarta Persistence 3.2, Jakarta Data 1.0, Jakarta Concurrency 3.1 (virtual threads), CDI 4.1 and Jakarta REST, with Ollama for model inference, the pipeline deploys as a standard WAR on any Jakarta EE 11 runtime. The post expands on Luqman's Eclipse OCX 2026 talk and also covers where the approach reaches its limits.