<validator class="string" provides="password_given">
<argument>password</argument>
<error>Password is required</error>
</validator>
<validator class="string" provides="confirm_given">
<argument>password_confirmation</argument>
<error>Password confirmation is required</error>
</validator>
<validator class="equals" depends="password_given confirm_given">
<argument>password_confirmation</argument>
<ae:parameter name="value">password</ae:parameter>
<ae:parameter name="asparam">true</ae:parameter>
<error>Password confirmation doesn't match Password</error>
</validator>

RELAX NG validation of configuration file "file:///C:/Documents%20and%20Settings/btiernay/workspace/smn/app/modules/Default/validate/Profile.xml" failed:

RELAX NG validation with "C:\Documents and Settings\btiernay\workspace\smn\libs\agavi/config/rng/validators.rng" failed due to the following errors:

Line 0: Extra element validators in interleave

Line 3: Invalid sequence in interleave

Line 3: Element configuration failed to validate content

Line 0: Extra element configuration in interleave

Line 3: Element configurations failed to validate content

Stack Trace
at exception origin
in core.agavi_dir\config\AgaviXmlConfigParser.class.php line 836
try {

@$document->relaxNGValidate($validationFile);

} catch(DOMException $dome) {

throw new AgaviParseException(sprintf('RELAX NG validation of configuration file "%s" failed: ' . "\n\n%s", $document->documentURI, $dome->getMessage()));

}

}

}

at AgaviXmlConfigParser::validateRelaxng([object AgaviXmlConfigDomDocument], array('C:\\Documents and Settings … config/rng/validators.rng'))
in core.agavi_dir\config\AgaviXmlConfigParser.class.php line 697
self::validateXmlschema($document, (array) $files);

break;

case self::VALIDATION_TYPE_RELAXNG:

self::validateRelaxng($document, (array) $files);

break;

case self::VALIDATION_TYPE_SCHEMATRON:

self::validateSchematron($document, $environment, $context, (array) $files);

at AgaviXmlConfigParser::validate([object AgaviXmlConfigDomDocument], 'development', 'web', array('relax_ng' => array('C:\\Documents and Settings … config/rng/validators.rng'), 'schematron' => array(), 'xml_schema' => array()))
in core.agavi_dir\config\AgaviXmlConfigParser.class.php line 431
}



// validate post-transformation

self::validate($this->doc, $this->environment, $this->context, $validationInfo[AgaviXmlConfigParser::STEP_TRANSFORMATIONS_AFTER]);



// clean up the document

self::cleanup($this->doc);

