[Home] [By Thread] [By Date] [Recent Entries]

Subject: Re: How to create an XML/XSLT web application using Spring Boot: a step-by-step guide
From: "Alan Painter alan.painter@xxxxxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx>
Date: Thu, 16 Apr 2026 05:54:24 -0000
I can second Paul's remark from the experience of a very large company
using a proprietary declarative API development system, with several
thousand developers creating APIs over a number of years. When the decision
came down to end the licensing relationship with the proprietary system,
all of the existing API needed to be rewritten into something different.

To me, the substitution of the existing proprietary language by XPath and
XSLT with a servlex-like outer layer for handling the http input/output
should have made perfect sense to those that are already familiar with
declarative development.

I discovered that even people familiar with declarative would seem to
prefer imperative languages like Java or Kotlin, on spite of the many
arguments that I could make for declarative.

I think that the debate has become even more muddied in the past two or
three years with the rise of LLM assistants. These latter may now be
"writing" the code (or, rather, assembling the code from a probabalistic
combination of different code corpuses that has been plundered during the
model training). No longer will code be crafted for simplicity, readability
and correctness; instead, code is a mash-up of bits and pieces from
elsewhere.

The real question will be: where does declarative development fit in this
brave new development world?

One possibility is that we need to make sure that good examples of
declarative development make it into the training data.





On Thu, Apr 16, 2026, 05:17 Paul Tyson phtyson@xxxxxxxxxxxxx <
xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote:

> Hi Roger, sounds good and useful, but I'll up the stakes a little. You
> have an XProc pipeline and 1-n xslt, xquery, sparql queries, shell scripts,
> etc.
>
> Many years ago I developed and deployed a servlex[1] app on that paradigm.
> Neither that nor the expath webapp spec[2] on which it was based appear to
> be in active development. The world in its wisdom has bypassed the genius
> and advantage of declarative program development. (My app, by the way, is
> still going strong serving continuously updated technical data to thousands
> of intranet users with minimal maintenance.)
>
> I haven't used Spring boot directly, but am quite familiar with the older
> Spring MVC framework. Your post made me wonder if it might be a relatively
> easy lift from servlex to a Spring boot app.
>
> Regards,
> --Paul
>
> [1] https://servlex.net/
>
> [2] https://expath.org/spec/webapp
> On 4/15/26 12:30, Roger L Costello costello@xxxxxxxxx wrote:
>
> Hi Folks,
>
> You have an XSLT program and an input XML file. You can run the
> transformation locally using Java and an XSLT processor such as Saxon.
>
> Now you want to make that transformation available to others. Instead of
> running it yourself, you want users (or other programs) to send XML to your
> application and receive the transformed XML in return.
>
> In other words, you want to create a web application that exposes your
> XSLT program as a service.
>
> Without Spring Boot, doing that requires a significant amount of
> infrastructure work.
>
> You would need to:
>
>    - set up a web server (such as Apache Tomcat), install it, and
>    configure it
>    - write low-level code to handle HTTP requests (parse requests,
>    extract URLs and parameters)
>    - convert incoming XML data into a form your program can use
>    - manually create and connect your application components
>    (controllers, services, etc.)
>    - implement consistent error handling, validation, and HTTP response
>    behavior
>
> So before you can even run your XSLT program, you first have to build a
> large amount of supporting C"b,Eplumbing.C"b,
>
> This is what I call the *infrastructure problem*.
>
> Spring Boot lets you avoid all that. It provides the infrastructure needed
> to build a web application, so you can focus on your application logic
> instead of building and configuring the underlying system yourself.
>
> For example, using Spring Boot, you can write something as simple as:
>
> @GetMapping("/hello")
> public Map<String,String> hello(...) { ... }
>
> and Spring Boot automatically handles:
>
>    - providing and automatically starting a web server
>    - receiving HTTP requests
>    - mapping request data to your code
>    - generating HTTP responses
>
> In this way, Spring Boot removes the need to manually build the plumbing
> of a web application.
>
> *Important: *Spring Boot does not perform your application logic. It
> provides the infrastructure in which your application runs. In this
> example, Spring Boot receives the XML request, your Java code invokes
> Saxon, and Saxon runs the XSLT transformation.
>
> Below is a detailed, step-by-step guide showing exactly how to create an
> XML/XSLT web application using Spring Boot.
> ------------------------------
>
> My guide is too long for the mailing list. Email me if you want it.
> XSL-List info and archive <http://www.mulberrytech.com/xsl/xsl-list>
> EasyUnsubscribe <http://lists.mulberrytech.com/unsub/xsl-list/1043515> (by
> email)
>
> XSL-List info and archive <http://www.mulberrytech.com/xsl/xsl-list>
> EasyUnsubscribe <http://lists.mulberrytech.com/unsub/xsl-list/552232> (by
> email <>)

Current Thread
Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member