A few months ago, I was contacted by a NetBeans team member regarding the CRUD generator and possibly contributing to the NetBeans project. The idea that was pitched was to create a public API that would make integrating code generators such as this easier and less dependent on the NetBeans implementation. That is of course since many parts of the generator depend on internal non-API modules from NetBeans, and more importantly some depend on the implementation version. That means, the CRUD generator is not portable between NetBeans version and not even within a release as things might change during updates.... read more
Hands in the air if your legacy database has at least one table with a composite key. Really? That many? Ok. Hands in the air if your legacy database has at least one composite key where a portion of it references another table's composite primary key. Oh yeah?
Well! Welcome to the club of old-timers that are still working daily with tried and true databases that have grown over decades of development, born in the seventies and eighties where composite keys were ubiquitous. Many thanks to hierarchical database systems that were then migrated to relational databases when they came around. I'm looking at you, Mr. ISAM and Mr. DB2 living in the world of MVS/ESA (If you recognize these, you are at least as old as I am).... read more
It's been a while since my last entry. A lot has happened since the initial release. I've learned a lot about the innards of the JSF pages wizard and how it gathers some of its information. And I found that it was also seriously lacking in many regards, which many people using it may have found out along the road. For example, there was a serious problem with auto-generated fields, at least for me. The
Create.xhtml would not detect that a field was auto-generated and so would actually include the field as an input field with
required="true", which would cause the JSF form to stop and not let the user proceed with an empty field. But that would be required to actually trigger the generation of a value inside the database. So I actually played around with the meta information that I can pass along to the templates, and
generatedValue is one of the new features. The
Create.xhtml template actually now suppresses an auto-generated field entirely.... read more
I've taken the step of initializing a Git repository in my NetBeans project and committed all files to SourceForge. So all files are live right now. While testing, I also ran into a few issues that required documenting. See the Tickets section for a list. I'm happy that it was so easy to connect NetBeans with my SourceForge Git repo. Amazing! Didn't even have to touch the command line.
Anyway, I'm inviting everybody to take a look at the code this wizard spits out. Any way we can make it better, please leave suggestions in the discussion area. Also, it would be really nice if the default drop-down lists and fields that point to a foreign entity wouldn't just show the toString of the entity, which is really ugly. If only I could specify some default fields to be used for drop-down lists.
NetBeans is a very cool and sophisticated development environment for Java developers and supports many nice features. One of the cooler tools that I found useful ever since its conception is the "JSF From Entity Classes" wizard. It generates an entire web application simply by selecting Entity Classes, and the application is deployable and usable out of the box. That is, until AJAX and many nice AJAX-capable widget libraries hit the scene, not the least of which is PrimeFaces by Prime Teknoloji.... read more