ClassNotFoundException Symfony2 Validator

时间:2014-05-03 09:45:31

标签: class validation symfony exception

所以我在Symfony2.4中有这个自定义验证器,

namespace My\Bundle\validation\Constraints;
use Symfony\Component\Validator\Constraint;
/**
* @Annotation
*/
class CustomValidator extends Constraint {
/**
* @var str the message to display if violation
*/
public $message = "the message";

/**
 * {@inheritdoc}
 */
public function validatedBy()
{
return 'my_validator_service';      
}

/**
* {@inheritdoc}
*/
public function getTargets()
{
return self::PROPERTY_CONSTRAINT;
}
}

现在,在另一个包FormType:

.....
use My\Bundle\Validation\Constraints;

public function setDefaultOptions(OptionsResolverInterface $resolver)
{

 $collectionConstraint = new Assert\Collection(array(
 .......,
 'test' => array(
    new CustomValidator(),
),
 ........

 $resolver->setDefaults(array(
        'constraints' => $collectionConstraint,
        'data' => $data,
    ));
}

但我得到了这个例外:

ClassNotFoundException:尝试加载类" CustomValidator"来自命名空间"我的\ Bundle \ Validation \ Constraints"在blabla \ Type。你需要"使用"它来自另一个命名空间?

你怎么看?可能是微不足道的,但我不知道它可能是什么

2 个答案:

答案 0 :(得分:1)

好的,我找到了。 命名空间和使用是正确的,但文件夹称为Validator而不是Validation。 对不起所有

答案 1 :(得分:0)

也许你应该改变你的使用指令:

use My\Bundle\Validation\Constraints\CustomValidator;
相关问题