RexxHTTP is hosted on:
The documentation copy at https://rexx.epbcn.com/rexxhttp/ uses the Rexx Highlighter to display Rexx programs, and therefore has better highlighting. On the other hand, the copy at https://github.com/JosepMariaBlasco/rexxhttp/ has version control, bug reporting, and all the features offered by GitHub.
RexxHTTP is a servlet processor for ooRexx: it lets you
write web servlets as ordinary ooRexx programs running under CGI on Apache. A servlet receives a
request and a response object and produces its
body with ordinary Say or CharOut; the
request and response objects are also placed
in the environment as .request and
.response.
The central design idea is lazy headers: a servlet may write body content before fixing the response headers, and the headers are emitted on the first flush. This is made possible by a buffered output stream that sits between the servlet and Apache.
RexxHTTP is written by Josep Maria Blasco <josep.maria.blasco@epbcn.com> and distributed under the Apache 2.0 license. Some files may contain contributions from other authors, as attributed in the corresponding copyright notices.
https://rexx.epbcn.com/rexxhttp/rexxhttp-latest.zip.
RexxHTTP grew out of a servlet processor first published in 2006 (version 0.1, with a full 73-page manual) and rewritten in 2017 (version 0.2), which today serves some 40,000 URLs in production at epbcn.com and other sites. This release is a clean, distilled 1.0: the dead branches of the original (mod_rexx, OS/2, Microsoft IIS, the RSP page compiler) are gone, and the documentation describes only what is actually verified against the code.
The manual is in manual/. It is written using the RexxPub publishing framework: a single Markdown file is rendered as a web page, and this same web page produces a print-quality manual when printed using the print menu of your browser.
You can also take a look at our examples (source code included).
src/ — the processor and its classes
(RexxHTTP.rex, HTTP.Request.cls,
HTTP.Response.cls, HTTP.OutputStream.cls,
HTTP.Cookie.cls).manual/ — the manual.examples/ — the examples.tests/ — the RexxHTTP test suite
and a copy of the ooRexx test framework.