Tuesday, February 16, 2010

MetaObjectManager scope (I'm listening now...)

I recommend that people working with ADF on JDev 10.1.3 read the MetaObjectManager entry at the following URL: http://blogs.oracle.com/Didier/bc4j/

...especially if you are deploying applications to OC4J and have overridden the DatabaseTransactionFactory... you might have done this if you wanted to do a post-commit or pre-commit type move, as was laid out in the Oracle ADF Developer's Guide for 4GL Developers version 10.1.3.0.

I first noticed when I added this override that, odd crap began to occur with my and others' deployed applications. Essentially they all began trying to use my SAME DatabaseTransactionFactory, which is not what I intended at all. The scope of this AM Module configuration property is something called MetaObjectManager. This means that every app deployed to that same OC4J instance will have the same setting...presuming I was the first one to deploy an app with this property defined in my bc4j.xcfg to that OC4J instance. This is not a smart way to identify a global setting...i.e., hidden in an app.

I am repeating this because, for me at any rate, the topic apparently bares repeating.

No comments: