I’m trying to side-by-side our current application codebase so that we can have the old codebase running and develop new modules in coldbox form. One of the quirks is that our datasource is set into the Application scope onApplicationStart() I know this method is pretty common in production environments so that codebase is synced. I just can’t figure out how to do this in coldbox. From my understanding of the docs, I believe I should be implementing the detectEnvironment() method in Coldbox.cfc that returns a string “dev” or “live”. which maps to one of the new methods called dev() and live(). which sets datasource={“dev”=“dsn_dev”} or datasource={“live”=“dsn_live”}, mapping to the CFIDE/adminstator dsn’s am i correct so far?
I copied my code based off of the samples ormexample.
I implemented my models/contacts.cfc:
component extends=“coldbox.system.orm.hibernate.ActiveEntity” table=“contact”{
property name=“contact_id” column=“contact_id” fieldtype=“id” generator=“increment”;
property name=“firstname” column=“firstname” fieldtype=“varchar”;
property name=“lastname” column=“lastname” fieldtype=“varchar”;
property name=“company_id” column=“company_id” fieldtype=“numeric”;
function init(){
return this;
}
}
and my handler/contacts.cfc
component output=“false” {
property name=“restrictions” inject=“model:Contact”;
property name=“contactService” inject=“entityService:Contact”;
public function index(event) {
var rc = event.getCollection();
var prc = event.getCollection(private=true);
prc.contact = contactService.criteriaQuery(criteria=[], sortOrder=“id ASC”, asQuery=false);
event.setView(“contacts/index”);
}
}
and my view/contacts/index.cfm
Showing contacts.
what am i doing wrong? i’m getting exception
coldfusion.runtime.UndefinedElementException: Element DATASOURCE is undefined in SETTINGS.
at coldfusion.runtime.DotResolver.resolveSplitNameInMap(DotResolver.java:109)
at coldfusion.runtime.CfJspPage._resolve(CfJspPage.java:1643)
at coldfusion.runtime.CfJspPage._resolveAndAutoscalarize(CfJspPage.java:1822)
at coldfusion.runtime.CfJspPage._resolveAndAutoscalarize(CfJspPage.java:1815)
at cfCFORMUtil2ecfc313866456$funcGETDEFAULTDATASOURCE.runFunction(/home/tcprod/yruan/projects/5.1.3_Winter_Games/coldbox/system/orm/hibernate/util/CFORMUtil.cfc:94)
at coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:472)
at coldfusion.runtime.UDFMethod$ReturnTypeFilter.invoke(UDFMethod.java:405)
at coldfusion.runtime.UDFMethod$ArgumentCollectionFilter.invoke(UDFMethod.java:368)
at coldfusion.filter.FunctionAccessFilter.invoke(FunctionAccessFilter.java:55)
at coldfusion.runtime.UDFMethod.runFilterChain(UDFMethod.java:321)
at coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:220)
at coldfusion.runtime.CfJspPage._invokeUDF(CfJspPage.java:2659)
at cfCFORMUtil2ecfc313866456$funcGETENTITYDATASOURCE.runFunction(/home/tcprod/yruan/projects/5.1.3_Winter_Games/coldbox/system/orm/hibernate/util/CFORMUtil.cfc:67)
at coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:472)
at coldfusion.runtime.UDFMethod$ReturnTypeFilter.invoke(UDFMethod.java:405)
at coldfusion.runtime.UDFMethod$ArgumentCollectionFilter.invoke(UDFMethod.java:368)
at coldfusion.filter.FunctionAccessFilter.invoke(FunctionAccessFilter.java:55)
at coldfusion.runtime.UDFMethod.runFilterChain(UDFMethod.java:321)
at coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:220)
at coldfusion.runtime.TemplateProxy.invoke(TemplateProxy.java:655)
at coldfusion.runtime.TemplateProxy.invoke(TemplateProxy.java:444)
at coldfusion.runtime.TemplateProxy.invoke(TemplateProxy.java:414)
at coldfusion.runtime.CfJspPage._invoke(CfJspPage.java:2432)
at cfVirtualEntityService2ecfc558745402$funcINIT.runFunction(/home/tcprod/yruan/projects/5.1.3_Winter_Games/coldbox/system/orm/hibernate/VirtualEntityService.cfc:67)
at coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:472)
at coldfusion.runtime.UDFMethod$ReturnTypeFilter.invoke(UDFMethod.java:405)
at coldfusion.runtime.UDFMethod$ArgumentCollectionFilter.invoke(UDFMethod.java:368)
at coldfusion.filter.FunctionAccessFilter.invoke(FunctionAccessFilter.java:55)
at coldfusion.runtime.UDFMethod.runFilterChain(UDFMethod.java:321)
at coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:220)
at coldfusion.runtime.TemplateProxy.invoke(TemplateProxy.java:655)
at coldfusion.runtime.TemplateProxy.invoke(TemplateProxy.java:444)
at coldfusion.runtime.TemplateProxy.invoke(TemplateProxy.java:414)
at coldfusion.runtime.CfJspPage._invoke(CfJspPage.java:2432)
at cfBuilder2ecfc1126468659$funcGETENTITYSERVICEDSL.runFunction(/home/tcprod/yruan/projects/5.1.3_Winter_Games/coldbox/system/ioc/Builder.cfc:398)
thanks