In several examples I have followed place the <cfset instance.test =
"ChrisRocks"> the outside the CFC and they seem to work.
An exact example was.
Cfc/Dog.cfc
<cfcomponent hint="I am the dog class">
<cfset variables.dogName = "" />
<cfset variables.dogDescription = ""/>
<cffunction name="init" access="public" returntype="Dog" output="false"
hint="I call the dog">
<cfset variables.dogDescription = "none"/>
<cfreturn this/>
</cffunction>
<cffunction name="getDogName" access="public" returntype="string"
output="false" hint="I get the DogName property">
<cfreturn variables.DogName />
</cffunction>
<cffunction name="setDogName" access="public" returntype="void"
output="false" hint="I set the DogName property">
<cfargument name="DogName" type="string" required="yes"
hint="DogName value" />
<cfset variables.DogName = arguments.DogName />
</cffunction>
<cffunction name="getDogDescription" access="public" returntype="string"
output="false" hint="I get the DogDescription property">
<cfreturn variables.DogDescription />
</cffunction>
<cffunction name="setDogDescription" access="public" returntype="void"
output="false" hint="I set the DogDescription property">
<cfargument name="DogDescription" type="string" required="yes"
hint="DogDescription value" />
<cfset variables.DogDescription = arguments.DogDescription />
</cffunction>
</cfcomponent>
Then in my test.cfm
Test.cfc
<cfscript>
Dog = createObject("component", "cfc.dog").init();
Dog.setDogName("Topper");
</cfscript>
<cfoutput>
#dog.getDogName()#
</cfoutput>
Now I can't tell you why they do this but it seems to be a common style in
the examples on the web.
Rob Love
Scope Mapping LLC
Cell (903) 647 1301
Fax (817) 288 0713
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
On Behalf Of Christopher Jordan
Sent: Thursday, September 13, 2007 6:30 PM
To: Dallas/Fort Worth ColdFusion User Group Mailing List
Subject: [DFW CFUG] Ack! I need help from an OO-type person
Okay,
So I'm trying to implement *some* of what I saw the other night, and it's
not working. I've got a CFC called LienApplication.cfc and it contains an
init function that takes a loan number, runs three queries, and then sets
several instance variables with values returned from each of the queries.
I'm using all the setters I wrote to set those values. Then I return 'this'
(without the quotes... you know what I mean).
The problem is that if I try to instantiate the cfc and then dump the
subsequent object it's empty! No methods, no properties.. nothin'! However,
if I view it through the CFC introspection stuff (like Dave showed us the
other night), I can see all my methods.
I'm at a loss! I'.ve done this sort of thing before (once or twice) without
any problems, but now I'm trying to use the getters and setters idea. I
should also mention that I tried shortening up my init function to just:
<cffunction name="init" access="public" returntype="LienApplication">
<cfset instance.test = "ChrisRocks">
<cfreturn this>
</cffunction>
(yes, instance is a structure declared outside of the function just below
the cfcomponent tag)
I still get nothing! :o(
If instead of trying to just do a <cfdump var="#myobj#"> I try to do
something like <cfdump var="#getCustomerFirstName()#"> I get an error
telling me that "Element Instance.CustomerFirstName is undefined in
Variables". :o(
I'll reprint my entire cfc here (and attach it as well) for anyone who
thinks they'd like to take a look at it and could help me out. I've got to
run home and celebrate my mother's birthday, but I'll be online later this
evening to see if anyone has responded.
Thanks so much everyone!
Chris
--
http://cjordan.us
_______________________________________________
Reply to DFWCFUG:
[email protected]
Subscribe/Unsubscribe:
http://lists1.safesecureweb.com/mailman/listinfo/list
List Archives:
http://www.mail-archive.com/list%40list.dfwcfug.org/
http://www.mail-archive.com/list%40dfwcfug.org/
DFWCFUG Sponsors:
www.instantspot.com/
www.teksystems.com/