> It would be interesting to know how many apps are running in the wild, > and details about how many pages & components & services, JVM > version, and OS and hardware configuration. Moodle (the learning management system) is a complete system not a framework and what they do have is a "register my moodle instance" button. This button is visible from the very first login as an admin into the system - and of course you have to login as an admin to set it all up. When you decide that you like to register, it allows you to choose a public name for your installation, whether to send the url, what is a contact address etc etc. This has enabled Moodle to be aware of the thousands implementations of the system and inform them of critical patches sometimes even before a public announcements.
I see a way how this can be done with Tapestry - by creating an admin component where you would set-up some configuration data (which then might be stored in configuration files or configuration database). This component could have options to setup resource path filtering, aliases, production mode, hibernate configuration data... and also a button to "phone home" - but only once to register your instance in some registration database with option to be informed when new versions come out or when new security patches come out. Tapestry could monitor itself and for example this register button could pop out if something is drastically different than before - much longer start up time, new version of some included library, etc. It should be easy to use if you want, just a single dependency in maven.
smime.p7s
Description: S/MIME Cryptographic Signature