Background: I am writing a little app to help us here at Railo with some of our contacts, nothing over the top or anything and wanted to take Sean Corfield's FW/1 for a spin.

As I am developing, I went the most direct route, I just did some queries in the service layer so my code looks like:

<cffunction name="list" output="false">
	<cfset var clients = 0>
&lt;cfquery name="clients" datasource="#variables.dsn#"&gt;
	SELECT * FROM contact;
&lt;/cfquery&gt;
&lt;cfreturn clients&gt;

</cffunction>

<cffunction name="view" output="false"> <cfargument name="clientid"> <cfset var qclient = 0> <cfquery name="qclient" datasource="#variables.dsn#"> SELECT * FROM contact WHERE id = <cfqueryparam cfsqltype="cf_sql_integer" value="#arguments.clientid#">; </cfquery> <cfreturn qclient> </cffunction>

OK, nothing world shattering, so I wanted to start using the ORM features of Railo (join the pre-release group to test them out!). I changed my code to look like:

<cffunction name="list" output="false">
	<cfset var clients = 0>
&lt;cfquery name="clients" dbtype="orm"&gt;
	FROM contact
&lt;/cfquery&gt;
&lt;cfreturn clients&gt;

</cffunction>

<cffunction name="view" output="false"> <cfargument name="id"> <cfreturn entityLoad("contact",arguments.id,true)> </cffunction>

I then defined my "contact" (I can show the code but it's hardly rocket science) and then when I reloaded I got the error:

Component [contact] has no acessible Member with name [ID]

Of course! My view code looks like:

<input type="hidden" name="id" value="#rc.data.id#">


I could change all my calls to fields to

<input type="hidden" name="id" value="#rc.data.getid()#">


but why bother? I just went to the Railo Admin -> Archives & Resources: Component -> Magic Functions and enabled them, now all my view code works just as expected and I didn't have to change my view code.