Eventos preUpdate e postUpdate não acionados no Doctrine 2
Eu segui as instruções deste tutorial:http://symfony.com/doc/current/cookbook/doctrine/event_listeners_subscribers.htmle criamos um ouvinte simples que ouve eventos despachados pelo Doctrine na inserção ou atualização de uma entidade. Os eventos preInsert e postInsert funcionam bem e são despachados na criação de uma nova entidade. No entanto, preUpdate e postUpdate nunca são chamados na atualização da entidade, não importa o quê. O mesmo vale para onFlush. Como uma nota lateral, eu tenho um controlador gerado pelo console que suporta as operações básicas do CRUD, e deixou-o intocado.
Abaixo estão alguns trechos de código para demonstrar a maneira como estou fazendo isso.
config.yml
<code>annotation.listener: class: City\AnnotatorBundle\Listener\AnnotationListener tags: - { name: doctrine.event_listener, event: postUpdate} </code>
Implementação do listener (omiti as outras funções e deixei apenas o postUpdate para fins de simplicidade)
<code>class AnnotationListener { public function postUpdate(LifecycleEventArgs $args) { $entity=$args->getEntity(); echo $entity->getId(); die; } } </code>
O ID da entidade nunca é exibido e o script continua sua execução até que esteja completo, apesar domorrer no final da função.