Title:
Bug 79318:If you have an ORM-enabled application it seems that the ORM features cause CF to recurse all application directories looking for CFCs
| View in TrackerStatus/Resolution/Reason: Closed/Fixed/
Reporter/Name(from Bugbase): Douglas Hughes / Douglas Hughes (Alagad Inc.)
Created: 08/06/2009
Components: ORM Support
Versions: 9.0
Failure Type: Unspecified
Found In Build/Fixed In Build: 0000 / 246080
Priority/Frequency: Normal / Unknown
Locale/System: English / Mac 10 All
Vote Count: 1
Problem:
If you have an ORM-enabled application it seems that the ORM features cause CF to recurse all application directories looking for CFCs. If it finds a CFC that has an invalid syntax (such as an attribute named the same as a local var) then the entire application fails to load. In most cases when you have a syntax error like this you get a detailed error message pointing to the file with the problem. However, if you have the attribute/local var problem I described all errror messages and logging seem to point to either the applicaiton.cfc or index.cfm as being the source. This was VERY confusing.In stead, CF should ignore CFCs which wouldn't otherwise compile and it should output a message to the log indicating that it couldn't compile that file and why.
Method:
The quickest way to reproduce this problem would be to create a simple application.cfc with ORM enabled. Then, under that app add a CFC like this:<cfcomponent><cffunction name="foo"><cfargument name="bar" /><cfset var bar = "" /><cfreturn "foobar" /></cffunction></cfcomponent>This application will not load.
Result:
When using ORM, if you have a CFC function with an argument (named, perhaps, permission) and then have a vared variable with the same name, you get this error whne the application loads. There is no information on where this error comes from:PERMISSION is already defined in argument scope.Use local to define a local variable with same name.
----------------------------- Additional Watson Details -----------------------------
Watson Bug ID: 3039588
External Customer Info:
External Company:
External Customer Name: Douglas Hughes
External Customer Email: 05926622445EAD179920157F
External Test Config: 08/06/2009
Attachments:
Comments: