Modelにvalidateを記述してもスルーされてしまうんですが、何故でしょうか?

<?php
class Contact extends AppModel
{
var $name = 'Contact';
var $useTable = false; //データベースのテーブルを使用しない

var $validate = array(
"name" => array(
"rule" => 'notEmpty',
"message" => '名前を入力してください'
),
);
}
?>

コントローラ
function index() {

if ($this->data['Contacts']['mode'] == 'confirm') {
if (!empty($this->data)) {
$this->Contact->set($this->data);
if ($this->Contact->validates()) {
$this->render('confirm');
return;
}
$this->render();
return;
}
  (以下略)