So, it's great to have mappedsuperclass implementation in CF 9.0.1, but it's certainly half baked. Earlier I posted about issues related to DDL creation with mappedsuperclass and one-to-one relationship. Once I got past that one, I stumbled upon another issue. If the persistent component doesn't have any properties then the methods of mappedsuperclass are not returned in the metadata (as top level struct).
So, in my previous example I had:
ExtraData.cfc (persistent, no property, extends ExtraDataBase)
If I dump the metaData of ExtraData, here is what I get:
See how there is no struct key "functions" in the top level struct? Now here is what I get if I add a property foo in the ExtraData entity. You will see that now all the properties of mapped super class are available in the top level structs function key.
The reason I came across this is because I'm using Mach-ii. And they use metadata to populate beans. Which in the above case throws error when it tries to access the "functions" from the metadata.
Last few days it seems like most of my time is going in finding bugs. Hopefully we will get an update soon with these kinks resolved.
Keywords: ORM Coldfusion mappedsuperclass metadata mach-ii event-bean