I've looked through a lot of forum postings on location issues and haven't
found any that helped so here's my sad story. We're trying to place CFC's in
the same directory as the calling CFM using autosuggest (and other Ajax-type
calls). We know the problem is to do with our mapping of directories, just
can't figure out the magical right values.
CF (8)'s default directory is /usr/local/apache/htdocs. Within apache we do
the mapping to our application directories, so /htdocs points to
/devel/application/. CF is normally unaware of the mapping and that's never
been a problem before now.
So in /devel/application/test.cfm we have:
<cfinput type='text' name='uid'
autosuggest="cfc:test1.lookup({cfautosuggestvalue})">
We put the CFC in the same directory (/devel/application/test1.cfc)
When doing the above the page compiles/displays but when we get to the auto
suggest we get a CFC not found message. If I call the CFC directly
(/htdocs/test1.cfc) it returns fine, including showing the heirarchy as
htdocs.test1.
Tried a variety of things, many suggestions in other posts, all with the same
not found results:
Changed autosuggest to full OS path:
autosuggest="cfc:devel.application.test1.lookup({cfautosuggestvalue})">
Changed autosuggest to full web path:
autosuggest="cfc:htdocs.test1.lookup({cfautosuggestvalue})">
Placed the CFC in an existing Custom Tags path
Added /devel/application to the Custom Tags path
Made a CF mapping of /devel = /devel/application and changed autosuggest to:
autosuggest="cfc:devel.test1.lookup({cfautosuggestvalue})">
Removed the mapping within Apache and put it just in CF Mappings.
Added a symbolic link (this is a Unix server) for /devel/application to
/usr/local/apache/htdocs/devel
It does work if we put the CFC in the /usr/local/apache/htdocs (that's the
default CF directory), but of course we don't want that solution. What we'd
like is to do is leave the CFC in the same directory as the CFM (or even move
it around a bit maybe).
I know I'm missing the obvious answer...
Thanks in advance,
GaryG
GArlington - 30 Oct 2007 10:44 GMT
> I've looked through a lot of forum postings on location issues and haven't
> found any that helped so here's my sad story. We're trying to place CFC's in
[quoted text clipped - 46 lines]
> Thanks in advance,
> GaryG
In order to call cfcs via AJAX or browser address it is NOT enough to
have correct mapping in CF, you have to have a similar mapping in
Apache TOO.
GArlington - 30 Oct 2007 10:50 GMT
> I've looked through a lot of forum postings on location issues and haven't
> found any that helped so here's my sad story. We're trying to place CFC's in
[quoted text clipped - 46 lines]
> Thanks in advance,
> GaryG
Try to access your cfc, when it generates an error, check your CF log
(application - it should record the actual path that was used in
attempt to access the cfc) and create corresponding mapping in Apache.