Hi,

I would like to bring the Maven archetypes back into the main Struts
repository and release them together with the framework, starting with
7.6.0. Details are in WW-5865 [1].

Why: the separate struts-archetypes repository has had no commits since
February 2023. It still generates projects for Struts 6.1.1 with
javax.servlet, so a Struts 7 user gets a skeleton that does not compile.
Nothing in our build exercises the archetypes, which is why they drift.

What I propose:

- a new "archetypes" module in the main build, versioned and released with
Struts
- three archetypes only: blank (plain web app), convention (Convention
plugin) and a new rest one (REST plugin, reduced from apps/rest-showcase)
- existing archetype coordinates kept, so current archetype:generate
instructions keep working
- each archetype ported to Jakarta EE and Java 17
- a Dockerfile in each generated project (Maven build, then the WAR on
Tomcat 10.1 / JRE 17)
- an integration test per archetype that generates a project and builds it
as part of our build

Not carried over: angularjs (AngularJS is end of life), portlet and
dbportlet (the Portlet plugin is gone in Struts 7), and starter (depends on
SiteMesh and DWR).
Once the first release containing the archetypes is out, I would archive
the struts-archetypes repository.

Any objections or comments? If there are none within 72 hours, I will go
ahead.

[1] https://issues.apache.org/jira/browse/WW-5865


Regards,
Lukasz

Reply via email to