diff --git a/lib/Doctrine/Locator.php b/lib/Doctrine/Locator.php index 4f88648c4..ed7714079 100644 --- a/lib/Doctrine/Locator.php +++ b/lib/Doctrine/Locator.php @@ -134,9 +134,15 @@ class Doctrine_Locator implements Countable, IteratorAggregate } else { $className = $name; - if ( ! class_exists($className)) { - $className = $this->_classPrefix . str_replace('.', '_', $name); - + if ( ! class_exists($className)) { + $name = explode('.', $name); + foreach ($name as $k => $value) { + $name[$k] = ucfirst(strtolower($value)); + } + $name = implode('_', $name); + + $className = $this->_classPrefix . $name; + if ( ! class_exists($className)) { throw new Doctrine_Locator_Exception("Couldn't locate resource " . $className); }