Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 27 Next »

Tynamo is model-driven, full-stack web framework based on Tapestry 5.

Tynamo's mission is to provide implementations for different aspects of a full web application stack that offer reasonable out-of-the-box functionality and are easy to customize. We are intent on proving that web applications based on Java can simultaneously be high performing, easy to implement and fun to develop. We leverage existing technologies where possible and provide integrations with proven, clean and compact libraries rather than limit ourselves only to standard Java (JSRs). Tynamo is both comprehensive and modular so you are free to choose the parts you like from our full stack. And finally, we like Tapestry and our modules use Tapestry IoC extensively.

Quick status update


Several stable releases, Tynamo-archetype available and ready for consumption at Maven Central repo. Working on model/JPA2 support.

The little engineer was very proud of his little engine. But one day, a fellow train enthusiast noticed the engine was a leaking. They drove the train to the engine yard and... oh well, perhaps I took the metaphor too far. Suffice to say, thanks to Jochen Berger for spotting and reporting an issue in 0.6.1. Fixed and added another enhancement well.
  • ContextPath is inconsistently saved as part of the savedRequest #15
  • Access to /modules/** and /modules.gz/** should be allowed by default #14

User guide at, code at

Enjoy the ride!

Tynamo Team

Choo choo! The security train is moving again, all aboard! This is the 0.6.1 bullet train on the latest T5.4-beta-22 rail. Our rail engineers have been hard at work and delivered the following enhancements:


  • Session timeout, Login, POST form resubmission fails #7
  • Redirecting to saved XHR url can lead to Exceptions #6
  • add German messages for the login form #5
  • Upgrade security.loginForm component to take advantage of new Twitter Bootstrap look and feel of Tapestry 5.4 #3

User guide at, code at

Enjoy the ride!

Tynamo Team

Once again, thanks to Alejandro Scandroli's brilliant work, we are releasing another T5.4 compatible module: tapestry-resteasy 0.4.0. Source at Github, read the userguide at Release notes:

New Feature

  • [TYNAMO-221] - Add support for RestEASY generated JavaScript API
  • [TYNAMO-231] - Integrate Swagger
  • [TYNAMO-235] - Make it super easy to add CORS support.

+ issues on the github milestone 0.4.0.

On the heels of tapestry-security 0.6.0 release, follows our second T5.4 compatible release: tapestry-routing 0.1.0. Same deal here, the source is moved to Github and the userguide is still at the familiar location at Alejandro Scandroli did all the hard work, thanks Alejandro!

For release notes, I'm thinking in the future I'm just going to link to the Github milestone for the release. Let's practice: tapestry-routing 0.1.0 milestone.




As hinted earlier, our first T5.4 compatible module, tapestry-security is released. This release is primarily for compatibility, although I threw in one, non-backwards compatible enhancements for optimized rememberMe cookies because I felt it was the right time. The source has moved to Github and the userguide is still at the familiar location at I've only recently started working more on T5.4 codebase myself so keep the enhancements (and pull requests!) coming as you see need. Open issues against the Github repo please.

Release Notes - tapestry-security-0.6.0

** Improvement

    * [TYNAMO-147] - Make tapestry-security compatible with tapestry-5.4

** Task

    * [TYNAMO-236] - Migrate tapestry-security to tapestry 5.4 beta

** Github issue

#1: Implement a new default CookieRememberMeManager for creating smaller rememberme cookies (how do you get "release notes" out from Github?)

Tynamo goes Github!
GitHub is cool and we so desperately want to be cool too that we decided Tynamo needs to be there as well. In all seriousness, Dragan Sahpaski wrote up a whizbang script to import all of the Tynamo's SVN history, branches etc. to a Git repo so it made the move a no-brainer. Thanks Dragan. We still love Codehaus though and they'll continue providing a lot of the infrastructure support, like CI builds and Confluence space but we are going to moving issue management over to Github as well so we can be ready for your pull requests instead of writing the code ourselves :) Also because we are good Git citizens, each Tynamo module now has its own Git repo. Checkout the Github organization page at and navigate from there to your preferred module and start forking away!

Now that a public beta of Tapestry 5.4 is out, we are also starting a module upgrade and release cycle for 5.4 compatibility. Tapestry-security 0.6.0 is first in line, watch for the release announcement later!

Downloaded JDK 8 today

Project Lambda was merged to the mainline a while back but b106 is the official developer preview release and (depending on how you look at things) it was actually released on schedule. My main interest beyond lamba expessions is how the JRE performs with the new metaspace. Naturally Mark has a few forewords to say about the new JDK8 build, go get yours!

Federatedaccounts takes another leap forward by integrating with a new, Scribe-based module, Pac4j by Jérôme Leleu. See, the problem with Scribe, and Oauth in general, is that there's no standard way of getting any unique identifier with Oauth (unlike in OpenID). So there are several different provider specific extension and it quickly becomes a mess (read what the author of Scribe thinks about this). Anyway, it's great somebody, and in this case, Jérôme, still bothers to generalize the approach because otherwise I would have needed to do it. The new Federated Accounts module, tynamo-federatedaccounts-pac4jbasedoauth, simply provides UI components (Oauth sign in components, callback pages) around Pac4j, handles the Oauth all automatically and bakes in Tapestry-style configuration around it so all you need to do is to just add your Oauth app credentials. The primary use case for the new module is authentication and user profile federation, for other uses cases, you typically still want to use provider specific APIs and libraries. Documentation is also updated, although a bit thin still. Read more at tynamo-federatedaccounts guide.

Release notes:


  • [TYNAMO-211] - Allow parametrized configuration in federated login components for setting rememberMe in the token
  • [TYNAMO-220] - Implement rolling tokens support for federated accounts
  • [TYNAMO-181] - Implement DefaultJpaFederatedAccountServiceImpl
  • [TYNAMO-182] - Support GitHub federated login

New Feature


  • [TYNAMO-217] - returnPageName is required since there's no defaultReturnPage prop in AbstractOauthSignIn



Tynamo Team

  • No labels