Re: [Components] ezcPersistentSessionInstance

2010-03-05 Thread Christoph René Pardon
Hi,

sorry for any inconvenience. Now i've solved my problem by setting:

private $_id;

to:

public $id;

:)
 Hi,
 
 first of all, my problem:
 
 Exceptioninformation:
 Message: The object of type Yela_Persistence_Users is not persistent.
 Stack trace:
 #0
 var/www/YelaCMS/library/ezc/PersistentObject/src/persistent_session.php(127):
  ezcPersistentLoadHandler-refresh(Object(Yela_Persistence_Users))
 
 
 
 How do i initialize my persistent session? (within Zend Framework
 bootstrapping class) (/var/www/YelaCMS/application/Bootstrap.php):
 
 /**
  * Initialize persistent session.
  *
  * @return ezcPersistentSession
  */
 protected function _initEzcSession()
 {
 $this-bootstrap(array('appSession', 'database'));
 $db = $this-getResource('database');
 
 $session = new ezcPersistentSession(
 $db,
 new ezcPersistentCacheManager(
 new ezcPersistentCodeManager( APPLICATION_PATH . DS .
   'sources' . DS .
   'database' . DS .
   'persistence') )
 );
 
 ezcPersistentSessionInstance::set( $session );
 
 return $session;
 }
 
 
 
 Current definition file looks like this
 (/var/www/YelaCMS/application/sources/database/persistence/yela_persistence_users.php):
  this filename should be yela_users.php but it won't work for some
 reasons  :)  i guess this is another problem.
 
 $def = new ezcPersistentObjectDefinition();
 $def-table = 'yela_users';
 $def-class = 'Yela_Persistence_Users';
 
 $def-properties['alias']   = new ezcPersistentObjectProperty();
 $def-properties['alias']-columnName   = 'alias';
 $def-properties['alias']-propertyName = 'alias';
 $def-properties['alias']-propertyType =
 ezcPersistentObjectProperty::PHP_TYPE_STRING;
 
 
 $def-properties['date_login_last']   = new
 ezcPersistentObjectProperty();
 $def-properties['date_login_last']-columnName   = 'date_login_last';
 $def-properties['date_login_last']-propertyName = 'date_login_last';
 $def-properties['date_login_last']-propertyType =
 ezcPersistentObjectProperty::PHP_TYPE_INT;
 
 
 $def-properties['date_register']   = new
 ezcPersistentObjectProperty();
 $def-properties['date_register']-columnName   = 'date_register';
 $def-properties['date_register']-propertyName = 'date_register';
 $def-properties['date_register']-propertyType =
 ezcPersistentObjectProperty::PHP_TYPE_INT;
 
 
 $def-idProperty   = new ezcPersistentObjectIdProperty();
 $def-idProperty-columnName   = 'group_id';
 $def-idProperty-propertyName = 'group_id';
 $def-idProperty-generator= new ezcPersistentGeneratorDefinition(
 'ezcPersistentManualGenerator' );
 $def-idProperty-propertyType =
 ezcPersistentObjectProperty::PHP_TYPE_STRING;
 
 
 $def-properties['hash']   = new ezcPersistentObjectProperty();
 $def-properties['hash']-columnName   = 'hash';
 $def-properties['hash']-propertyName = 'hash';
 $def-properties['hash']-propertyType =
 ezcPersistentObjectProperty::PHP_TYPE_STRING;
 
 
 $def-idProperty   = new ezcPersistentObjectIdProperty();
 $def-idProperty-columnName   = 'id';
 $def-idProperty-propertyName = 'id';
 $def-idProperty-generator= new ezcPersistentGeneratorDefinition(
 'ezcPersistentSequenceGenerator' );
 
 
 $def-properties['login']   = new ezcPersistentObjectProperty();
 $def-properties['login']-columnName   = 'login';
 $def-properties['login']-propertyName = 'login';
 $def-properties['login']-propertyType =
 ezcPersistentObjectProperty::PHP_TYPE_STRING;
 
 
 $def-properties['mail']   = new ezcPersistentObjectProperty();
 $def-properties['mail']-columnName   = 'mail';
 $def-properties['mail']-propertyName = 'mail';
 $def-properties['mail']-propertyType =
 ezcPersistentObjectProperty::PHP_TYPE_STRING;
 
 
 $def-properties['password']   = new
 ezcPersistentObjectProperty();
 $def-properties['password']-columnName   = 'password';
 $def-properties['password']-propertyName = 'password';
 $def-properties['password']-propertyType =
 ezcPersistentObjectProperty::PHP_TYPE_STRING;
 
 
 $def-properties['status']   = new
 ezcPersistentObjectProperty();
 $def-properties['status']-columnName   = 'status';
 $def-properties['status']-propertyName = 'status';
 $def-properties['status']-propertyType =
 ezcPersistentObjectProperty::PHP_TYPE_INT;
 
 return $def;
 
 
 
 The persistent object class is the following
 (/var/www/YelaCMS/library/Yela/Persistence/Users.php):
 
 class Yela_Persistence_Users
 {
 private $_id = null;
 public $group_id = null;
 public $alias = null;
 public $date_register = null;
 public $date_login_last = null;
 public $login = null;
 public $password = null;
 public $mail = null;
 public $hash = null;
 public $status = 0;
 
 public function 

[Components] ezcPersistentSessionInstance

2010-03-04 Thread Christoph René Pardon
Hi,

first of all, my problem:

Exceptioninformation:
Message: The object of type Yela_Persistence_Users is not persistent.
Stack trace:
#0
var/www/YelaCMS/library/ezc/PersistentObject/src/persistent_session.php(127):
 ezcPersistentLoadHandler-refresh(Object(Yela_Persistence_Users))



How do i initialize my persistent session? (within Zend Framework
bootstrapping class) (/var/www/YelaCMS/application/Bootstrap.php):

/**
 * Initialize persistent session.
 *
 * @return ezcPersistentSession
 */
protected function _initEzcSession()
{
$this-bootstrap(array('appSession', 'database'));
$db = $this-getResource('database');

$session = new ezcPersistentSession(
$db,
new ezcPersistentCacheManager(
new ezcPersistentCodeManager( APPLICATION_PATH . DS .
  'sources' . DS .
  'database' . DS .
  'persistence') )
);

ezcPersistentSessionInstance::set( $session );

return $session;
}



Current definition file looks like this
(/var/www/YelaCMS/application/sources/database/persistence/yela_persistence_users.php):
 this filename should be yela_users.php but it won't work for some
reasons  :)  i guess this is another problem.

