I've been a Tapestry user since the times immemorial. Certainly the best server-side HTML Java framework. Nowadays, most of my apps are actually REST/JS, still many of them use T5 for template rendering, and also there are lots of very active older apps that we support, written with T5, T4, and even T2.
Being frustrated with the whole Java EE container thing and its existing alternatives, about 9 months ago we started a new open source project with the goal to build a container-less Java launcher that makes it easy for anyone to write any kind of runnable Java apps. The project is currently developed at http://bootique.io/ and features an expanding list of integration modules and a growing community.
And as of this week, Bootique finally supports Tapestry! So if you are looking to move away from containers (or just curious how other people do it), please take a look. If you are into microservices, no-container should be pretty much the default approach, but even for the regular bigger apps, not having to deal with web container infrastructure changes your life for the best dramatically :)
Bootique does not require much mental gymnastics from you as a T5 user. You just need to learn how to write a generic container-less Bootique webapp (hint: very easy). It is pure Tapestry after that. Bootique uses Google Guice for injection (very similar style to T5) and ensures that Guice services can be injected inside Tapestry.
So anyways, I wanted to share the news that there is a new modern option for the Tapestry apps. Give it a shot, and send us feedback. Either here or via the Bootique forum or GitHub. Some quick links to get you going, and hopefully you like it :)