AJAX form validation - redirect not working

Hi,

I’m validating a login-form via AJAX. Everything works fine, but when the SiteController invokes $this->redirect(Yii::app()->user->returnUrl); I get a 404CHttpException.


	public function actionLogin()

	{

		if(isset($_POST['LoginForm']))

		{

			$model=new LoginForm;

			$model->attributes=$_POST['LoginForm'];

			// validate user input and redirect to the previous page if valid

			if($model->validate() && $model->login()){

				$this->redirect(Yii::app()->user->returnUrl);

			}

			// if not logged-in

			else{

				$this->renderPartial('login',array('model'=>$model));

			}

		}

	}



View: login


<?php

				$form=$this->beginWidget('CActiveForm', array(

										'enableAjaxValidation'=>true,

										'id'=>'LoginForm',

										'stateful'=>true,

									));

				?>

				<p class="username">

				<?php

				echo CHtml::activeLabel($model,'username');

				echo CHtml::activeTextField($model,'username');

				echo CHtml::error($model,'username'); ?>

				</p>


				<p class="password">

				<?php

				echo CHtml::activeLabel($model,'password');

				echo CHtml::activePasswordField($model,'password');

				echo CHtml::error($model,'password'); ?>

				</p>

				<p class="remember">

				<?php

				echo CHtml::activeCheckBox($model,'rememberMe'); ?> Remember me<br/>

				<?php


				echo CHtml::ajaxSubmitButton(

					'Sign In',

					array('site/login'),

					array('update'=>'#signin_menu',),

					array(

						'type'=>'submit',

						'id'=>'signin_submit'

					)

				);

				?>

				</p>

				<p class="forgot"> <a href="#" id="resend_password_link">Forgot your password?</a> </p>

				<p class="forgot-username"><a id=forgot_username_link title="If you remember your password, try logging in with your email" href="#">No Login? Register here!</a></p>

				<?php $this->endWidget(); ?>

Any ideas what I might be doing wrong?

Sorted. I had set ‘defaultController’=>‘walk’, in config/main.php