A couple of weeks ago I released a big update to my app.  When I roll
out new versions and restart ColdFusion on my two web servers, I'm
seeing service layer objects which are injected via Brian K's
TDOBeanInjectorObserver "disappear" in some of the first Transfer
objects that are loaded.  My app has the following moving parts:

* Transfer 1.1, Coldspring 1.2
* TDOBeanInjectorObserver in Coldspring
* All decorators extend AbstractBeanDecorator
* TransferSync for synchornizing my two node cluster

My rollout process looks like:

* Ant build script to check out and push code
* Restart ColdFusion

When the server first comes up, it seems as though some Transfer
objects are not fully initialized and they're missing some of their
injected dependencies.  What's interesting is that the object makes it
into the Transfer cache so it continues to throw errors when a method
on the decorator is called that accesses the injected service object.
Here's one such error but it occurs on any variety of objects (user,
event, others):

Expression: Element CLUBMEMBERSERVICE is undefined in VARIABLES.

    * /var/www/pukka/api-prod/model/event/event.cfc (51, ??)
    * /var/www/pukka/api-prod/model/event/event.cfc (207,
CF_UDFMETHOD)
    * /var/www/pukka/msr-prod/views/registration/dsp.host.cfm (4,
CF_TEMPLATEPROXY)
    * /var/www/pukka/api-prod/ModelGlue/unity/view/ViewRenderer.cfm
(29, CFINCLUDE)
    * /var/www/pukka/api-prod/ModelGlue/unity/view/ViewRenderer.cfc
(50, CFMODULE)
    * /var/www/pukka/api-prod/ModelGlue/unity/framework/ModelGlue.cfc
(450, CF_TEMPLATEPROXY)
    * /var/www/pukka/api-prod/ModelGlue/unity/framework/ModelGlue.cfc
(340, CF_UDFMETHOD)
    * /var/www/pukka/api-prod/ModelGlue/unity/framework/ModelGlue.cfc
(289, CF_UDFMETHOD)
    * /var/www/pukka/api-prod/ModelGlue/unity/ModelGlue.cfm (126,
CF_TEMPLATEPROXY)
    * /var/www/pukka/msr-prod/index.cfm (82, CFINCLUDE)

Line 207 basically calls getClubMemberService() and line 51 is
returning variables.ClubMemberService (which was supposed to be
injected by setClubMemberService()).

My update a couple of weeks ago changed a lot of bits; I switched from
my own bean injector to Brian Kotek's version, I updated the version
of TransferSync, I changed my decorators to all extend an
AbstractBeanDecorator... and of course I didn't see these issues in my
development environment. :)

I've been able to correct it by doing a soft restart on my app (which
clears the Transfer cache, restarts Coldspring and my Model-glue apps/
etc).  Sometimes it takes a couple of tries though to correct it.
Anyone seen this before?  Any thoughts about where to poke?


Brian, Mr. Edge Case

--~--~---------~--~----~------------~-------~--~----~
Before posting questions to the group please read:
http://groups.google.com/group/transfer-dev/web/how-to-ask-support-questions-on-transfer

You received this message because you are subscribed to the Google Groups 
"transfer-dev" group.
To post to this group, send email to transfer-dev@googlegroups.com
To unsubscribe from this group, send email to 
transfer-dev-unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/transfer-dev?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to