Phillip, what I usually do in this scenario:
- Create an object in onApplicationStart and save it in the Applications area. Here you will initialize with other parameters of your data source.
- Create a remote CFC proxy, which is basically a stub for the real thing, and bind your selection box to this CFC.
onApplicationStart:
<cffunction name="onApplicationStart">
<cfset application.dsn = "myDSN" />
<cfset application.cityFinder = createObject("component", "Components.City").init(application.dsn) />
</cffunction>
And the remote CFC proxy:
<cfcomponent displayName="CityFinderProxy">
<cffunction name="View1">
<cfargument name="StateId" />
<cfreturn application.cityFinder.View1(argumentCollection=arguments) />
</cffunction>
</cfcomponent>
, (, , ..)... . .