I’m looking for a tool that makes it astonishingly easy to generate a web app that  facilitates the editing of the contents of a bunch of database tables.  Details follow…
			 
			
	
	
		I’m looking for a tool that makes it astonishingly easy to generate a web app that  facilitates the editing of the contents of a bunch of database tables. I want  to specify:
- which tables to allow editing (and viewing)
 
- which fields to allow editing (and viewing)
 
- which fields to show dropdowns for (rather than making users type IDs)
 
- what captions to use for all table and column names
 
- constraints to enforce
 
- constraints to notice and complain about, but not enforce
 
- a reasonable user management system for the web app (login/password/rights/etc.)
 
- rules that define row-level security, i.e. allow users to edit some rows of a given table but not others
 
I’d like a “generative” tool, one that spits out a fully functioning app which doesn’t depend on the original tool for runtime infrastructure.
The specification of the things above can be mostly textual. Drag-drop-UML doesn’t excite me all that much (though I’ve used such beasts for Java work    before). The generation process must be customizable, since no tool is likely    to meet 100% of my present and future needs.
The generated app will preferably be in PHP or Java. PHP seems reasonable as it is ridiculously easy to get up and running (at most, a few packages to isntall    in a common Linux distro), and Java is reasonable because I use it heavily for other purposes anyway.
It should be possible to support several common DBs (SQL Server, MySQL, PostgreSQL)    with the flip of a switch or two.
The generation process should act like a build process – i.e. the “source” of the application would be the specificaiton file plus perhaps a few files    work of manually tweaked code.
OK, so I’m asking for a lot.
… but there are dozens (or even hundred) of tools out there, both commercial and open/free, that meet at least some subset of the above. I Googled for a    few minute and was overwhelmed at how many there are to look at.
A good starting point is the Code    Generation Network, and a few of the specific tools I saw are phpCodeGenie,    PHPMaker,    Camino, Jag,    JRpt, etc.
Of course, it’s entirely possible that none of them does everything I need    – but that’s OK too, there is another layer of tools out there that make it    easy to get start with my own generative approach: FMPP,    Jostraca, etc.
Enough hoping for tonight. If anyone out there has had a very positive experience with any of these tools, for the kind of problem I’m looking to solve, I’d love    to hear about it.
A few clarifications, after the initial post:
- For this particular need, I prefer a generative approach to an “executable   model” approach, though I think the latter might be the long-term winner      in MDA.
 
- Yes, I know that I’m mostly asking for DB-centric CRUD operations, rather   than a domain centric behaviour model. I have plenty of time for the latter approach (with lots of Java code, Hibernate, perhaps even a rules engine)      in other place, but for today’s need, which is for the “admin” side of an application, DB-centric CRUD will do the job fine, with a little help      from constraints, validation, etc.