I had an ORM application running for two years now, locally on my laptop for dev purposes, and ORM mappings worked very well. The app was originally created in CF9, but my local CF was updated to 10 shortly after the release of CF10. Since then I have many hours that do additional development for this application. The other day, based on migration, I had to change some paths to application directories. After changing all of my mappings inside CF and application, I went to download the application again and I got this stone:
Error resolving the SpeakerEvalQuestions relationship in cfc com.client.model.sessions. Check the column mapping for this property.
* Please ignore my unsatisfactory solution by calling one of my "sessions" orm objects.
The path has changed from \web\sites\thesite\ to \web\sites\thesite\www\
/ com is a mapping of CF to \web\sites\thesite\www\com now
Here are the CFC tidbits:
<cfcomponent output="false" persistent="true" table="tblSessions"> <cfproperty name="sessionID" fieldtype="id" type="numeric" sqltype="int" generator="identity" /> <cfproperty name="ses_key" type="string" sqltype="varchar(40)" /> <cfproperty name="sessionTitle" type="string" sqltype="varchar(250)" /> <cfproperty name="day1Start" ormtype="timestamp" sqltype="datetime" /> <cfproperty name="day1End" ormtype="timestamp" sqltype="datetime" /> <cfproperty name="day2Start" ormtype="timestamp" sqltype="datetime" /> <cfproperty name="day2End" ormtype="timestamp" sqltype="datetime" /> <cfproperty name="defaultCreditValue" type="numeric" sqltype="decimal(10,5)" /> <cfproperty name="sessionCode" type="string" sqltype="varchar(max)" /> <cfproperty name="dateAdded" fieldtype="column" ormtype="timestamp" sqltype="datetime" dbDefault="GETDATE()" insert="true" update="false" /> <cfproperty name="SpeakerEvalQuestions" singularname="SpeakerEvalQuestion" fieldtype="many-to-many" cfc="SpeakerEvalQuestions" inversejoincolum="speakerEvalQuestionID" fkcolumn="sessionID" lazy="extra" orderby="sortOrder asc" linktable="tblSpeakerEvalQs_Sessions" type="array" /> </cfcomponent>
and
<cfcomponent output="false" persistent="true" table="tblSpeakerEvalQuestions"> <cfproperty name="speakerEvalQuestionID" fieldtype="id" type="numeric" generator="identity" /> <cfproperty name="question" type="string" sqltype="varchar(200)" /> <cfproperty name="scaleStartValue" type="numeric" sqltype="smallInt" /> <cfproperty name="scaleEndValue" type="numeric" sqltype="smallInt" /> <cfproperty name="sortOrder" type="numeric" sqltype="smallInt" /> <cfproperty name="display" type="numeric" sqltype="smallInt" /> <cfproperty name="dateAdded" fieldtype="column" type="date" sqltype="datetime" dbDefault="GETDATE()" insert="true" update="false" /> <cfproperty name="sessions" singularname="session" fieldtype="many-to-many" CFC="sessions" fkcolumn="speakerEvalQuestionID" inversejoincolumn="sessionID" lazy="extra" orderby="day1start asc" linktable="tblSpeakerEvalQs_Sessions" /> </cfcomponent>
If I comment on the SpeakerEvalQuestions property from session.cfc, then the application will load, and, of course, part of it does not work. But this, at least, confirms that this is one property, and not only the first as a result of a prolonged change in properties that will not work.
Again, this worked perfectly, until I had to change paths. Does anyone have any ideas?