Mailing List webobjects-dev@wocommunity.org Messaggio #422
Da: Aaron Rosenzweig <aaron@chatnbike.com>
Oggetto: Maven: Properties not available until late in app startup sequence
Data: Fri, 10 Feb 2023 09:32:12 -0500
A: WebObjects & WOnder Development <webobjects-dev@wocommunity.org>
Hi Everyone,

There is a difference in the startup processing of properties when I launch our app in Eclipse using ANT vs Maven. Anyone know why this might be?

Our properties file has defined: er.extensions.ERXClassDescription.factoryClass

Which is supposed to direct this call: ERXEntityClassDescription.registerDescription()

But when it is time to register, the following returns null: ERXProperties.stringForKey("er.extensions.ERXClassDescription.factoryClass”)

Later, such as in installPatches() or finishInitilization(), the property has a value. So the app does find the property but not in the early part when its really needed.

I have a hunch that the order of frameworks loading is brittle and causes this behavior. We have several apps which share a “core” framework which is where the Properties file is stored and makes the declaration. I think with ANT, our core framework initialized before ERExtensions and now, with Maven, the opposite is true. I don’t know this for a fact but it’s what I suspect.

If I redeclare the property in a particular apps Properties file, then ERXEntityClassDescription.registerDescription() can determine the override. It’s a temporary workaround but it means I need to duplicate all the properties that used to be in CORE by putting them into each app's properties.
Iscrizione modo messaggi Iscrizione modo riassunto Iscrizione modo index Cancella Scrivi al Listmaster