Looking in wrong location for Module views.

Hello Guys,

I’ve been playing with Modules for the first time this afternoon. I’ve hit a stumbling block where it appears that the framework is looking in the parent application for the views, and not in the module, thus throwing an exception as they don’t exist:

Error Messages: Page //views/accounts/list.cfm [/Users/claudinelove/workspace/myapp/views/accounts/list.cfm] not found

The actualy path to the view for this event should be:

[/Users/claudinelove/workspace/myapp/modules/saas/views/accounts/list.cfm]

I’m sure this is just some misconfiguration on my part but I’d really appreciate some help.

If you need any more information then let me know.

Thanks,

Rob

Rob,

What is your viewParentLookup setting set to?

Here is the order of discovery….

viewParentLookup = true

  1. Host override module specific (e.g. {HOST}/views/modules/myModule/myView.cfm)
  2. Host override common (e.g. {HOST}/views/modules/myView.cfm)
  3. Module view (e.g. /modules/myModule/views/myView.cfm)
  4. Default view discovery from host (e.g. {HOST}/views/myView.cfm)

viewParentLookup = false

  1. Module view (e.g. /modules/myModule/views/myView.cfm)
  2. Host override module specific (e.g. {HOST}/views/modules/myModule/myView.cfm)
  3. Host override common (e.g. {HOST}/views/modules/myView.cfm)
  4. Default view discovery from host (e.g. {HOST}/views/myView.cfm)

Also, if you setting a view using setView(), what are you setting?

Curt Gratz

Computer Know How

Hi Curt,

Thanks for clarifying that. It helped me spot the problem.

Basically I had a typo in my directory name in /modules/saas/acounts/list.cfm which I hadn't spotted.

So the framework didn't find the view within the module, skipped up a level to look in the app and couldn't find one there either, so through the exception.

I wonder if it's possible for the framework to throw a more descriptive error which says it was unable to find the view in either of the places it looked, rather than just stating the last place it looked.

Robert

You need to open up the moduleConfig.cfc and changed the lookup for views and layouts to false.

Regards,

Andrew Scott

http://www.andyscott.id.au/