My menu is better than yours… 
I recently came to the conclusion that the "not invented here" (NIH) syndrome is a very serious plague in my organization.
The straw that broke this camel's back was a custom written menu system for a group of Java web applications. The menu provided a few buttons and shortcut keys and used CSS for your usual hide and display effects. This menu required some property file magic, that enabled and disabled options. Of course the data in the property file was hierarchical so you would find yourself reading repeating rows of name spaced keys to form a logical tuple. I can deal with that, heck, I've produced similar designs out of newbie ignorance. The problem is that this menu system has been thrown in the big black Hefty bag with a bunch of other reusable-best-practice-patterned-up-and-down components, and stamped "Reference Implementation." So naturally, less experienced developers cycle through the shop and take the "Reference Implementation" as a mandate for design, or worse, the only _correct_ way to design an application.
I was not around when this menu was initially developed, but I would assert that the freely available open-source Struts Menu tag library would have likely done the trick (and more).
http://struts-menu.sourceforge.netAside from the negative impact of poor design decisions and promulgation of those design decisions, there is a much larger and dangerous beast lurking in this dark room. This is the monster that possesses the development culture and forces them to think that they must reinvent every aspect of a common CREATE/READ/UPDATE/DELETE web application in order for it to be enterprise ready as well as to have completely-utterly-absolutely-holistic control over every aspect of the design. This monstrous enemy also tries to mold the organization to reward inventive (read re-created) solutions instead of reusing preexisting ones. This is not to be confused with true innovation which is always something to be cultivated, but only when it maps to competitive advantage.
This monster has been battled by many. In "Lean Thinking," Womack and Jones talk about this as a form of waste. Venkat Subramaniam in "Practices of an Agile Developer" clearly spells out the value of researching and finding an existing solution before setting out to build one.
Whether it is a web-based menu widget, or an object relational mapping framework… be sure that there is rational justification for building from scratch. Long after you are gone, your organization will need to support, enhance, and otherwise maintain the custom code… those activities are at risk of not contributing value in the customer's eyes.