[Coldbox 4] Injecting services into orm enties

Upgrading from a CF9/CB3.8.1 to CF11/CB4 in several of our orm entities we inject services from a shared location. however these injections are no longer defined

Injection: property name=“ProductStatusService” persistent=“false” inject;

Code: setProductStatus( ProductStatusService.get( matchValue ) );

Error Message: Variable PRODUCTSTATUSSERVICE is undefined.

I tried dumping wirebox.getBinder().getMappings() in orm entity and i get back wirebox is undefined, however when I dump wirebox.getBinder().getMappings() in an interceptor I can see that the service I am trying to access is mapped.

Nevermind, I just needed to ORMReload

I tried dumping wirebox.getBinder().getMappings() in orm entity and i get back wirebox is undefined

Where were you trying to dump this? If it was in the ORM entity itself, WireBox wouldn’t be defined by default. It is in most every file that extends a core framework file such as handlers, interceptors, views, layouts, etc but models are not “part of” the framework so they only have what you inject.

It sounds like you got this working, but I was going to start by ensuring you had installed the cborm module, created the necessary mapping, and that your ORM event handler was correct in Application.cfc.

Thanks!

~Brad

ColdBox Platform Evangelist
Ortus Solutions, Corp

E-mail: brad@coldbox.org
ColdBox Platform: http://www.coldbox.org
Blog: http://www.codersrevolution.com

yeah I was trying to dump wirebox in the entity and quickly discovered what you mentioned, that it doesn’t exist.