$def = new ezcPersistentObjectDefinition();
$def-table = 'yela_users';
$def-class = 'Yela_Persistence_Users';

$def-properties['alias']   = new ezcPersistentObjectProperty();
$def-properties['alias']-columnName   = 'alias';
$def-properties['alias']-propertyName = 'alias';
$def-properties['alias']-propertyType =
ezcPersistentObjectProperty::PHP_TYPE_STRING;


$def-properties['date_login_last']   = new
ezcPersistentObjectProperty();
$def-properties['date_login_last']-columnName   = 'date_login_last';
$def-properties['date_login_last']-propertyName = 'date_login_last';
$def-properties['date_login_last']-propertyType =
ezcPersistentObjectProperty::PHP_TYPE_INT;


$def-properties['date_register']   = new
ezcPersistentObjectProperty();
$def-properties['date_register']-columnName   = 'date_register';
$def-properties['date_register']-propertyName = 'date_register';
$def-properties['date_register']-propertyType =
ezcPersistentObjectProperty::PHP_TYPE_INT;


$def-idProperty   = new ezcPersistentObjectIdProperty();
$def-idProperty-columnName   = 'group_id';
$def-idProperty-propertyName = 'group_id';
$def-idProperty-generator= new ezcPersistentGeneratorDefinition(
'ezcPersistentManualGenerator' );
$def-idProperty-propertyType =
ezcPersistentObjectProperty::PHP_TYPE_STRING;


$def-properties['hash']   = new ezcPersistentObjectProperty();
$def-properties['hash']-columnName   = 'hash';
$def-properties['hash']-propertyName = 'hash';
$def-properties['hash']-propertyType =
ezcPersistentObjectProperty::PHP_TYPE_STRING;


$def-idProperty   = new ezcPersistentObjectIdProperty();
$def-idProperty-columnName   = 'id';
$def-idProperty-propertyName = 'id';
$def-idProperty-generator= new ezcPersistentGeneratorDefinition(
'ezcPersistentSequenceGenerator' );


$def-properties['login']   = new ezcPersistentObjectProperty();
$def-properties['login']-columnName   = 'login';
$def-properties['login']-propertyName = 'login';
$def-properties['login']-propertyType =
ezcPersistentObjectProperty::PHP_TYPE_STRING;


$def-properties['mail']   = new ezcPersistentObjectProperty();
$def-properties['mail']-columnName   = 'mail';
$def-properties['mail']-propertyName = 'mail';
$def-properties['mail']-propertyType =
ezcPersistentObjectProperty::PHP_TYPE_STRING;


$def-properties['password']   = new
ezcPersistentObjectProperty();
$def-properties['password']-columnName   = 'password';
$def-properties['password']-propertyName = 'password';
$def-properties['password']-propertyType =
ezcPersistentObjectProperty::PHP_TYPE_STRING;


$def-properties['status']   = new
ezcPersistentObjectProperty();
$def-properties['status']-columnName   = 'status';
$def-properties['status']-propertyName = 'status';
$def-properties['status']-propertyType =
ezcPersistentObjectProperty::PHP_TYPE_INT;

return $def;



The persistent object class is the following
(/var/www/YelaCMS/library/Yela/Persistence/Users.php):

class Yela_Persistence_Users
{
private $_id = null;
public $group_id = null;
public $alias = null;
public $date_register = null;
public $date_login_last = null;
public $login = null;
public $password = null;
public $mail = null;
public $hash = null;
public $status = 0;

public function getState()
{
$result = array();
$result['id'] = $this-_id;
$result['group_id'] = $this-group_id;
$result['alias'] = $this-alias;
$result['date_register'] = $this-date_register;
$result['date_login_last'] =