Boy am I a big dork.  After a long weekend I took a look at this again, and 
realized that my variable "ds" was an array of datasource matches... and I 
was referencing it as a struct. Doh!

Correct code:

<cffunction name="getConnection" output="false">
<cfset var admin = createObject("component", 
"bluedragon.adminapi.Administrator") />
<cfset var adminDS = "" />
<cfset var ds = "" />
<cfset var loginResult = false />
<cfset var connection = "" />
<cfset loginResult = admin.login("password") />
<cfif loginResult>
<cfset session.auth = {
loggedIn = true,
password = "password"
} />
</cfif>
<cfset adminDS = createObject("component", "bluedragon.adminapi.Datasource") 
/>
<cfset ds = adminDS.getDatasources(application.dsn) />

<cftry>
<cfset connection = createObject("java", 
"java.sql.DriverManager").getConnection(ds[1].hoststring, ds[1].username, 
ds[1].password) />
<cfcatch>
<cfdump var="#ds#" />
<cfdump var="#cfcatch#" />
<cfrethrow />
<cfabort />
</cfcatch>
</cftry>
<cfset admin.logout() />
<cfreturn connection />
</cffunction>


-- 
official tag/function reference: http://openbd.org/manual/
 mailing list - http://groups.google.com/group/openbd?hl=en

Reply via email to