at AgaviXmlConfigParser->execute(array('C:\\Documents and Settings … config/xsl/validators.xsl'), array('transformations_before' => array('relax_ng' => array(), 'schematron' => array(), 'xml_schema' => array()), 'transformations_after' => array('relax_ng' => array('C:\\Documents and Settings … config/rng/validators.rng'), 'schematron' => array(), 'xml_schema' => array())))
in core.agavi_dir\config\AgaviXmlConfigParser.class.php line 214
while($nextPath !== null) {

// run the single stage parser

$parser = new AgaviXmlConfigParser($nextPath, $environment, $context);

$doc = $parser->execute($transformationInfo[self::STAGE_SINGLE], $validationInfo[self::STAGE_SINGLE]);



// put the new document in the list

$docs[] = $doc;

at AgaviXmlConfigParser::run('C:/Documents and Settings … ault/validate/Profile.xml', 'development', 'web', array('single' => array('C:\\Documents and Settings … config/xsl/validators.xsl'), 'compilation' => array()), array('single' => array('transformations_before' => array('relax_ng' => array(), 'schematron' => array(), 'xml_schema' => array()), 'transformations_after' => array('relax_ng' => array('C:\\Documents and Settings … config/rng/validators.rng'), 'schematron' => array(), 'xml_schema' => array())), 'compilation' => array('transformations_before' => array('relax_ng' => array(), 'schematron' => array(), 'xml_schema' => array()), 'transformations_after' => array('relax_ng' => array(), 'schematron' => array(), 'xml_schema' => array()))))
in core.agavi_dir\config\AgaviConfigCache.class.php line 124
if($handler instanceof AgaviIXmlConfigHandler) {

// a new-style config handler

// it does not parse the config itself; instead, it is given a complete and merged DOM document

$doc = AgaviXmlConfigParser::run($config, AgaviConfig::get('core.environment'), $context, $handlerInfo['transformations'], $handlerInfo['validations']);



if($context !== null) {

$context = AgaviContext::getInstance($context);

at AgaviConfigCache::callHandler('C:/Documents and Settings … ault/validate/Profile.xml', 'C:/Documents and Settings … ault/validate/Profile.xml', 'C:\\Documents and Settings … e.xml_development_web.php', 'web')
in core.agavi_dir\config\AgaviConfigCache.class.php line 184


if(self::isModified($filename, $cache)) {

// configuration file has changed so we need to reparse it

self::callHandler($config, $filename, $cache, $context);

}



return $cache;

at AgaviConfigCache::checkConfig('C:\\Documents and Settings … ault/validate/Profile.xml', 'web')
in core.app_dir\cache\config\Documents and Settings_btiernay_workspace_smn_app_config_compile.xml_development_.php line 1112
)

);

if(is_readable($validationConfig)) {

require(AgaviConfigCache::checkConfig($validationConfig, $this->context->getName()));

}

$registerValidatorsMethod = 'register' . $method . 'Validators';

if(!method_exists($actionInstance, $registerValidatorsMethod)) {

at AgaviExecutionContainer->registerValidators()
in core.app_dir\cache\config\Documents and Settings_btiernay_workspace_smn_app_config_compile.xml_development_.php line 1088
$method = $this->getRequestMethod();

$requestData = $this->getRequestData();

$validated = true;

$this->registerValidators();

$validated = $validationManager->execute($requestData);

$validateMethod = 'validate' . $method;

if(!method_exists($actionInstance, $validateMethod)) {

at AgaviExecutionContainer->performValidation()
in core.app_dir\cache\config\Documents and Settings_btiernay_workspace_smn_app_config_compile.xml_development_.php line 1038
if($actionInstance->isSimple() || ($useGenericMethods && !method_exists($actionInstance, $executeMethod))) {

$viewName = $actionInstance->getDefaultViewName();

} else {

if($this->performValidation()) {

$key = $request->toggleLock();

try {

$viewName = $actionInstance->$executeMethod($requestData);

at AgaviExecutionContainer->runAction()
in core.app_dir\cache\config\Documents and Settings_btiernay_workspace_smn_app_config_compile.xml_development_.php line 1523
while(true) {

if(!$isActionCached) {

$actionCache = array();

list($actionCache['view_module'], $actionCache['view_name']) = $container->runAction();

if(isset($rememberTheView) && $actionCache != $rememberTheView) {

$ourClass = get_class($this);

call_user_func(array($ourClass, 'clearCache'), $groups);

at AgaviExecutionFilter->execute([object AgaviFilterChain], [object AgaviExecutionContainer])
in core.app_dir\cache\config\Documents and Settings_btiernay_workspace_smn_app_config_compile.xml_development_.php line 1345
}

public function executeOnce(AgaviFilterChain $filterChain, AgaviExecutionContainer $container)

{

$this->execute($filterChain, $container);

}

public function execute(AgaviFilterChain $filterChain, AgaviExecutionContainer $container)

{

at AgaviFilter->executeOnce([object AgaviFilterChain], [object AgaviExecutionContainer])
in core.app_dir\cache\config\Documents and Settings_btiernay_workspace_smn_app_config_compile.xml_development_.php line 1750
$filter = $this->chain[$this->index];

$count = ++self::$filterLog[$this->filterLogKey][get_class($filter)];

if($count == 1) {

$filter->executeOnce($this, $container);

} else {

$filter->execute($this, $container);

}

at AgaviFilterChain->execute([object AgaviExecutionContainer])
in core.agavi_dir\filter\AgaviExecutionTimeFilter.class.php line 64
$replace = $this->getParameter('replace', false);



$start = microtime(true);

$filterChain->execute($container);



$response = $container->getResponse();



at AgaviExecutionTimeFilter->execute([object AgaviFilterChain], [object AgaviExecutionContainer])
in core.app_dir\cache\config\Documents and Settings_btiernay_workspace_smn_app_config_compile.xml_development_.php line 1345
}

public function executeOnce(AgaviFilterChain $filterChain, AgaviExecutionContainer $container)

{

$this->execute($filterChain, $container);

}

public function execute(AgaviFilterChain $filterChain, AgaviExecutionContainer $container)

{

at AgaviFilter->executeOnce([object AgaviFilterChain], [object AgaviExecutionContainer])
in core.app_dir\cache\config\Documents and Settings_btiernay_workspace_smn_app_config_compile.xml_development_.php line 1750
$filter = $this->chain[$this->index];

$count = ++self::$filterLog[$this->filterLogKey][get_class($filter)];

if($count == 1) {

$filter->executeOnce($this, $container);

} else {

$filter->execute($this, $container);

}

at AgaviFilterChain->execute([object AgaviExecutionContainer])
in core.agavi_dir\filter\AgaviSecurityFilter.class.php line 73
// used to retrieve such data and should never have to be altered

if($user->isAuthenticated() && ($credential === null || $user->hasCredentials($credential))) {

// the user has access, continue

$filterChain->execute($container);

} else {

if($user->isAuthenticated()) {

// the user doesn't have access

at AgaviSecurityFilter->execute([object AgaviFilterChain], [object AgaviExecutionContainer])
in core.app_dir\cache\config\Documents and Settings_btiernay_workspace_smn_app_config_compile.xml_development_.php line 1345
}

public function executeOnce(AgaviFilterChain $filterChain, AgaviExecutionContainer $container)

{

$this->execute($filterChain, $container);

}

public function execute(AgaviFilterChain $filterChain, AgaviExecutionContainer $container)

{

at AgaviFilter->executeOnce([object AgaviFilterChain], [object AgaviExecutionContainer])
in core.app_dir\cache\config\Documents and Settings_btiernay_workspace_smn_app_config_compile.xml_development_.php line 1750
$filter = $this->chain[$this->index];

$count = ++self::$filterLog[$this->filterLogKey][get_class($filter)];

if($count == 1) {

$filter->executeOnce($this, $container);

} else {

$filter->execute($this, $container);

}

at AgaviFilterChain->execute([object AgaviExecutionContainer])
in core.app_dir\cache\config\Documents and Settings_btiernay_workspace_smn_app_config_compile.xml_development_.php line 972
$controller->loadFilters($filterChain, 'action', $moduleName);

}

$filterChain->register($controller->getFilter('execution'));

$filterChain->execute($this);

}

return $this->proceed();

}

at AgaviExecutionContainer->execute()
in core.app_dir\cache\config\Documents and Settings_btiernay_workspace_smn_app_config_compile.xml_development_.php line 1356
{

public function execute(AgaviFilterChain $filterChain, AgaviExecutionContainer $container)

{

$container->setResponse($container->execute());

}

}

class AgaviExecutionFilter extends AgaviFilter implements AgaviIActionFilter

at AgaviDispatchFilter->execute([object AgaviFilterChain], [object AgaviExecutionContainer])
in core.app_dir\cache\config\Documents and Settings_btiernay_workspace_smn_app_config_compile.xml_development_.php line 1345
}

public function executeOnce(AgaviFilterChain $filterChain, AgaviExecutionContainer $container)

{

$this->execute($filterChain, $container);

}

public function execute(AgaviFilterChain $filterChain, AgaviExecutionContainer $container)

{

at AgaviFilter->executeOnce([object AgaviFilterChain], [object AgaviExecutionContainer])
in core.app_dir\cache\config\Documents and Settings_btiernay_workspace_smn_app_config_compile.xml_development_.php line 1750
$filter = $this->chain[$this->index];

$count = ++self::$filterLog[$this->filterLogKey][get_class($filter)];

if($count == 1) {

$filter->executeOnce($this, $container);

} else {

$filter->execute($this, $container);

}

at AgaviFilterChain->execute([object AgaviExecutionContainer])
in core.agavi_dir\filter\AgaviFormPopulationFilter.class.php line 78
*/

public function executeOnce(AgaviFilterChain $filterChain, AgaviExecutionContainer $container)

{

$filterChain->execute($container);

$response = $container->getResponse();



if(!$response->isContentMutable() || !($output = $response->getContent())) {

at AgaviFormPopulationFilter->executeOnce([object AgaviFilterChain], [object AgaviExecutionContainer])
in core.app_dir\cache\config\Documents and Settings_btiernay_workspace_smn_app_config_compile.xml_development_.php line 1750
$filter = $this->chain[$this->index];

$count = ++self::$filterLog[$this->filterLogKey][get_class($filter)];

if($count == 1) {

$filter->executeOnce($this, $container);

} else {

$filter->execute($this, $container);

}

at AgaviFilterChain->execute([object AgaviExecutionContainer])
in core.app_dir\cache\config\Documents and Settings_btiernay_workspace_smn_app_config_compile.xml_development_.php line 687
$filterChain = $this->context->createInstanceFor('filter_chain');

$this->loadFilters($filterChain, 'global');

$filterChain->register($this->filters['dispatch']);

$filterChain->execute($container);

$response = $container->getResponse();

$response->merge($this->response);

if($this->getParameter('send_response')) {

at AgaviController->dispatch()
in _C:\Documents and Settings\btiernay\workspace\smn\pub\index.php line 34
// +---------------------------------------------------------------------------+

// | Call the controller's dispatch method on the default context |

// +---------------------------------------------------------------------------+

AgaviContext::getInstance('web')->getController()->dispatch();



?>

Version Information
Agavi:
1.0.0-dev
PHP:
5.2.6
System:
Windows NT WS20 5.1 build 2600
Timestamp:
2008-11-02T22:00:10+0000